App Store Rejections
App Store Review Pre-Flight: A 9-Minute Checklist Before You Hit Submit
Nine checks, one per minute, that catch 80 percent of App Store and Google Play rejections. Run them before you hit Submit in 2026. Free checklist.

Nine checks. One per minute. Run before you click Submit in App Store Connect or the Google Play Console. The nine checks below catch roughly 80 percent of the rejections that come back in real submission cycles — not every rejection, but the ones that matter most and happen most often.
Use this as your App Store review rejection checker right before you submit. Each check maps to a specific Apple guideline or Google Play policy; each has a clear fail condition; each fits in one minute on a submission that is already in reasonable shape. If a check fails, fix the issue before submitting — the 9 minutes you invest saves the 24–72 hours you would lose in a rejection cycle.
Pair this with the full 80+ rejection reasons index for depth, the 60+ item ASO pre-submission checklist for the broader audit, and the ASO playbook for indie developers for the release-cycle strategy.
The 9 checks at a glance
Nine checks, mapped to the guideline or policy each one catches.
| # | Check | Catches | Time |
|---|---|---|---|
| 1 | App launches cleanly on a real device | Apple 2.1 / Google Quality | 1 min |
| 2 | Demo account works + credentials in reviewer notes | Apple 2.1 / App Review Info | 1 min |
| 3 | Support and Privacy Policy URLs return 200 | Apple 1.5 / Google User Data | 30 sec |
| 4 | Metadata matches the shipped app | Apple 2.3.3 / 2.3.7 / Google Deceptive Behavior | 1.5 min |
| 5 | Privacy Manifest + App Privacy label match | Apple 5.1.1 | 1.5 min |
| 6 | Keywords field passes the safety net | Apple 5.2 | 1 min |
| 7 | Account deletion flow is in-app | Apple 5.1.1(v) | 30 sec |
| 8 | Payments route through StoreKit / Play Billing | Apple 3.1.1 / Google Payments | 1 min |
| 9 | Binary-level checks pass | Apple 2.4 / Google Target API / 16 KB | 1 min |

Check 1 — App launches cleanly on a real device (1 min)
Install the latest build on a real iPhone or Android device. Launch it cold — not from Xcode, not from Android Studio — and tap through the first core flow. If it crashes, Apple will reject under guideline 2.1. Google will flag it in the pre-launch report.
Test on the lowest OS version you support, not just your daily driver. A crash on iOS 17 that doesn’t reproduce on iOS 18 is a rejection in 24 hours. App Store Review tests on a rotating mix of devices and versions; yours needs to survive the least favourable combination.
This is the single most common rejection reason on Apple — see the full rejection reasons index under the Binary section.
Check 2 — Demo account works + credentials in reviewer notes (1 min)
If your app requires sign-in, open the App Store Connect submission form and verify three things:
- The demo account username exists in your production database.
- The password field is filled in correctly.
- Any 2FA codes, test payment details, or special URLs are in the App Review Notes field.
Test the demo account one more time in Airplane Mode to rule out network dependencies the reviewer won’t reproduce. A non-working demo account is the fastest-resolvable rejection reason and also the one most teams don’t catch before submission.
Check 3 — Support and Privacy Policy URLs return 200 (30 sec)
Open both URLs in a fresh browser tab. Any 404, 5xx, or parked-domain response rejects under Apple guideline 1.5 and Google’s User Data policy. Apple tests these URLs automatically during review; checking them yourself costs you 30 seconds.
Confirm the Privacy Policy URL actually points at a privacy policy — not the homepage, not the Terms of Service, not a login-gated page. Apple rejects policies that are locked behind authentication.
Check 4 — Metadata matches the shipped app (1.5 min)
Compare what App Store Connect shows against what the app ships:
- Title and subtitledescribe the current app, not a feature you removed or haven’t shipped. Verify character limits with the keyword character counter and the subtitle helper.
- Description matches the current feature set. Outdated feature lists are a common rejection under 2.3.7.
- Screenshotsmatch the shipped UI. Replace any that show an older design or a feature you’ve since removed.
- No placeholder text— search the description for “Lorem Ipsum,” “TODO,” or “Your description here.”
Check 5 — Privacy Manifest + App Privacy label match (1.5 min)
iOS only. Enforced since May 2024.
- Confirm
PrivacyInfo.xcprivacyis in the binary and covers every required-reason API your app or any bundled SDK uses. - Every third-party SDK must ship its own manifest. Update SDKs that don’t, or vendor a manifest into the framework bundle.
- Open App Store Connect → App Privacy. Confirm the labelled data categories match what your code actually collects.
A Privacy Manifest missing for a required-reason API is a submission-blocking rejection under guideline 5.1.1. Cross-check against the Binary section of the App Store rejection reasons index for the exact phrasing.
Check 6 — Keywords field passes the safety net (1 min)
Run the following safety net against your iOS keywords field:
- 100 characters or fewer — check with the counter.
- No spaces after commas.
- No competitor names (rejects under 5.2 — see the rejection reasons index).
- No Apple-owned terms (
iphone,ipad,ios,app store). - No duplicates of title or subtitle words — wastes characters.
- No category names (you already rank in your category).
Full rules in the Apple App Store keywords field deep-dive.
Check 7 — Account deletion flow is in-app (30 sec)
If your app lets users create an account, it must let them delete it inside the app — not by emailing support, not via a web form only. Enforced since June 2022 under Apple guideline 5.1.1(v).
Tap through Settings → Account → Delete Account. Confirm the flow actually removes the account from your production database, not just flags it as inactive. Reviewers sometimes verify by creating a test account and deleting it.
Check 8 — Payments route through StoreKit / Play Billing (1 min)
For digital-content purchases:
- iOS must use StoreKit (unless you have the US Reader entitlement or an EU DMA carve-out — rare for indie apps).
- Android must use Play Billing.
Physical goods, real-world services, and enterprise use cases are exempt from IAP on both stores. A single external purchase link for digital content rejects under Apple 3.1.1 or Google’s Payments policy.
Check 9 — Binary-level checks pass (1 min)
The checks that are expensive to verify manually but easy to automate:
- iOS target SDK. New apps must build with iOS 18 SDK or later.
- Android target API. New apps must target API 35 (Android 15) as of August 2025.
- 16 KB page-size alignment. Android apps targeting API 35+ must support 16 KB pages as of November 2025.
- Debuggable flag off in the Android release AAB.
- Encryption export compliance declared via
ITSAppUsesNonExemptEncryptionin Info.plist. - No private API usage strings in the iOS binary.
Push My App’s Pre-Flight Scanner runs every check in this section automatically against your .ipa, .apk, or .aab — pointing at the exact file or manifest key that would trip a rejection. See the IPA vs APK vs AAB deep-dive for the fuller context, and the App Store vs Google Play listing requirements for the cross-store rule comparison.

What this checklist does not catch
Three categories of rejection this 9-minute pass does not cover:
- Review-time judgement calls.“Is this app fundamentally duplicative of an existing template?” (Apple 4.3) and “Does this content deserve the age rating claimed?” (Apple 1.1). These require Apple to form an opinion; no pre-flight catches them.
- Post-launch re-scans on Google Play. Play Protect continues to scan apps after launch and can suspend an already-live app for a policy violation surfaced weeks later. You can reduce your exposure with the full ASO pre-submission checklist.
- Content-rating mismatches per market. A content rating that passes the US App Store can fail the German or Japanese storefront under local content laws. Verify per-market if you ship to sensitive regions.
Automate checks 5 and 9, verify the other seven by hand
Push My App’s Pre-Flight Scanner automates the Privacy Manifest check (Check 5) and the full binary-level check suite (Check 9) against your .ipa, .apk, or .aab — in about 30 seconds. That leaves you ~7 minutes to verify the human-facing checks before you submit. See pricing for what is included in each plan.
Frequently asked questions
What is the difference between this 9-minute pre-flight and the full ASO pre-submission checklist?
The 9-minute pre-flight is the final gate you run immediately before hitting Submit. It catches the 80 percent of rejections that come from the highest-frequency rule violations. The 60+ item ASO checklist is the comprehensive audit you run earlier in the release cycle when you have more time — it covers metadata quality, localization, screenshot design, and conversion-oriented checks that go beyond rejection avoidance.
Can I really run all 9 checks in 9 minutes?
Yes, on a submission that is basically in good shape. The time estimates assume you have a working build, your URLs are live, and your App Store Connect forms are already filled in — the pre-flight is verification, not construction. If a check fails, the fix will take longer than one minute; the pre-flight surfaces it before Apple or Google does.
What if a check fails — do I need to fix it before submitting?
Yes, always. Every check on this list maps to a rejection that App Review or Play Review will catch within one review cycle. Submitting with a known failing check wastes a review cycle — 24 hours on Apple, several days on Google — and usually leaves your app in a worse queue position next time. The 9 minutes you invest saves days of back-and-forth.
Does this apply to Google Play or only the App Store?
Most checks apply to both stores. The Privacy Manifest (Check 5) is iOS-only; the 16 KB page-size and target-API checks in Check 9 are Android-only. Everything else — app launches cleanly, demo account, URL validity, metadata match, account deletion, payments routing — applies to both stores, though the specific rejection phrasing differs.
How is this different from reading Apple's own App Review Guidelines?
Apple's guidelines are 200+ rules organized by topic. This checklist is 9 time-boxed actions organized by what to actually do in the minute before you submit. The guidelines tell you what the rules are; this checklist tells you which subset of the rules to verify right now, and in what order. You still want the guidelines as a reference for edge cases.
Ship your listing without the rejection letter
Push My App generates store-ready metadata, resizes screenshots for every device, translates your listing into 14 languages, and runs an 80+ item rejection pre-flight before you submit.
Start your free trialKeep reading
App Store Rejections
App Store Rejection Reasons: A 2026 Index of 80+ Real Rejections
Every App Store and Google Play rejection reason that actually gets apps rejected in 2026 — with fixes, cited guidelines, and a pre-flight checklist.
Read
App Store Rejections
Your App Got Pulled: A 2026 Recovery Playbook
Your live app got suspended. A 7-day appeal window, specific reply templates for the 5 most common post-launch pulls, and how to get back to ranking.
Read
ASO Guides
App Store Optimization for Indie Developers: The 2026 Playbook
The 2026 ASO playbook for indie developers with zero budget. Keywords, metadata, screenshots, localization, reviews, and a 30-day sprint plan.
Read