Apple treats the listing as a contract with the user. Audit every claim against what a first-launch user can reach in the submitted build, including the claims your screenshots make visually.
Got the actual message? Paste it into the free rejection decoder — it matches your rejection against documented store rules and returns the fix steps, the resubmission checklist, and a reply draft. Three free decodes, no account.
2.3.1 — Accurate Metadata
Your store listing promises something the app doesn't do — features, content, or outcomes that aren't in the binary the reviewer tested. Apple treats the listing as a contract: if it isn't in the app, it can't be in the metadata.
Severity: major · Decoder confidence for this class: A (see the honesty note below)
The fix
- Compare every claim in the name, subtitle, description, and previews against what a first-launch user can actually reach in the submitted build.
- Remove or rewrite any claim for features that are planned, server-flagged off, region-limited, or behind conditions the description doesn't state.
- If the feature exists but is hard to find, add step-by-step access instructions to the App Review notes instead of editing metadata.
- Check screenshots and previews too — they are metadata under this guideline.
Resubmission checklist
- Every description claim verified reachable in the submitted build
- No 'coming soon' or roadmap features presented as current
- Screenshots/previews consistent with the description
Reply draft
What the decoder can diagnose here: Which listing elements Apple named, and whether the fix is metadata-side (edit the listing) or product-side (the feature is genuinely missing). What it cannot: Whether the feature exists but was hidden behind a flow the reviewer didn't find — if so, the fix is review notes with a path, not a metadata edit.
Rule text: “App Store metadata should accurately reflect the app's content and functionality.” — App Review Guidelines §2.3.1, retrieved 2026-10-23
2.3.3 — Screenshots Must Show the App in Use
Your App Store screenshots are marketing art, a login wall, or a splash screen instead of the app actually being used. Apple requires screenshots to show the app in use so users (and reviewers) can see what it does.
Severity: major · Decoder confidence for this class: A (see the honesty note below)
The fix
- Capture the actual app UI on the main screens a user spends time in — not the login screen, splash screen, or title art.
- Populate the screens with realistic content (a demo account state is fine) so the functionality is visible.
- Upload replacements for every affected device size in App Store Connect.
- Make sure the screenshots match the current version's UI — outdated UI triggers 2.3.1 as well.
Resubmission checklist
- Screenshots show core app screens in use
- No login/splash/title-art-only sets
- All required device sizes updated
Reply draft
What the decoder can diagnose here: That the fix is a screenshot replacement, not an app change — this is one of the fastest rejections to clear. What it cannot: Which replacement frames Apple will consider sufficient — the rule of thumb is real UI with real content on the core screens.
Rule text: “Screenshots should show the app in use, and not merely the title art, login page, or splash screen.” — App Review Guidelines §2.3.3, retrieved 2026-10-23
Related guides
- Rejection decoder — paste your message, get the fix
- App Store Pre-Flight — the full check and $29 Founding pre-sale
- Google Play Pre-Flight — deadlines and declarations
- Guideline 2.3.7 — App name and keyword rules
Sources
- App Review Guidelines §2.3.1, retrieved 2026-10-23
- App Review Guidelines §2.3.3, retrieved 2026-10-23
Last updated October 23, 2026. Rules change; the retrieval dates above say when this page was last checked against the store's published text.
Decode your rejection — free
The decoder covers 41 documented rejection patterns across the App Store and Google Play, grounded in the stores' own published rules. Three free decodes; the $29 Pre-Flight Founding pre-sale unlocks unlimited decoding plus a full pre-flight check credit when the checker ships.
The decoder classifies and guides from the message you paste. It cannot see your app or your binary, and it never promises an approval outcome — that decision is always the store's.