Sample audit report.
This is the kind of blocker-first report a founder receives after an AppReady audit.
Executive summary
Do not submit this build yet. The app has four avoidable rejection risks: broken privacy policy URL, no in-app account deletion path, missing restore-purchase path for subscriptions, and no working reviewer demo credentials.
Critical blockers
- Privacy Policy URL returns 404.
Evidence: submitted URL/privacyreturned not found. Fix: publish a public privacy policy before submission. - Account creation exists, but no in-app deletion path was found.
Evidence: Settings screen has Logout only. Fix: add Settings → Account → Delete Account initiation flow. - Subscriptions detected, but restore purchase is not visible.
Evidence: RevenueCat dependency and premium paywall present. Fix: add Restore Purchases action on paywall/settings. - Reviewer cannot access the app.
Evidence: no demo credentials provided; login requires email verification. Fix: provide demo credentials or review mode instructions.
High-risk issues
- Analytics SDK appears installed but is not reflected in declared data collection.
- Push notifications are requested on first launch before a value moment.
- Offline state shows an indefinite spinner on the dashboard.
- No 20-minute real-device stability evidence was provided.
Passed checks
- Bundle ID and build number appear consistent.
- App icon asset was provided.
- Core onboarding screenshots match the current app UI.
- No obvious staging endpoint was visible in submitted config snippets.
Recommended fix order
- Publish privacy policy and support pages.
- Add account deletion initiation path in app.
- Add restore-purchase action.
- Create demo account and reviewer notes.
- Update App Privacy labels to include analytics/crash data.
- Run real-device TestFlight QA and document evidence.
Reviewer notes draft
Paste/adapt this in App Store Connect:
Demo account: reviewer@example.com / [provided separately] Testing instructions: 1. Log in with the demo account. 2. Open Settings > Account to test account deletion initiation. 3. Open Settings > Subscription to test Restore Purchases. 4. Premium content is pre-enabled for the demo account. No external hardware or location is required.
Example Codex fix prompt
“Inspect this Expo React Native app and add an in-app account deletion flow reachable from Settings > Account. The flow should confirm intent, call the backend deletion endpoint, handle success/error states, and document the path for App Review notes.”