# App Store keyword research in 2026: a step-by-step guide

> A repeatable App Store keyword research process: build a seed list, measure rank, demand and difficulty in each market, and pick the words to target.

- URL: https://asomaster.app/blog/app-store-keyword-research/
- Published: 2026-10-27
- Updated: 2026-10-27
- Category: Keyword research
- Publisher: ASOMaster (Cressu OÜ), https://asomaster.app/

## Key takeaways

- App Store search reads the app name, subtitle and keyword field: about 160 characters per localization.
- Measure rank, demand and difficulty for every phrase in every market, and keep estimates and Apple Ads popularity in separate columns.
- Phrases where you rank 11 to 30 with real demand are usually the cheapest wins.
- Pick words that cover several valuable phrases, because search combines words across fields.
- Ship changes with a release, then compare ranks after one and two weeks.

App Store keyword research decides which 20 or so words your name, subtitle and keyword field carry, out of the hundreds you could use. Good choices share three traits: people type them, they describe what your app does, and the apps in the current top ten can be beaten. This guide is an eight-step process you can repeat every few months, with a worked example for Tidepool, a fictional sleep-sounds app.

The steps are the same whether you use a spreadsheet, an ASO tool or a mix of both. Where it helps, you'll see how a step looks in ASOMaster, but nothing here depends on a particular tool.

## Which fields does App Store search read?

App Store search reads three fields you write: the app name (30 characters), the subtitle (30 characters) and the hidden keyword field (100 bytes). Your developer name is searchable too. Promotional text and the description are not used for App Store search, so keyword work happens in about 160 characters per localization.

Apple documents the name and subtitle limits in its [app information reference](https://developer.apple.com/help/app-store-connect/reference/app-information/app-information) and the keyword field in its [platform version reference](https://developer.apple.com/help/app-store-connect/reference/app-information/platform-version-information):

| Field | Limit | Used for search |
|---|---|---|
| App name | 30 characters | Yes, and it carries the most weight |
| Subtitle | 30 characters | Yes |
| Keyword field | 100 bytes, comma separated | Yes, never shown to users |
| Promotional text | 170 characters | No |
| Description | 4,000 characters | Not for App Store search |

Apple also notes that your app is already searchable by its name and your developer name, so repeating those in the keyword field wastes space. Apple's own overview of [how App Store search works](https://developer.apple.com/app-store/search/) adds that relevance and user behaviour (downloads, ratings, engagement) both play a role. You control the text; you influence the behaviour only indirectly.

That gives you a budget of roughly 160 characters of searchable text per localization. Keyword research is the job of spending that budget well.

## Step 1: write down what the app is for, in the user's words

Start with a short brief, not a list of words. Two or three sentences answering: who is this for, what problem do they have, and what would they type when they have it?

For Tidepool:

> Tidepool plays nature sounds and gentle stories to help people fall asleep. Most users are adults with trouble sleeping and parents settling a baby. They look for it at night, often in a hurry, typing short phrases.

This brief is the test for every later decision. When you find a big keyword like "meditation", the brief tells you whether people searching it would be happy to land on your app. If they wouldn't, ranking for it won't produce installs, and low conversion can hurt you over time.

## Step 2: build a seed list from four sources

Aim for 40 to 80 candidate phrases. Quantity matters less than variety at this stage.

1. **Your own vocabulary.** Features, use cases, problems. For Tidepool: sleep sounds, white noise, rain sounds, ocean waves, brown noise, bedtime stories, baby sleep, fall asleep fast, insomnia.
2. **The App Store's search suggestions.** Type the start of each seed in the App Store search field on an iPhone and note the completions. They are a rough signal that people type those phrases.
3. **Apps that rank for your core phrases.** Look at the names and subtitles of the top ten for each core phrase. Patterns repeat: if seven of ten top apps for "sleep sounds" mention "white noise", that pairing matters in this niche.
4. **Reviews.** Your reviews and competitors' reviews are written in customers' words. "Helps my toddler nap" suggests "toddler sleep" or "nap sounds" that you would never brainstorm yourself.

Write phrases the way people type them: lower case, short, no punctuation. Keep singular and plural variants for now; you'll merge them later.

## Step 3: check where you rank today

For every phrase, record your current position in search, per market you care about. Doing this by hand is slow but possible for a handful of phrases: search on a device set to that storefront and count. Note that results differ by country, so a rank in the US says nothing about your rank in Germany.

A first rank check for Tidepool in the US might look like this:

| Phrase | Rank (US) |
|---|---|
| sleep sounds | 2 |
| white noise | 8 |
| rain sounds | 19 |
| ocean waves | 1 |
| brown noise | 24 |
| baby sleep | 3 |
| bedtime stories | not in top 200 |
| insomnia | not in top 200 |

Ranks tell you where you already have relevance. A phrase where you sit at 11 to 30 is often the cheapest win in your whole list: Apple already considers you relevant, and a small change to your name, subtitle or keyword field can move you into the top ten.

![A rankings board with keywords down the side and markets across the top, each cell showing rank, movement, difficulty, volume and popularity](https://asomaster.app/shots/01-rankings-grid-light-1600.webp)
## Step 4: measure demand and difficulty

Rank alone doesn't tell you whether a phrase is worth anything. You need two more numbers per phrase and market.

**Demand.** How many people search the phrase. Apple doesn't publish search counts. The closest real signal is Apple Ads popularity, per keyword and country: Apple Ads shows search popularity as a 1–5 level in its interface; the finer score available through the API is a relative 1–100 index (ASOMaster shows it on its 0–100 scale), not a search count. Everything else is an estimate: tools model demand from what the search results look like (how many apps match the phrase, how many ratings they have). Estimates are useful for ranking phrases against each other; they are not search counts.

**Difficulty.** How hard it is to get into the top ten. A common proxy is the strength of the apps already there, mostly their rating counts. A top ten full of apps with hundreds of thousands of ratings is hard; a top ten with a few hundred ratings each is open.

Keep the two kinds of number apart. If you have Apple Ads popularity for a phrase, label it as real; if you have a model's estimate, label it as an estimate. Mixing them in one column leads to bad decisions. In ASOMaster the estimate and the real number sit in separate columns with different symbols for exactly this reason; the [metrics guide](https://asomaster.app/docs/metrics/) explains each one, and [real popularity](https://asomaster.app/docs/popularity/) covers connecting Apple Ads.

Adding demand and difficulty to the Tidepool list:

| Phrase | Rank | Volume (estimate) | Difficulty (estimate) | Popularity (Apple Ads) |
|---|---|---|---|---|
| sleep sounds | 2 | 71 | 62 | 54 |
| white noise | 8 | 66 | 37 | 61 |
| rain sounds | 19 | 48 | 74 | 38 |
| brown noise | 24 | 41 | 39 | 35 |
| bedtime stories | none | 52 | 89 | 47 |
| fall asleep fast | 71 | 22 | 72 | 19 |
| insomnia | none | 45 | 81 | 40 |

## Step 5: sort the list into four groups

Now every phrase has rank, demand and difficulty. Sort each one into a group:

1. **Keep.** You rank in the top ten and demand is real. Protect these: don't remove the words that earn them. For Tidepool: sleep sounds, white noise, ocean waves, baby sleep.
2. **Push.** You rank 11 to 30, demand is real and difficulty is moderate. These are your best targets. Tidepool: brown noise (24, difficulty 39) and rain sounds (19, though difficulty 74 makes it harder).
3. **Long shots.** You don't rank, demand is high, difficulty is high. Insomnia and bedtime stories are here. They are worth a place only if you have room left and the phrase matches your app very closely.
4. **Drop.** Demand is near zero, or the phrase doesn't match what the app does. "Fall asleep fast" has an estimate of 22 and popularity of 19: some demand, but low. Keep it only if its words are already in your listing for other reasons.

The order of priority is usually push, keep, long shots. Most apps gain more from moving five phrases from rank 15 to rank 6 than from one heroic attempt at a phrase dominated by the category leaders.

## Step 6: combine words, not phrases

App Store search matches words across your name, subtitle and keyword field, so you don't need every phrase written out in full. If "brown", "noise" and "sounds" appear somewhere in your searchable text, you can be found for "brown noise", "noise sounds" and other combinations of those words.

This changes how you read your list. Instead of asking "which phrases fit?", ask "which words cover the most valuable phrases?". For Tidepool:

- "noise" serves white noise, brown noise and pink noise.
- "sounds" serves sleep sounds, rain sounds, ocean sounds and nature sounds.
- "baby" serves baby sleep, baby sounds and baby white noise.

A word that covers three valuable phrases deserves a place more than a word that covers one. The guide on [writing the name, subtitle and keyword field](https://asomaster.app/blog/app-store-name-subtitle-keyword-field/) covers how to place these words, since the name carries the most weight and the keyword field the least visible.

## Step 7: repeat per market

Everything above was for the US. Each storefront has its own search results, its own competitors and, most of the time, its own language. A German user looking for white noise types "weißes Rauschen"; a Japanese user types "ホワイトノイズ". Translating your English list word by word misses many of these phrases, and sometimes produces terms nobody uses.

The practical approach:

1. Decide which markets matter. Start with where you already get downloads, then add markets with a large audience and weaker competition.
2. For each keyword, find the phrase locals search, not the dictionary translation. Check suggestions and the top apps in that store.
3. Run the same rank, demand and difficulty check per market.

This is where a tool saves the most time: ASOMaster writes the local phrase for each market when you add a keyword and checks it in that store, across 54 App Store markets. The [localization guide](https://asomaster.app/blog/localizing-app-keywords/) goes deeper on why translation isn't enough.

![One keyword shown across several markets with its local phrase and rank in each](https://asomaster.app/shots/07-keywords-by-market-light-1600.webp)
## Step 8: change the listing, then measure again

Research is only useful once it changes your listing. After you've chosen your target words:

1. Draft the new name, subtitle and keyword field for your main market.
2. Check every keep phrase is still covered. It's easy to remove a word that was earning a top-three rank.
3. Ship it with your next app update. Name, subtitle and keyword field changes go live with a new version; promotional text can change at any time but doesn't affect search.
4. Note the date. Rankings take time to settle after a release, often a few days to a couple of weeks.
5. Check ranks again after one and two weeks, and compare against your baseline.

Don't judge a change on one day's ranks. Search positions move for many reasons, including competitors' updates and seasonal demand. Look at the direction across your whole push group rather than at a single phrase.

## A worked example: one round for Tidepool

Putting it together, Tidepool's first round might look like this.

**Before:**

- Name: Tidepool: Sleep Sounds
- Subtitle: White noise, rain & rest
- Keyword field: ocean,waves,fan,noise,baby,brown,nature,relax,calm,lullaby,focus,mixer

**Findings:** "rest", "relax" and "calm" have low demand in this niche and cover nothing in the push group. "Brown noise" is already covered by words in the keyword field but sits at 24, so it needs stronger placement. "Bedtime stories" has real demand and Tidepool has stories, but the words appear nowhere in the listing.

**After:**

- Name: Tidepool: Sleep Sounds
- Subtitle: Brown Noise & Bedtime Stories
- Keyword field: ocean,waves,fan,rain,baby,white,nature,lullaby,insomnia,nap,toddler,pink

The subtitle moves "brown noise" into a heavier field and adds "bedtime stories". The keyword field drops the low-value words and adds "insomnia" (a long shot), "nap" and "toddler" (from reviews) and "pink" (pink noise). "Noise", "sounds" and "stories" are already covered by the name and subtitle, so they don't need repeating.

Is this guaranteed to work? No. It's a reasoned bet built on measurements. Two weeks later you might see brown noise move from 24 to 9 and bedtime stories enter at 28, while rain sounds doesn't move. That tells you what to try in the next round.

## How often should you redo keyword research?

Run a full round every two to three months, with a quick rank check every week or after each release. That pace leaves time for ranks to settle after a change while catching shifts in competition and demand before they cost you installs. Some events justify an earlier round. Repeat sooner when:

- you ship a major feature that opens a new use case,
- a large competitor enters your niche or changes its listing,
- you expand to new markets,
- your search downloads drop and ranks show where.

## What are the most common keyword research mistakes?

The five that cost the most are chasing the biggest words, repeating words across fields, removing words that already rank, treating estimates as search counts, and researching one market then copying the result everywhere. Each one wastes part of the roughly 160 searchable characters you get per localization.

- **Chasing the biggest words.** "Sleep" alone is enormous and dominated by the category leaders. Unless you're already near the top, it's a poor use of your name.
- **Repeating words across fields.** Once a word is in the name or subtitle, repeating it in the keyword field gains nothing.
- **Ignoring what already works.** Always list your current top-ten phrases before changing anything.
- **Treating estimates as facts.** Model numbers are good for comparing phrases with each other. Use real popularity when you can get it, and say which number you used.
- **Researching one market and copying it everywhere.** Search behaviour, competition and language differ by country.

## Summary

1. Write a short brief in your users' words.
2. Collect 40 to 80 candidate phrases from your vocabulary, search suggestions, top apps and reviews.
3. Check your rank for each, per market.
4. Add demand and difficulty, keeping estimates and real popularity apart.
5. Sort into keep, push, long shots and drop.
6. Choose words that cover the most valuable phrases.
7. Repeat per market, in each market's language.
8. Change the listing, wait, and measure again.

If you'd rather not run the measurements by hand, ASOMaster runs the rank, difficulty and volume checks in every market from your computer (Mac or Windows), and Listing Studio drafts listing options from them. See the [App Store keyword tracker](https://asomaster.app/app-store-keyword-tracker/), [pricing](https://asomaster.app/pricing/) or the [Listing Studio overview](https://asomaster.app/#studio).
