App Store Submission Content
Generate polished, App Store-ready text content for your iOS/macOS app submission. This skill handles all localizable fields, enforces Apple's strict character and formatting rules, and outputs clean markdown organized by language.
When to Use
Users ask things like:
- "Generate App Store description for my app"
- "Write App Store keywords and description"
- "Create submission content for [app name]"
- "Help with App Store Connect text fields"
Your job: gather app details, generate compelling content for all fields, and output structured markdown ready to copy-paste into App Store Connect.
What Makes Strong App Store Content
Apple's App Store is highly competitive. Your text content is often the deciding factor between a download and being scrolled past.
App Name (30 chars max)
- Weak: "My Great Task Manager App"
- Strong: "Done - Simple Tasks"
Subtitle (30 chars max)
- Weak: "The best to-do list app ever made"
- Strong: "Focus on what matters, not the noise"
Description (4000 chars)
- Weak: "This app has many features. You can add tasks. You can check them off. It is very useful."
- Strong: "Done replaces your scattered notes with a single, elegant system. Add tasks in seconds, organize with natural tags, and get intelligent reminders when it actually matters. No subscription required."
Keywords (100 chars, comma-separated)
- Weak: "todo, task, list, tasks, todo list, to do, checklist, check list, productivity, organize"
- Strong: "tasks,focus,productivity,minimal,simple,organize"
What's New
- Weak: "Bug fixes and improvements"
- Strong: "Redesigned home screen with quick-add widget. Fixed crash when syncing with iCloud. Added dark mode support."
Field Reference
Localizable Fields (per language)
| Field |
Max Characters |
Notes |
| App Name |
30 |
No keyword stuffing allowed |
| Subtitle |
30 |
Strongest single differentiator |
| Description |
4000 |
First ~255 chars shown before "Read More" |
| Promotional Text |
170 |
Only field updatable without new version |
| Keywords |
100 |
Comma-separated, no spaces in individual keywords |
| What's New |
4000 |
Written for humans deciding whether to update |
Global Fields (not localized)
| Field |
Format |
Notes |
| Copyright |
YYYY Company Name |
No symbol, year first |
| Primary Category |
From category list |
Required |
| Secondary Category |
From category list |
Optional |
| App Review Notes |
Free text |
Credentials + instructions for reviewer (never public) |
Character Rules
Your content must NEVER contain characters that trigger App Store rejection:
Forbidden (rejection risk)
| Category |
Forbidden Characters |
| Emoji |
All emoji (U+1F300+) |
| Checkmarks |
✓ (U+2713), ✔ (U+2714) |
| Bullets |
• (U+2022), ‣ (U+2023), ◦ (U+25E6) |
| Dagger |
† (U+2020), ‡ (U+2021) |
| HTML |
Any HTML tags like <br>, <b>, <strong> |
Allowed
- Standard ASCII and punctuation
- Hyphens (
-) and asterisks (*) as bullet replacements
- Accented/diacritic characters for non-English localizations
- Line breaks within Description and What's New
- Apostrophes (
'), quotation marks (", ')
Supported Languages
The App Store supports 39 locales. Generate content in these languages as needed:
| Code |
Locale |
| ar |
Arabic |
| ca |
Catalan |
| zh-Hans |
Chinese (Simplified) |
| zh-Hant |
Chinese (Traditional) |
| hr |
Croatian |
| cs |
Czech |
| da |
Danish |
| nl |
Dutch |
| en |
English |
| fi |
Finnish |
| fr |
French |
| de |
German |
| el |
Greek |
| he |
Hebrew |
| hi |
Hindi |
| hu |
Hungarian |
| id |
Indonesian |
| it |
Italian |
| ja |
Japanese |
| ko |
Korean |
| ms |
Malay |
| no |
Norwegian |
| pl |
Polish |
| pt |
Portuguese |
| ro |
Romanian |
| ru |
Russian |
| sk |
Slovak |
| es |
Spanish |
| sv |
Swedish |
| th |
Thai |
| tr |
Turkish |
| uk |
Ukrainian |
| vi |
Vietnamese |
Multi-Language Detection
How to Detect Localization in a Project
iOS/macOS Native:
*.lproj/Localizable.strings files
knownRegions in .xcodeproj/project.pbxproj
Flutter:
React Native / Generic:
i18n/, locales/, translations/ directories
Android / Cross-platform:
Multi-Language Workflow
- Scan project for localization signals using the paths above
- If localization detected → report found languages, ask user to confirm multi-language output (recommend yes)
- If confirmed → generate all localizable fields for each detected language
- If no localization detected → default to English (US) only
Project Analysis Guide
What to Extract
Before generating content, analyze the codebase to gather:
| Source |
What to Look For |
package.json, Info.plist |
App name, bundle ID |
README.md |
App description, key features |
| Source code comments |
Unique selling points |
| Existing marketing materials |
Brand voice, key phrases |
| Feature flags |
Latest features for "What's New" |
Questions to Ask User
If information is missing, ask:
- What is the app's primary purpose?
- Who is the target audience?
- What are the top 3 features?
- Is there existing copy you'd like to adapt?
- What company/developer name for copyright?
Per-Field Writing Guidance
App Name
Weak: Contains keywords, too long, generic
Strong: Memorable, distinctive, fits 30-char limit
| Weak |
Strong |
| "Best Task Manager Todo List App 2024" |
"Done" |
| "Professional Calendar Scheduler Pro" |
"Cal" |
Subtitle
Weak: Generic praise, keyword stuffing
Strong: Specific benefit, unique positioning
| Weak |
Strong |
| "The best productivity app ever!" |
"Your tasks, organized beautifully" |
| "Todo list checklist organizer app" |
"Stop forgetting, start doing" |
Description
Weak: Feature list without context, generic claims
Strong: Benefit-driven opening, specific features, social proof
Structure:
- Opening hook (1-2 sentences) - What problem do you solve?
- Key benefits (2-3 sentences) - Why should someone care?
- Features (3-5 bullet-style lines) - What can they do?
- Call to action (1 sentence) - Download now
Weak:
"This app has many features. You can add tasks. You can organize them into lists. You can set due dates. You can get reminders. It is very useful. Download now."
Strong:
"Done replaces scattered notes with a single, elegant system. Capture tasks in seconds, organize with natural tags, and get intelligent reminders when it matters. No subscription required. Download now."
Keywords
- 100 characters maximum
- Comma-separated, no spaces after commas
- No repeated words from name/subtitle
- Include competitor names if relevant
| Weak |
Strong |
| "todo,task,list,check,organize,productivity" |
"tasks,focus,minimal,simple,habits,daily" |
What's New
- Write for users deciding whether to update
- Highlight meaningful changes, not just "bug fixes"
- Include new features by name when possible
- Keep it scannable
| Weak |
Strong |
| "Bug fixes and improvements" |
"Redesigned home screen with quick-add widget. Fixed crash when syncing with iCloud." |
| "Performance improvements" |
"App now launches 2x faster on older devices" |
Output Format
Generate structured markdown with one section per language, then global fields:
## English (US)
### App Name
[Your app name]
### Subtitle
[Your subtitle]
### Description
[Your description]
### Promotional Text
[Your promotional text]
### Keywords
[Your keywords]
### What's New
[Your what's new]
---
## French (France)
### App Name
[Your app name in French]
[... same subsections ...]
---
## Global Fields
### Copyright
YYYY Company Name
### Primary Category
[Category]
### Secondary Category
[Category or "None"]
### App Review Notes
[Your notes for the reviewer]
Example: Productivity App
## English (US)
### App Name
Done
### Subtitle
Focus on what matters, not the noise
### Description
Done replaces your scattered notes with a single, elegant system. Add tasks in seconds, organize with natural tags, and get intelligent reminders when it actually matters. No subscription required.
• Capture tasks instantly with natural language input
• Organize with smart tags and custom lists
• Get reminders that actually help, not annoy
• Sync across all your Apple devices
• Works completely offline
Download Done today and finally get things done.
### Promotional Text
Now with dark mode and Siri shortcuts
### Keywords
tasks,focus,productivity,minimal,simple,organize,goals,daily
### What's New
• Redesigned home screen with quick-add widget
• Dark mode support
• Siri Shortcuts integration
• Fixed crash when syncing with iCloud
---
## Global Fields
### Copyright
2026 Example Studio
### Primary Category
Productivity
### Secondary Category
None
### App Review Notes
Test account: demo@example.com / TestPassword123
Use the included test account to access all premium features.
Example: Health App
## English (US)
### App Name
Pulse
### Subtitle
Your daily health companion
### Description
Pulse helps you build healthier habits with personalized insights and easy tracking. From sleep to steps, see your complete health picture in one beautiful app.
• Track sleep, activity, and mindfulness
• Personalized daily recommendations
• Beautiful charts and progress insights
• Health data stays on your device
• Apple Watch companion app
Start your wellness journey with Pulse today.
### Promotional Text
Free for a limited time - all features unlocked
### Keywords
health,fitness,wellness,sleep,activity,track,steps,exercise
### What's New
• New sleep analysis with sleep stages
• Apple Watch Series 10 support
• Bug fixes and performance improvements
---
## German (Germany)
### App Name
Pulse
### Subtitle
Dein täglicher Gesundheitsbegleiter
### Description
Pulse hilft dir, gesündere Gewohnheiten aufzubauen - mit personalisierten Einblicken und einfachem Tracking. Von Schlaf bis Schritte, sieh dein komplettes Gesundheitsbild in einer schönen App.
[... continue with German localization ...]
---
## Global Fields
### Copyright
2026 Example Studio
### Primary Category
Health & Fitness
### Secondary Category
Medical
### App Review Notes
Test account: demo@example.com / TestPassword123
The app uses HealthKit - no special setup needed for testing.
Quick Reference
Character Limits
| Field |
Limit |
| App Name |
30 |
| Subtitle |
30 |
| Description |
4000 |
| Promotional Text |
170 |
| Keywords |
100 |
| What's New |
4000 |
Keyword Format
- Comma-separated:
word1,word2,word3
- No spaces after commas
- No duplicate keywords
- No words from name/subtitle
Copyright Format
YYYY Company Name
- No © symbol
- No period at end
Forbidden Characters
- All emoji
- ✓ ✔ • ‣ ◦ † ‡
- Any HTML tags
App Store Categories
Primary Categories:
- Books
- Business
- Catalogs
- Education
- Entertainment
- Finance
- Food & Drink
- Games
- Health & Fitness
- Lifestyle
- Medical
- Music
- Navigation
- News
- Photo & Video
- Productivity
- Reference
- Shopping
- Social Networking
- Sports
- Stickers
- Travel
- Utilities
- Weather
1---2name: appstore-submission-content3description: Generate complete, ready-to-paste App Store Connect text content. Covers all localizable fields, enforces Apple character rules, detects multi-language support, and outputs structured markdown.4---56# App Store Submission Content78Generate polished, App Store-ready text content for your iOS/macOS app submission. This skill handles all localizable fields, enforces Apple's strict character and formatting rules, and outputs clean markdown organized by language.910## When to Use1112Users ask things like:13- "Generate App Store description for my app"14- "Write App Store keywords and description"15- "Create submission content for [app name]"16- "Help with App Store Connect text fields"1718Your job: gather app details, generate compelling content for all fields, and output structured markdown ready to copy-paste into App Store Connect.1920## What Makes Strong App Store Content2122Apple's App Store is highly competitive. Your text content is often the deciding factor between a download and being scrolled past.2324**App Name (30 chars max)**25- Weak: "My Great Task Manager App"26- Strong: "Done - Simple Tasks"2728**Subtitle (30 chars max)**29- Weak: "The best to-do list app ever made"30- Strong: "Focus on what matters, not the noise"3132**Description (4000 chars)**33- Weak: "This app has many features. You can add tasks. You can check them off. It is very useful."34- Strong: "Done replaces your scattered notes with a single, elegant system. Add tasks in seconds, organize with natural tags, and get intelligent reminders when it actually matters. No subscription required."3536**Keywords (100 chars, comma-separated)**37- Weak: "todo, task, list, tasks, todo list, to do, checklist, check list, productivity, organize"38- Strong: "tasks,focus,productivity,minimal,simple,organize"3940**What's New**41- Weak: "Bug fixes and improvements"42- Strong: "Redesigned home screen with quick-add widget. Fixed crash when syncing with iCloud. Added dark mode support."4344## Field Reference4546### Localizable Fields (per language)4748| Field | Max Characters | Notes |49|-------|----------------|-------|50| App Name | 30 | No keyword stuffing allowed |51| Subtitle | 30 | Strongest single differentiator |52| Description | 4000 | First ~255 chars shown before "Read More" |53| Promotional Text | 170 | Only field updatable without new version |54| Keywords | 100 | Comma-separated, no spaces in individual keywords |55| What's New | 4000 | Written for humans deciding whether to update |5657### Global Fields (not localized)5859| Field | Format | Notes |60|-------|--------|-------|61| Copyright | `YYYY Company Name` | No symbol, year first |62| Primary Category | From category list | Required |63| Secondary Category | From category list | Optional |64| App Review Notes | Free text | Credentials + instructions for reviewer (never public) |6566## Character Rules6768Your content must NEVER contain characters that trigger App Store rejection:6970### Forbidden (rejection risk)7172| Category | Forbidden Characters |73|----------|---------------------|74| Emoji | All emoji (U+1F300+) |75| Checkmarks | ✓ (U+2713), ✔ (U+2714) |76| Bullets | • (U+2022), ‣ (U+2023), ◦ (U+25E6) |77| Dagger | † (U+2020), ‡ (U+2021) |78| HTML | Any HTML tags like `<br>`, `<b>`, `<strong>` |7980### Allowed8182- Standard ASCII and punctuation83- Hyphens (`-`) and asterisks (`*`) as bullet replacements84- Accented/diacritic characters for non-English localizations85- Line breaks within Description and What's New86- Apostrophes (`'`), quotation marks (`"`, `'`)8788## Supported Languages8990The App Store supports 39 locales. Generate content in these languages as needed:9192| Code | Locale |93|------|--------|94| ar | Arabic |95| ca | Catalan |96| zh-Hans | Chinese (Simplified) |97| zh-Hant | Chinese (Traditional) |98| hr | Croatian |99| cs | Czech |100| da | Danish |101| nl | Dutch |102| en | English |103| fi | Finnish |104| fr | French |105| de | German |106| el | Greek |107| he | Hebrew |108| hi | Hindi |109| hu | Hungarian |110| id | Indonesian |111| it | Italian |112| ja | Japanese |113| ko | Korean |114| ms | Malay |115| no | Norwegian |116| pl | Polish |117| pt | Portuguese |118| ro | Romanian |119| ru | Russian |120| sk | Slovak |121| es | Spanish |122| sv | Swedish |123| th | Thai |124| tr | Turkish |125| uk | Ukrainian |126| vi | Vietnamese |127128## Multi-Language Detection129130### How to Detect Localization in a Project1311321. **iOS/macOS Native:**133 - `*.lproj/Localizable.strings` files134 - `knownRegions` in `.xcodeproj/project.pbxproj`1351362. **Flutter:**137 - `lib/l10n/*.arb` files1381393. **React Native / Generic:**140 - `i18n/`, `locales/`, `translations/` directories1411424. **Android / Cross-platform:**143 - `res/values-*/strings.xml`144145### Multi-Language Workflow1461471. Scan project for localization signals using the paths above1482. If localization detected → report found languages, ask user to confirm multi-language output (recommend yes)1493. If confirmed → generate all localizable fields for each detected language1504. If no localization detected → default to English (US) only151152## Project Analysis Guide153154### What to Extract155156Before generating content, analyze the codebase to gather:157158| Source | What to Look For |159|--------|-----------------|160| `package.json`, `Info.plist` | App name, bundle ID |161| `README.md` | App description, key features |162| Source code comments | Unique selling points |163| Existing marketing materials | Brand voice, key phrases |164| Feature flags | Latest features for "What's New" |165166### Questions to Ask User167168If information is missing, ask:169- What is the app's primary purpose?170- Who is the target audience?171- What are the top 3 features?172- Is there existing copy you'd like to adapt?173- What company/developer name for copyright?174175## Per-Field Writing Guidance176177### App Name178179**Weak:** Contains keywords, too long, generic180**Strong:** Memorable, distinctive, fits 30-char limit181182| Weak | Strong |183|------|--------|184| "Best Task Manager Todo List App 2024" | "Done" |185| "Professional Calendar Scheduler Pro" | "Cal" |186187### Subtitle188189**Weak:** Generic praise, keyword stuffing190**Strong:** Specific benefit, unique positioning191192| Weak | Strong |193|------|--------|194| "The best productivity app ever!" | "Your tasks, organized beautifully" |195| "Todo list checklist organizer app" | "Stop forgetting, start doing" |196197### Description198199**Weak:** Feature list without context, generic claims200**Strong:** Benefit-driven opening, specific features, social proof201202Structure:2031. Opening hook (1-2 sentences) - What problem do you solve?2042. Key benefits (2-3 sentences) - Why should someone care?2053. Features (3-5 bullet-style lines) - What can they do?2064. Call to action (1 sentence) - Download now207208**Weak:**209"This app has many features. You can add tasks. You can organize them into lists. You can set due dates. You can get reminders. It is very useful. Download now."210211**Strong:**212"Done replaces scattered notes with a single, elegant system. Capture tasks in seconds, organize with natural tags, and get intelligent reminders when it matters. No subscription required. Download now."213214### Keywords215216- 100 characters maximum217- Comma-separated, no spaces after commas218- No repeated words from name/subtitle219- Include competitor names if relevant220221| Weak | Strong |222|------|--------|223| "todo,task,list,check,organize,productivity" | "tasks,focus,minimal,simple,habits,daily" |224225### What's New226227- Write for users deciding whether to update228- Highlight meaningful changes, not just "bug fixes"229- Include new features by name when possible230- Keep it scannable231232| Weak | Strong |233|------|--------|234| "Bug fixes and improvements" | "Redesigned home screen with quick-add widget. Fixed crash when syncing with iCloud." |235| "Performance improvements" | "App now launches 2x faster on older devices" |236237## Output Format238239Generate structured markdown with one section per language, then global fields:240241```markdown242## English (US)243244### App Name245[Your app name]246247### Subtitle248[Your subtitle]249250### Description251[Your description]252253### Promotional Text254[Your promotional text]255256### Keywords257[Your keywords]258259### What's New260[Your what's new]261262---263264## French (France)265266### App Name267[Your app name in French]268269[... same subsections ...]270271---272273## Global Fields274275### Copyright276YYYY Company Name277278### Primary Category279[Category]280281### Secondary Category282[Category or "None"]283284### App Review Notes285[Your notes for the reviewer]286```287288## Example: Productivity App289290```291## English (US)292293### App Name294Done295296### Subtitle297Focus on what matters, not the noise298299### Description300Done replaces your scattered notes with a single, elegant system. Add tasks in seconds, organize with natural tags, and get intelligent reminders when it actually matters. No subscription required.301302• Capture tasks instantly with natural language input303• Organize with smart tags and custom lists304• Get reminders that actually help, not annoy305• Sync across all your Apple devices306• Works completely offline307308Download Done today and finally get things done.309310### Promotional Text311Now with dark mode and Siri shortcuts312313### Keywords314tasks,focus,productivity,minimal,simple,organize,goals,daily315316### What's New317• Redesigned home screen with quick-add widget318• Dark mode support319• Siri Shortcuts integration320• Fixed crash when syncing with iCloud321322---323324## Global Fields325326### Copyright3272026 Example Studio328329### Primary Category330Productivity331332### Secondary Category333None334335### App Review Notes336Test account: demo@example.com / TestPassword123337Use the included test account to access all premium features.338```339340## Example: Health App341342```343## English (US)344345### App Name346Pulse347348### Subtitle349Your daily health companion350351### Description352Pulse helps you build healthier habits with personalized insights and easy tracking. From sleep to steps, see your complete health picture in one beautiful app.353354• Track sleep, activity, and mindfulness355• Personalized daily recommendations356• Beautiful charts and progress insights357• Health data stays on your device358• Apple Watch companion app359360Start your wellness journey with Pulse today.361362### Promotional Text363Free for a limited time - all features unlocked364365### Keywords366health,fitness,wellness,sleep,activity,track,steps,exercise367368### What's New369• New sleep analysis with sleep stages370• Apple Watch Series 10 support371• Bug fixes and performance improvements372373---374375## German (Germany)376377### App Name378Pulse379380### Subtitle381Dein täglicher Gesundheitsbegleiter382383### Description384Pulse hilft dir, gesündere Gewohnheiten aufzubauen - mit personalisierten Einblicken und einfachem Tracking. Von Schlaf bis Schritte, sieh dein komplettes Gesundheitsbild in einer schönen App.385386[... continue with German localization ...]387388---389390## Global Fields391392### Copyright3932026 Example Studio394395### Primary Category396Health & Fitness397398### Secondary Category399Medical400401### App Review Notes402Test account: demo@example.com / TestPassword123403The app uses HealthKit - no special setup needed for testing.404```405406## Quick Reference407408### Character Limits409410| Field | Limit |411|-------|-------|412| App Name | 30 |413| Subtitle | 30 |414| Description | 4000 |415| Promotional Text | 170 |416| Keywords | 100 |417| What's New | 4000 |418419### Keyword Format420- Comma-separated: `word1,word2,word3`421- No spaces after commas422- No duplicate keywords423- No words from name/subtitle424425### Copyright Format426- `YYYY Company Name`427- No © symbol428- No period at end429430### Forbidden Characters431- All emoji432- ✓ ✔ • ‣ ◦ † ‡433- Any HTML tags434435### App Store Categories436437**Primary Categories:**438- Books439- Business440- Catalogs441- Education442- Entertainment443- Finance444- Food & Drink445- Games446- Health & Fitness447- Lifestyle448- Medical449- Music450- Navigation451- News452- Photo & Video453- Productivity454- Reference455- Shopping456- Social Networking457- Sports458- Stickers459- Travel460- Utilities461- Weather