Este prompt genera el subtítulo, las palabras clave, el texto promocional, la descripción y las notas de la versión para un proyecto Xcode actual. La estructura sigue lo que espera fastlane.org y se puede usar de inmediato
You are a senior App Store Optimization (ASO) copywriter and localizer. Generate complete,
ready-to-upload App Store Connect metadata text files for THIS project's app, then deliver
them to me as a single ZIP file.
## 1. Learn the app from the project (do this first, do not guess)
Read and synthesize, in this priority order:
1. `fastlane/config/apps.yml` — take the app `name`, `platform`, `primary_locale`, and the
full `locales` list. If more than one app entry exists, use the one I name; if I named
none, use the first `ios` app and tell me which you picked.
2. `fastlane/config/aso.yml` — honor `app_positioning.default_tone` and any field limits.
3. `README.md`, any markdown file that contains "description" in it's name, anything under `docs/`, and `user_notes/aso_brief.md` if present.
4. Existing `fastlane/metadata/<primary_locale>/*.txt` (especially `description.txt`,
`name.txt`, `subtitle.txt`, `keywords.txt`) as ground truth for what the app actually does.
From these, form a short internal understanding: what the app does, its core features, who
it is for, and its key benefit. Do NOT invent features, prices, awards, or claims that the
source material does not support.
## 2. Files to produce, per locale
For EVERY locale listed for the app, produce exactly these five files:
- `description.txt`
- `subtitle.txt`
- `keywords.txt`
- `promotional_text.txt`
- `release_notes.txt`
## 3. Hard character limits (never exceed — count Unicode characters)
- subtitle.txt ≤ 30
- keywords.txt ≤ 100
- promotional_text.txt ≤ 170
- description.txt ≤ 4000
- release_notes.txt ≤ 4000
If `fastlane/config/aso.yml` specifies different `metadata_fields.<field>.max_length`
values, those override the numbers above. Use the space well but always stay under the cap.
## 4. Field-by-field rules
- description: Benefit-led and scannable. Front-load the single most important sentence —
the first ~2 lines are what users see before "more". Follow with concrete features from
the source material, short paragraphs or a tight bulleted list. Tone = the app's
configured tone (default: clear, useful, non-hype). No hype, no fake urgency, no emoji
spam, no unverifiable claims.
- subtitle: One punchy benefit or category line, ≤ 30 chars. Do NOT repeat the app name.
- keywords: Comma-separated list, ≤ 100 chars. CRITICAL FORMAT: NO space after the commas
(e.g. `grid,bot,crypto,trading` — never `grid, bot`). All lowercase. Do NOT include words
already present in the app name or subtitle (App Store indexes those separately, so
repeating them wastes space). No duplicate words, no plurals of a word already listed, no
competitor brand names or trademarks. Maximize distinct, relevant, high-intent terms; if
it won't fit, drop the least relevant term rather than truncating mid-word.
- promotional_text: One or two sentences of current, changeable messaging, ≤ 170 chars.
- release_notes: Concise, user-facing "what's new" (improvements, fixes, refinements),
≤ 4000. Keep it honest and generic unless the source material states specific changes.
## 5. Localization
- The primary locale is the source of truth; write it first.
- For every other locale, write NATIVE, idiomatic copy — genuinely translate and adapt for
that market. Do NOT output English text with a "localized" label, and do NOT machine-gloss.
- Re-check every limit AFTER translating (translations change length). Keyword lists must be
localized to real search terms in that language and still follow the no-space-after-comma
rule and the character cap.
## 6. Output / delivery
- Encode every file as UTF-8 plain text, content only (no markdown, no surrounding quotes),
ending with a single trailing newline.
- Lay them out mirroring Fastlane's structure, one folder per locale:
metadata_drafts/<locale>/description.txt
metadata_drafts/<locale>/subtitle.txt
metadata_drafts/<locale>/keywords.txt
metadata_drafts/<locale>/promotional_text.txt
metadata_drafts/<locale>/release_notes.txt
- Package the whole tree into ONE zip file named `aso_metadata_<app-target>_<date>.zip` and
give it to me as a downloadable file.
- After the zip, print a short verification table: locale, field, character count, and limit,
so I can confirm nothing is over. Flag any row that is within 5 characters of its limit.
Treat everything you produce as a DRAFT for my manual review before upload. Do not upload,
submit, or release anything.
Guía del prompt
Ideal para
Empezar desde un prompt estructurado y reutilizable en lugar de un chat en blanco.
Adaptar el prompt a tus propios datos manteniendo intacta la intención original.
Flujos de trabajo relacionados con Software Development, Agents & Vibe Coding, Marketing & Social.
Cómo usarlo
Copia la plantilla de prompt completa.
Sustituye cada variable por tu propio contexto o elige una de las opciones sugeridas.
Pega el prompt completado en ChatGPT, Claude, Gemini u otro asistente de IA.
Ejemplo de partida
You are a senior App Store Optimization (ASO) copywriter and localizer. Generate complete,
ready-to-upload App Store Connect metadata text files for THIS project's app, then deliver
them to me as a single ZIP file.
## 1. Learn the app from the project (do this first, do not guess)
Read and synthesize, in this priority order:
1. `fastlane/config/apps.yml` — take the app `name`, `platform`, `primary_locale`, and the
full `locales` list. If more than one app entry exists, use the one I name; if I named
none, use the first `ios` app and tell me which you picked.
2. `fastlane/config/aso.yml` — honor `app_positioning.default_tone` and any field limits.
3. `README.md`, any markdown file that contains "description" in it's name, anything under `docs/`, and `user_notes/aso_brief.md` if present.
4. Existing `fastlane/metadata/<primary_locale>/*.txt` (especially `description.txt`,
...
Cómo funcionan las variables
Sintaxis de variables
Las variables van entre {{ y }} y siguen este patrón:
{{variable name: option1, option2, option3}}
Variables predefinidas
Una selección puede hacer referencia a una lista de variables predefinida usando corchetes. Aparecen en [naranja] y proporcionan valores de uso común como colores, tonos o idiomas.
{{Tone: [tones]}}
Listas de selección personalizadas
También puedes proporcionar una lista de opciones en línea, separadas por comas.
Consejo: ¡no necesitas la app PUCO para usar estos prompts! Solo copia la plantilla y sustituye cada sección {{…}} por tu propio texto directamente en ChatGPT, Claude, Gemini o cualquier otro asistente de IA.
Usa este prompt en segundos, no en minutos
Instala PUCO para Mac: pulsa un atajo en cualquier app, rellena un formulario inteligente, pega en ChatGPT, Claude o Gemini. Cada variable se convierte en un menú desplegable curado. Tus últimos valores se recuerdan.