SKILL.md
plan-aso — Store listing growth plan
Degree of freedom: HIGH — audit the listing, emit a plan. Stay plan-only. No metadata, screenshot, or prompt edits until approved.
Role: Mobile growth / ASO specialist.
Task: Audit the listing that decides whether a visitor installs, emit plan-aso.md. Plan only — no metadata, screenshot, or prompt edits until approved.
ASO is two funnels: keywords decide who finds the app; screenshots + first impression decide who installs.
This skill vs neighbors
| Skill | Owns |
|---|---|
| plan-aso (this) | Find + install conversion of the listing |
plan-mobile-readiness |
Submission mechanics, privacy manifest, demo account |
plan-privacy-compliance |
Honest privacy labels (don't ASO-lie about data) |
enhance-web-seo / plan-aeo-readiness |
Web / answer-engine discoverability |
audit-monetization-iap |
Whether IAP actually works |
design-frontend |
Asset production after the plan is approved |
Do not fire for "will Play reject us / Guideline 2.5.2" → plan-mobile-readiness.
How to reason (every plan item)
- Propose — keyword, locale, screenshot order, or ratings-prompt change
- Risk — find vs install: who never sees the app, or who sees it and bounces
- Keep-working — locales/assets that already convert
- Phase — quick / medium / ongoing (do not execute)
Worked example
Propose: fill the unused 40 chars of the iOS keyword field; drop
title-word repeats; put the benefit screenshot first.
Risk: core use-case terms never indexed; first impression is a bare UI dump.
Keep-working: JP long description already locale-native.
Phase: quick — keywords + screenshot reorder.
Find vs install: find (keywords) + install (shot 1).
Phase 0 — Gather the current listing [HIGH freedom]
Per platform × locale: name, subtitle (iOS) / short description (Android), iOS 100-char keyword field, long description, screenshots + captions, preview video, icon, category, ratings state. Note machine-translated or EN-only locales.
Phase 1 — Discoverability (find) [HIGH freedom]
iOS keywords — 100 chars fully used, comma-separated, no wasted spaces, no repeats of title/subtitle words, no plural+singular waste. Core use-case terms present.
Title & subtitle — Title carries the #1 keyword beyond brand. Subtitle is a keyword-bearing value line, not a slogan.
Android — Play indexes the long description. Core terms in the first lines, natural density, not stuffed.
Localization — Each locale is a separate keyword surface. JP + EN need locale-native keywords, not translated English. Untapped locales are the cheap win.
Category & competitors — Right primary category? Terms competitors rank that this listing ignores?
Phase 2 — Conversion (install) [HIGH freedom]
Screenshots — First 2–3 (no scroll) lead with benefit captions, not bare UI. Narrative across the set. Localized text for key markets.
Icon — Distinct at thumbnail size.
Preview video — Value in the first seconds (often muted autoplay).
Above-the-fold copy — One-line hook, not "Welcome to…".
Ratings — In-app prompt at a positive moment (after value, not on launch). Reviews responded to.
Trust — No leftover screenshots from an old version.
Phase 3 — Prioritized plan (approve before executing) [HIGH freedom — plan only]
- Quick — fill keyword field, drop redundant title words, add missing
core-market locale, reorder screenshots value-first
- Medium — benefit captions, localized screenshot text, preview video,
well-timed rating prompt
- Ongoing — locale expansion, review cadence, store A/B on icon/shots,
keyword iteration
Each item: current → change → find vs install → effort. Asset work flagged for design-frontend.
Self-critique before the burndown [LOW freedom — do not skip]
- Per platform × locale — do not audit EN-only and call JP done
- Find vs install labeled — every item says which funnel it moves
- No ASO-lie — privacy labels stay honest (
plan-privacy-compliance) - Right owner — Guideline 2.5.2 / demo account →
plan-mobile-readiness - Nothing edited on the listing until approved
Definition of Done
- Listing inventory per platform × locale
- iOS keywords + title/subtitle audited
- Android description placement checked
- Localization gaps with locale-native keyword notes
- Screenshots / icon / video / hook / ratings reviewed
- Plan prioritized; approved before listing edits
Output format
- Inventory — field × platform × locale
- Find findings — issue | severity | fix
- Install findings — issue | severity | fix
- Plan — quick / medium / ongoing
- Await approval.
Related
plan-mobile-readiness— get into the storeplan-privacy-compliance— labels must match collectionaudit-monetization-iap— paid features actually unlockenhance-web-seo/plan-aeo-readiness— web counterpartsdesign-frontend— produce approved assets