On this page (14 sections)
Crashes and bugs
The reviewer launched the app on a current device and OS and hit a crash, freeze, blank screen or a broken flow. Apple attaches crash logs or screenshots when it can. Reproduce on the same device class and OS with the release build, not a debug build, and check that your backend and third-party services were reachable at review time. Guideline: 2.1.
Reviewer access
No demo account, credentials that expired, a code the reviewer cannot receive, or features gated by region, hardware or a paid plan. Provide a durable demo account and step-by-step notes in App Review Information. Guideline: 2.1 (sometimes phrased as “Information Needed”).
Metadata problems
Screenshots that show a different app or platform, claims the app cannot back up, names or subtitles with keywords stuffed in, previews that are not captured from the app, wrong age rating, references to other platforms or to pricing. Fixable in App Store Connect, usually with the same build. Guideline: 2.3.
Minimum functionality
The app is judged too limited: a wrapped website, a brochure, a set of links or content that does not need an app. Cosmetic changes rarely resolve this. Guideline: 4.2.
Spam and duplicate apps
Too similar to your other apps or to existing apps, built from a purchased template, or one of many near-identical apps in a saturated category. Multiple bundle IDs or developer accounts do not fix similarity. Guideline: 4.3.
Privacy
Missing or unreachable privacy policy, vague permission purpose strings, data collected without need, tracking without App Tracking Transparency consent, no account deletion, App Privacy labels that disagree with the app, or missing privacy manifests for required-reason APIs. Guideline: 5.1 (and privacy manifest requirements).
Payments and in-app purchase
Digital content or features unlocked outside In-App Purchase, subscription terms not disclosed, restore purchases missing, IAP items that do not load for the reviewer, or external purchase links that are not permitted for your storefront. Guideline: 3.1 and its sub-sections.
Login and account issues
Requiring an account for features that do not need one, offering only third-party login without an equivalent privacy-preserving option, or account creation without deletion. Guidelines: 5.1.1, 4.8, 5.1.1(v).
Hidden or misleading functionality
Features that behave differently for reviewers, remote switches that change the app after approval, undocumented or dormant code paths, or a description that promises something else. This is treated seriously and can affect the account. Guideline: 2.3.1 and related.
User-generated content and safety
Apps with user content need filtering, reporting, blocking and a way to contact the developer; some categories need age gating or moderation evidence. Guideline: 1.2.
Message wording → likely category
| If the message says… | Likely category | Guideline | Detailed guide |
|---|---|---|---|
| “exhibited one or more bugs” / “crashed on launch” | Completeness | 2.1 | Guideline 2.1 |
| “we were unable to sign in” / “demo account” | Reviewer access | 2.1 | Guideline 2.1 |
| “we need additional information” / “Information Needed” | Reviewer question | 2.1 | Guideline 2.1 |
| “screenshots do not reflect the app” / “metadata” | Metadata | 2.3 | Metadata rejection |
| “not sufficiently different from a mobile browsing experience” | Minimum functionality | 4.2 | Guideline 4.2 |
| “similar to other apps” / “spam” / “saturated” | Spam / duplicates | 4.3 | Guideline 4.3 |
| “unlock features or functionality” / “in-app purchase” | Payments | 3.1.1 | IAP / payment rejection |
| “purpose string” / “privacy policy” / “collects data” | Privacy | 5.1.1 | Privacy rejection |
| “tracks users” / “App Tracking Transparency” | Data use and sharing | 5.1.2 | Privacy rejection |
| “account deletion” | Privacy | 5.1.1(v) | Privacy rejection |
| “hidden or undocumented features” | Hidden functionality | 2.3.1 | Metadata rejection |
Fix, reply, resubmit or appeal — by category
| Category | Fix | Reply | Resubmit same build | Appeal |
|---|---|---|---|---|
| Crashes / bugs | Yes | Rarely | No | Only if you can show it does not crash on the cited device |
| Reviewer access | Provide working access | Yes, with new credentials | Often | No |
| Metadata | Correct the listing | If the reviewer misread it | Usually | Rarely |
| Minimum functionality | Add real functionality or reconsider | If real functionality was missed | No | Only with concrete evidence of functionality |
| Spam / duplicates | Differentiate or consolidate | With a comparison | No | With a concrete comparison |
| Privacy | Yes | If the finding is factually wrong | No | Rarely |
| Payments | Yes | If the exception genuinely applies | No | When the exception applies and was rejected |
Prevention checklist
- Test the release build on the newest iPhone and iPad OS versions before submitting
- Provide a durable demo account and complete review notes
- Screenshots and previews captured from the actual build; description matches features
- Privacy policy reachable in the app and the listing; App Privacy labels and privacy manifests accurate
- Every purchase of digital content goes through In-App Purchase unless an exception clearly applies
- Account creation paired with in-app account deletion
- No feature flags that change behaviour after review
Where we fit in
Most App Store rejections map to a technical or product change rather than a better reply. We identify which category your message really belongs to, reproduce the reviewer’s finding on the cited device and OS, and implement the change — crash fixes, reviewer access and demo accounts, StoreKit configuration, privacy manifests and purpose strings, metadata alignment — on iOS native, Flutter, React Native and Unity apps. The initial review of your notice is free. Apple’s decision remains Apple’s: we do not guarantee approval and we do not write around a guideline you have not met.