App Store Optimization for Indie Developers: The 2026 Guide
A practical ASO guide for solo developers: how store search works, how to pick keywords you can rank for, what to write in each field, and how long it takes.
· · by the ASOnest team
ASO is three jobs: find keywords your app can realistically rank for, put them in the right metadata fields without wasting characters, and measure whether the change worked. Everything else is decoration. For a small app, the highest-return move is almost always targeting lower-volume, low-difficulty long-tail terms instead of the obvious head keyword.
Most ASO advice is written for teams with a growth department. This one assumes you are the developer, the designer, the support inbox and the marketing budget, and that you can spare maybe four hours a month for this.
Good news: four focused hours a month beats twenty unfocused ones, and the gap between an app with deliberate metadata and one without is frequently the difference between a hundred organic installs a month and three thousand.
What App Store Optimization actually is
App Store Optimization is the practice of getting your app to appear — and convert — in App Store and Google Play search results. It splits cleanly into two halves that people constantly conflate:
Visibility. Whether your app appears at all when someone searches a term. This is driven almost entirely by your metadata: which words you use, where you put them, and how competitive those words are.
Conversion. Whether someone who sees you taps install. This is driven by your icon, screenshots, ratings, and the first two lines of your description.
Both matter, but they are different jobs with different tools and different feedback loops. This guide is mostly about visibility, because that is where the arithmetic is unambiguous and where most indie apps leave the most on the table.
How store search actually ranks apps
Neither Apple nor Google publishes a ranking algorithm. Both do publish guidance on how their search works — Apple on App Store search and creating your product page, Google on getting discovered on Google Play search — and a decade of observation across thousands of apps fills in the rest.
On the App Store, the strongest signals are:
- Keyword presence and prominence. Whether the term appears in your app name, subtitle, or the hidden 100-character keyword field — and in roughly that order of weight. Your description is not indexed for ranking.
- Download velocity for that keyword. Not total downloads — downloads that follow a search for that specific term.
- Ratings and reviews. Volume and recency both count. This is the hardest signal for a new app to move and the main reason difficulty scores exist.
- Engagement and retention. Apps that get uninstalled quickly drift down.
On Google Play, the picture shifts:
- Keyword presence across title, short description and long description. Play does index the full description, which is why Play listings read like copy and App Store listings read like a haiku.
- Install velocity and conversion rate from the store listing.
- Ratings, reviews and crash rates. Play is noticeably harsher about technical quality signals.
- Retention, weighted more heavily than on the App Store.
The practical consequence: you cannot write one listing and paste it into both stores. The App Store rewards ruthless compression into 30+30+100 characters. Google Play rewards a naturally written 4,000-character description that mentions your terms two to four times each.
Step 1: Find keywords you can actually rank for
This is where almost every indie app goes wrong, and the mistake is always the same shape: picking keywords by volume.
Say you built a meal planning app. The obvious keyword is recipe app. It has enormous search volume. It is also owned by four apps with six-figure rating counts and eight years of download history. You will not rank for it. Not this year, not with a title change, not with any amount of cleverness.
What you want instead is the intersection of three things:
- Real demand. The term is actually searched. Store autocomplete suggesting it is a decent proxy; a measured popularity score is better.
- Reachable competition. The apps in the current top ten are within an order of magnitude of your rating count.
- Genuine relevance. Your app is a good answer for that search. Ranking for something you do not deliver produces installs that uninstall, which damages the very signals you are trying to build.
A concrete method
- Start with your own listing. Write down the twenty terms you would use to describe your app to a stranger. This is your seed list, and it is usually worse than you think — you are too close to the product.
- Steal from competitors. Find five apps that appear alongside yours in search. Note every keyword they rank in the top twenty for. A competitor sitting at #4 for a term you have never considered has already proved both that the term converts and that a top-ten slot is achievable for an app roughly their size.
- Read your reviews. Your users describe your app in words you would never choose. You call it a “meal planner”; two hundred reviewers call it a “weekly dinner organiser”. One of those has uncaptured search volume.
- Mine autocomplete. Type your core noun into store search and record every suggestion. Then type it with each letter of the alphabet appended. Tedious by hand, instant with a tool.
- Filter by difficulty, then by winnability. Difficulty describes the keyword. Winnability describes the keyword relative to your app. A difficulty-40 term is trivial for an app with 50,000 ratings and impossible for one with 200.
You should end this process with somewhere between fifteen and forty terms worth targeting — not four thousand.
The long tail is not a consolation prize
meal planner at 61 popularity with difficulty 88 is worth nothing to you. weekly menu planner at 24 popularity with difficulty 16 is worth a great deal, because you can actually be first for it.
Ten long-tail terms where you rank #1 to #3 will out-install one head term where you rank #47 by a margin that surprises people the first time they measure it. Position matters far more than volume: the first result in App Store search takes a large multiple of the traffic the tenth takes, and by #20 you are effectively invisible.
Step 2: Write metadata that does not waste characters
The App Store
You get:
- App name — 30 characters. The heaviest-weighted field. Brand plus your single most important keyword phrase.
ReelMeal: Meal PlannerbeatsReelMealand it also beatsReelMeal - Meal Planner, Recipe Organizer & Grocery List(which will be truncated and reads like spam). - Subtitle — 30 characters. Second-heaviest. Use it for a different keyword cluster, not a restatement. Never repeat a word that already appears in the name.
- Keyword field — 100 characters, hidden. Comma-separated, no spaces after commas, singular forms only. This is the field people waste most.
- Promotional text — 170 characters. Not indexed. Changeable without a release. Use it for news.
- Description — 4,000 characters. Not indexed for ranking on the App Store. Write it for conversion.
Rules for the keyword field that are worth internalising:
- Never repeat a word that appears in your name or subtitle. Apple already has it. Repeating it burns characters for nothing.
- Drop spaces after commas.
recipe,menu,grocerynotrecipe, menu, grocery. Each space is a wasted character. - Do not include your category name or the word “app”. Apple handles both.
- Use singulars. Apple matches plurals automatically in most locales.
- Do not use competitor brand names. It violates the App Review Guidelines and gets listings rejected.
- Apple builds combinations across all your fields.
mealin your keyword field plusplannerin your subtitle makes you eligible formeal plannerwithout either field containing the phrase.
That last point is the single highest-leverage thing in App Store metadata and the most commonly missed.
Google Play
You get:
- Title — 30 characters. Same logic as the App Store name.
- Short description — 80 characters. Indexed, and displayed prominently. High value.
- Full description — 4,000 characters. Indexed. This is the big structural difference.
For the long description, aim for each target keyword appearing two to four times across natural sentences. Play’s spam detection is real, and stuffing produces worse results than not trying. Write for a human, then check your term frequency.
Step 3: Measure whether it worked
Ship one meaningful metadata change at a time and note the date.
- App Store: re-indexing typically takes one to three days after your release goes live.
- Google Play: expect anywhere from a few days to two weeks.
Rank movement lags indexing by another two to four weeks while the store accumulates conversion data on the new listing.
This lag is why “I changed my subtitle yesterday and nothing happened” is not a finding. It is also why changing five things at once is a mistake: when the numbers move you will have no idea which change caused it.
Track a fixed set of keywords daily, mark your releases on the timeline, and judge each change after four weeks.
What to do in your first month
If you have four hours, spend them like this:
Hour one — audit. Count the characters you are actually using in each field. Most apps are using 60 of their 100 keyword characters and repeating a word between title and subtitle. Fixing just that is often worth more than everything else on this list.
Hour two — research. Build a list of 20–40 candidate keywords using the method above. Filter hard on difficulty.
Hour three — write. Draft a new name, subtitle and keyword field. Check for duplicates across fields. Check the combinations you become eligible for.
Hour four — set up measurement. Put your target keywords into daily rank tracking before you ship, so you have a baseline. Then ship.
Then wait a month. Genuinely wait. The most common failure mode after this point is impatience — reverting a good change after nine days because the numbers had not moved yet.
What not to bother with
- Buying reviews or installs. Both stores detect it, and the penalty is worse than the problem.
- Keyword stuffing your name. Truncated in search results, reads as spam, converts badly.
- Chasing head keywords. Covered above, but worth repeating: it is the single most common waste of an indie developer’s ASO time.
- Rewriting everything monthly. Each rewrite resets your measurement baseline. Change deliberately, then hold.
- Copying a big app’s listing. Their metadata is optimised for an app with their rating count. Yours is not that app.
The honest summary
ASO for a small app is not complicated, it is just unforgiving of guesswork. The three things that matter are picking reachable keywords, spending your characters without waste, and measuring on a timescale that matches how the stores actually behave.
If you want the measurement part handled — real search volume, difficulty scored against the live top ten, and daily rank tracking on both stores — ASOnest starts at $10 a month, with a 7-day free trial and no card.
Frequently asked questions
Metadata changes are usually re-indexed within one to three days on the App Store and within a few days to two weeks on Google Play. Rank movement follows over the next two to four weeks as the store gathers conversion data on your new listing. Judge a change after a month, not after a weekend.
Store search still drives the majority of organic app discovery, and it is the only acquisition channel where you can compete on craft rather than budget. For an indie developer without a paid acquisition budget, it remains the highest-leverage marketing work available.
You can do a rough version by hand using store autocomplete and manual searches. What you cannot do by hand is measure search volume, estimate difficulty, or track a hundred keyword positions daily across several countries. That is where a tool starts paying for itself.