App Store submission checklist
Run the final product, policy, account, and listing checks before review.
Treat the submitted build as a finished product, not a prototype. This checklist catches the issues most likely to block testing or make the listing disagree with the app.
App quality
- Test first launch, the main journey, relaunch, offline behavior, and failure states.
- Remove placeholder content, unfinished buttons, debug screens, and sample accounts.
- Test on at least one real device with the release configuration.
- Confirm every permission is requested only when its feature is used.
- Check readable text, VoiceOver labels, Dynamic Type, dark mode, and keyboard behavior.
Accounts and reviewer access
- If people can create an account, include account deletion inside the app.
- Do not require sign-in unless the core experience genuinely needs an account.
- Test Sign in with Apple on a physical device.
- Provide a working demo account when review cannot reach the main experience otherwise.
- Put any unusual testing steps, hardware needs, or sample data in Review Notes.
Product page
- Use the final app name, icon, subtitle, category, description, and keywords.
- Show the current interface in screenshots; never advertise absent functionality.
- Use public privacy and support URLs that open without an account.
- Choose pricing and availability intentionally.
- Complete the age-rating, content-rights, and export-compliance questions accurately.
Privacy and payments
- Make App Privacy answers match the code, SDKs, analytics, and privacy policy.
- Publish the App Privacy answers in App Store Connect before submission.
- Explain subscription price, billing period, and trial terms before purchase.
- Include Restore Purchases and test it with a sandbox account.
- Submit new in-app purchases or subscriptions for review when required.
Final build
- Confirm the bundle identifier belongs to this App Store Connect record.
- Use a new version when the previous marketing version is locked.
- Wait for Apple to finish processing the exact uploaded build.
- Install that build through TestFlight and complete one final smoke test.
- Read every field once more before selecting Submit for Review.