App Store Optimization is a process, not a one-time task. Most guides tell you what to optimize — title, keywords, screenshots. Fewer explain the sequence: what to do first, what depends on what, and how to know when the work is done.
This is the ASO process in the right order, from a cold start with no prior optimization to a fully optimized listing with active tracking.
Step 1: Audit your current listing
Before changing anything, understand what you currently have. A complete audit covers:
Title: Is your primary keyword in the title? Is it as early in the title as possible? Are you using all 30 characters?
Subtitle: Is the subtitle used at all? Does it contain a keyword, or a tagline? Is it using most of its 30 characters?
Keyword field: What is the current character count? Are there duplicate words from the title or subtitle? Are there spaces after commas eating into the budget? Are the keywords you're using researched or guessed?
Screenshots: Does the first screenshot show the app's core benefit (not a feature list)? Is there readable text? Are screenshots localized for your top markets?
Ratings: What's your current average? How many ratings? Is the rating above 4.0? When was the last review prompt shown to users?
Localization: Which locales have filled metadata? Which have blank keyword fields or subtitle fields? Which have English metadata applied to non-English markets?
Use the free keyword checker for the metadata audit — it shows duplicate words and character counts instantly. Record your current keyword positions in a rank tracker (Astro, AppFollow, ASOdesk) before making any changes. This is your baseline.
Step 2: Research keywords before writing anything
Keyword research comes before writing. Many developers reverse this — they write their metadata first and then try to "add keywords." The result is metadata that's optimized for how the developer describes the app, not how users search for it.
Define your app's core function in one sentence. This is your keyword category. A habit tracking app's category is "habit tracking." A focus timer's category is "focus" or "timer" or "pomodoro." This category term is your starting seed.
Pull keyword data for your category. Open AppTweak, ASOdesk, or AppFollow. Set the country to your primary market. Search your category term and pull related keywords. For each keyword, note: volume (how often it's searched) and difficulty (how competitive it is).
Map the competition tiers. Divide your keyword candidates into three tiers:
- Too competitive: single-word category terms where top results have 10,000+ ratings ("productivity," "meditation," "finance")
- Achievable: 2–3 word phrases where top results have 500–3,000 ratings ("habit tracker app," "pomodoro focus timer")
- Quick wins: specific long-tail phrases where top results have under 500 ratings ("habit tracker no ads," "focus timer for students")
As a new or small app, your title and subtitle target the achievable tier. Your keyword field fills with achievable and quick-win terms. You move up to harder keywords as your ratings grow.
Run competitor gap analysis. Find your top 3–5 competitors in this market. What keywords do they rank for that your app doesn't appear for at all? These are validated search terms — users are finding those competitors through these keywords — and they're your highest-priority additions.
Step 3: Build your title
Your title is 30 characters maximum and is the highest-weighted field in Apple's ranking algorithm. Build it around your primary keyword.
The structure that works for indie apps: [Brand name] — [Primary keyword] or [Primary keyword]: [Secondary descriptor]
Examples:
- "Navi — Habit Tracker & Goals" (30 chars)
- "Focus Timer: Pomodoro Sessions" (30 chars)
- "Budget Tracker — Money Planner" (30 chars)
The primary keyword should be as early in the title as possible. Apple weights words earlier in the title more heavily than words later.
Count characters exactly. App Store Connect enforces the 30-character limit at submission.
Step 4: Build your subtitle
The subtitle is 30 characters, the second-highest weighted search field, and the easiest to change without submitting a new binary.
It should contain a keyword that doesn't appear in your title — you're adding new indexed terms, not repeating existing ones.
Common effective patterns:
- A secondary use case: "Study & Work Sessions" after "Focus Timer: Pomodoro"
- A specific feature: "Daily Streaks & Reminders" after "Habit Tracker: Navi"
- A modifier phrase: "For Students & Remote Work" after "Pomodoro Timer: Focus"
Avoid taglines ("Your productivity companion") — they sound good but add no keyword coverage.
Step 5: Build your keyword field
100 characters. Comma-separated. No spaces after commas. No words already used in your title or subtitle.
Start with the keywords from your research that didn't fit in the title or subtitle. Work from highest-value to lowest until you hit 100 characters. Use every character — a keyword field at 85 characters is leaving 15 characters of potential search coverage unused.
Before finalizing: check for duplicates against your title and subtitle. Remove every word that's already indexed. Replace with new terms from your research list.
Final check: count the characters. If you're at 97, find one more short keyword to fill the remaining 3.
Step 6: Review screenshots
Screenshots don't directly affect keyword ranking but they drive conversion — which affects ranking through behavioral signals. Your screenshot set should be reviewed as part of every ASO pass.
Screenshot 1 is visible in search results without clicking through to the listing. It has the highest conversion impact of any asset on your listing. It should show the core benefit in a single glance, with readable text.
Screenshots 2–5 are seen by users who tapped through to your listing. They should cover the main features in order of importance.
Localization: screenshot text in the user's language outperforms English text in every non-English market. If you've localized metadata for Germany, French, or Japan, localized screenshots compound the effect.
Step 7: Address ratings if below 4.0
If your average rating is below 4.0, fix this before submitting metadata. Ratings affect ranking directly — a low-rated app faces a ranking ceiling that metadata optimization alone can't overcome.
Implement SKStoreReviewRequest to prompt users at the right moment:
- After their 3rd session, task completion, or positive milestone
- After returning following 3+ days of absence
- Never immediately after download, never in response to an error
Apple allows 3 native prompts per user per year. Use them at moments when satisfaction is highest.
Step 8: Submit and record
Submit your updated metadata. Note the exact submission date — this starts your indexing window.
Do not make any further changes for at least 6 weeks. Each metadata update resets Apple's indexing clock. Changing keywords every two weeks means your metadata is perpetually in the "not yet indexed" phase and you never accumulate ranking history.
Step 9: Track positions at week 2, 4, and 6
Using your rank tracker (Astro, AppFollow, ASOdesk):
- Week 2: confirm new keywords are appearing in the index (even at low positions)
- Week 4: check for meaningful position movement on primary keywords
- Week 6: stable evaluation window — compare against your baseline
Keywords that have moved: validated. Keep them.
Keywords with no movement after 6 weeks: too competitive or wrong search form. Replace in the next update.
Step 10: Expand to non-English markets
Once your English metadata is optimized and tracked, non-English markets are the highest-ROI next step.
For each market:
- Set your keyword research tool to the target country
- Research keywords in the local language — don't translate your English list
- Build title, subtitle, and keyword field using the same process above
- Submit localization separately from your English metadata
- Set up per-country tracking in your rank tracker
Priority order for most indie apps: Japan → Germany → France → South Korea → Australia → Brazil → Spain
Each market is independent. The keyword research, metadata, and tracking are all separate. The ranking results are separate. Japanese localization success and English ranking stagnation can happen simultaneously — they don't affect each other.
Step 11: Revisit every 3–6 months
ASO is iterative. After your 6-week evaluation:
- Replace underperforming keywords with new candidates from your research list
- Check whether keyword difficulty has changed for terms you're not targeting yet
- Audit competitors — have they updated their metadata? Are there new keyword gaps to exploit?
- Revisit your subtitle — it can be swapped without a new binary, making it easy to test variations
The apps with the best organic keyword coverage aren't the ones who optimized once. They're the ones who treat metadata as a system to improve continuously.
The process in brief
- Audit — baseline positions, character counts, duplicate check
- Research — keyword volume and difficulty, competitor gaps, competition tiers
- Build title — primary keyword early, 30 chars
- Build subtitle — secondary keyword, 30 chars
- Build keyword field — 100 chars, no dupes, no spaces after commas
- Review screenshots — benefit-led, localized if possible
- Fix ratings — if below 4.0, address before submitting
- Submit — record the date, don't touch for 6 weeks
- Track — check positions at weeks 2, 4, 6
- Localize — repeat process per non-English market
- Iterate — revisit every 3–6 months
Where LocalizeRank fits
Steps 2 and 10 — keyword research and non-English localization — are the most time-intensive parts of the process. Researching one market properly takes 4–6 hours. Most apps need 5–10 markets.
LocalizeRank handles steps 2 and 10 as a done-for-you service: keyword research from App Store data, competitor gap analysis, and paste-ready metadata for title, subtitle, keyword field, and description. Starting at $49 for 5 markets.