Where TestFlight feedback goes today
When a tester taps Send Beta Feedback in TestFlight, the screenshot and comment land in App Store Connect under TestFlight, in the Feedback tab. Crash reports go to a separate Crashes tab. Nobody on your team is notified. The App Store Connect iPhone app can push a one-line notification, but only to the single person who installed it.
So feedback sits there until someone remembers to look. Testers who never hear back stop submitting, and the bug they found ships in the next build.
What a TestFlight feedback message looks like in Slack
Yeethook listens for Apple's TestFlight feedback webhooks and posts each submission to a Slack channel within seconds. With a p8 key connected, every message includes the details Apple leaves out of the webhook payload:
- Screenshot feedback — The screenshot image, the tester's comment, their email, device model, OS version, locale, and the build they were running.
- Crash reports — The full crash log with stack trace, the tester's email, device model, OS version, and any comment they added.
- Build state changes — When a build is approved or rejected for external testing, so you know which build testers are on.
Each message links to the full event in Yeethook and to the feedback in App Store Connect. The whole team sees it, and the discussion happens in the thread.
How to Set It Up
- Sign up at yeethook.com. Free for one app, no credit card required.
- Upload your p8 key so Yeethook can create the webhooks and pull screenshots, crash logs, and tester details from the App Store Connect API.
- Add your app and enable the TestFlight events
BETA_FEEDBACK_SCREENSHOT_SUBMISSION_CREATEDandBETA_FEEDBACK_CRASH_SUBMISSION_CREATED. - Connect Slack using the pre-built app manifest and route TestFlight feedback to
#testflight.
The next time a tester submits feedback, it shows up in Slack. Nothing to deploy, nothing to poll.
If your testers and team live on Discord instead, the same feedback can go to a Discord channel. See TestFlight notifications in Discord.
Screenshots to #feedback, crashes to #bugs
Screenshot feedback and crash reports are different kinds of work. UI feedback goes to the people who design and build screens. Crashes need an engineer now. Yeethook routes by event type, so you can send BETA_FEEDBACK_SCREENSHOT_SUBMISSION_CREATED to #feedback and BETA_FEEDBACK_CRASH_SUBMISSION_CREATED to #bugs, per app. See event routing to Slack channels for channel layouts that work.
With and without a p8 key
| What you see in Slack | Without a p8 key | With a p8 key |
|---|---|---|
| Notification that feedback arrived | Yes | Yes |
| App name and event type | Yes | Yes |
| Link to App Store Connect | Yes | Yes |
| Screenshot image inline | No | Yes |
| Tester comment | No | Yes |
| Tester email | No | Yes |
| Device model, OS version, locale | No | Yes |
| Build number | No | Yes |
| Full crash log with stack trace | No | Yes |
| Webhook created and monitored for you | No | Yes |
The p8 key is an App Store Connect API key you generate in App Store Connect. Yeethook stores it encrypted at rest and only uses it to read feedback details and manage webhooks. See p8 API key for how to create one.
Why not just check App Store Connect?
You can, and most teams do, which is exactly why feedback goes unanswered for days. Checking is a habit that fades. A message in Slack is a push, not a pull, and it lands in front of the whole team instead of one person's phone. For a comparison with the App Store Connect app, a self-hosted webhook proxy, and building it yourself, see Yeethook vs building your own Apple webhook pipeline.
Pricing
The free plan covers one app, one Slack or Discord channel, and 100 events per month, with enrichment included. Team is $15/month for three apps, three channels, and 500 events. Scale and Fleet add more apps, members, and volume. Paid plans start with a 7-day trial. See pricing for details.
