From mobile-store-assets
Authoritative reference for App Store Connect requirements (May 2026): screenshot specs, metadata field limits, ASO indexing behaviour, Product Page Optimization (PPO), Custom Product Pages (CPPs), App Preview videos, localisation, and recent Apple policy compliance. Read this whenever you are authoring iOS store copy, sizing iOS screenshots, or advising on PPO / CPP / ASO. The /store-spec skill consults this for every iOS field.
How this skill is triggered — by the user, by Claude, or both
Slash command
/mobile-store-assets:ios-store-requirementsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill captures the current App Store Connect rules so `/store-spec`
This skill captures the current App Store Connect rules so /store-spec
authors copy and screenshots that submit cleanly. All facts include source
URLs; uncertainties are flagged explicitly.
Apple accepts portrait, landscape, or a mix within the same set. For landscape screenshots, the resolution is the portrait resolution with width and height swapped. Search results show 3 portrait OR 1 landscape screenshot — portrait wins on impression-share for most apps, but landscape-native apps (games, video, navigation, productivity tablets) should ship landscape.
| Device | Portrait | Landscape | Notes |
|---|---|---|---|
| iPhone 6.9" (16/17 Pro Max) | 1320 × 2868 | 2868 × 1320 | Current required primary iPhone size |
| iPad Pro 13" (M4) | 2064 × 2752 | 2752 × 2064 | Current required primary iPad size |
| Device | Resolution |
|---|---|
| iPhone 6.7" / 6.5" | 1290 × 2796 (6.7") · 1284 × 2778 (6.5") |
| iPad Pro 12.9" | 2048 × 2732 |
If you only upload 6.9" iPhone screenshots, Apple auto-scales them down for older device classes that still appear in App Store search results.
File rules
Sources: Apple ASC reference · Apple ASC upload guide
| Field | Limit | Notes |
|---|---|---|
| App Name | 30 | Highest ranking weight |
| Subtitle | 30 | Second-highest ranking weight |
| Promotional Text | 170 | Editable without resubmission |
| Description | 4,000 | Not indexed for search; conversion-only |
| Keywords field | 100 | Comma-separated, no spaces after commas |
| What's New (release notes) | 4,000 | Per release, per locale |
| Privacy Policy URL | n/a | Mandatory; ~255 chars practical |
| Support URL | n/a | Mandatory |
| Marketing URL | n/a | Optional |
Standard URL fields: Apple does not publish numeric char caps; treat as ~255 practical.
Sources: SplitMetrics ASO description guide · App Radar — keyword field · Apple ASC app information
Indexed for App Store search (from highest weight down):
Not indexed:
Subtitle weight — second only to App Name. Apple combines name + subtitle + keyword field automatically; never duplicate words across the three — duplicates are deduplicated and waste your ranking surface.
Screenshot caption text indexing — uncertain. In June 2025 several ASO tools (Appfigures, AppTweak, App Radar) observed screenshot caption text influencing search rankings, attributed to OCR. Apple has publicly denied performing OCR-based indexing. Treat as observed-but-unconfirmed: write your screenshot captions as if they were keyword-relevant, just don't keyword-stuff them.
Sources: Apple — App Store search · SplitMetrics ranking factors · App Radar — subtitle · ConsultMyApp — caption indexing · Appfigures — algorithm 2025
| Setting | Value |
|---|---|
| Treatments per test | Up to 3 (plus the original/default) |
| Testable assets | App icon, screenshots, app preview videos |
| Not testable | Name, subtitle, description, keywords (text fields are immutable in PPO) |
| Test duration | Up to 90 days max, or stop manually earlier |
| Traffic split | Developer chooses % allocated; treatments share equally |
| Update required? | Icon tests require an app submission; screenshot/preview tests don't |
No spec changes confirmed for 2025/2026 — treat as still current.
Sources: Apple — PPO overview · Apple — create a test · Apple — PPO marketing page
?ppid=<UUID> to the App Store product URL. Note: the
pt parameter you may have seen elsewhere is the iTunes provider-token
affiliate param, not CPP routing.Sources: MobileAction — CPP limit raised · Apple — configure CPPs · Adapty — CPPs
| Property | Value |
|---|---|
| Codec | H.264 or ProRes 422 (HQ) |
| Container | M4V / MP4 / MOV |
| Duration | 15–30 seconds |
| Max size | ~500 MB per file |
| Quantity | Up to 3 previews per language per device size |
| Resolution | Must match the targeted device size's screenshot resolution |
| Content | Authentic in-app footage only — no third-party UI, no calls to action, limited overlays |
Source: Apple — App Preview specs
Per-locale fields: App Name (30), Subtitle (30), Keywords (100), Promo Text (170), Description (4,000), What's New (4,000), screenshots, app previews, in-app event titles/descriptions, subscription display names. Approximately ~160 indexable chars per locale.
Fallback rules: if a locale isn't activated, the App Store falls back
to a related locale (e.g., fr-CA → fr-FR), and ultimately to the app's
primary language as set in App Store Connect.
New-locale defaults: when a locale is added to the app, screenshots and most fields inherit from the primary language except description and keywords, which start blank.
Sources: Apple — localisations · Apple — localize app information
Tightened rules on copycat apps, misleading branding, and use of other developers' trademarks. (9to5Mac · Apple developer news)
Screenshots and videos must reflect the real in-app experience. Showing fake UI, mock review counts, fabricated star ratings, or features the app does not have is grounds for rejection AND grounds for Developer Program termination (escalated language since 2021, still in force).
Apple prohibits incentivised reviews, fake review counts displayed in marketing, and any representation of social proof the app cannot substantiate.
Apple does not publish a specific numbered restriction, but under 2.3.1 / 2.3.7 any such claim must be literally true at listing and review time.
Uncertain on a dedicated rule number; the enforcement basis is the general accurate-metadata clause.
AI-generated content must be moderated; AI chat-style apps require age-gating and content-filter disclosures. (source)
App Review Guidelines: developer.apple.com/app-store/review/guidelines/
npx claudepluginhub dbroadhurst/mobile-store-assets --plugin mobile-store-assetsProvides CDSS development patterns for drug interaction checking, dose validation, clinical scoring (NEWS2, qSOFA), and alert classification integrated into EMR workflows.