App Store keywords for indie apps: how I picked ours in 53 countries (2026)
Published: 2 October 2026. 8 min read
In September I scored 1,856 keywords across 53 App Store storefronts for ClipUGC, our iPhone app. The biggest lesson wasn't a keyword. It was that the US, the one store I'd written the whole listing for, was the worst place for us to compete. Here's how I pick keywords now, the real numbers behind it, and where Astro, the Mac app I use for this, does each step.
The three fields Apple actually reads
Apple says search results depend on text relevance, meaning matches on your title, subtitle, keywords and primary category, plus how people behave: downloads, ratings and reviews. You can't write your way to downloads. You can write the text. That's three fields.
| Field | Limit | Notes |
|---|---|---|
| App name | 30 characters | Shown in search results |
| Subtitle | 30 characters | Shown below the name across the App Store |
| Keywords | 100 characters | Hidden. Terms split by commas, no spaces |
Apple's own pages add a few rules that save characters. Separate terms with commas and no spaces. A space inside a phrase is fine, so "real estate" counts as one term. Don't repeat words that are already in your name, subtitle or category. Skip plurals of words you already have, since Apple treats them as duplicates. Skip generic words like "app", filler like "the", and special characters.
So every word goes in exactly one field. If "video" is in your subtitle, it doesn't go in the keyword field too. You only get 100 characters there. Spend them on words you haven't used yet.
How I read popularity and difficulty
Astro shows two numbers for every keyword in every store. Popularity comes straight from Apple's search advertising data. Difficulty is Astro's own score for how hard it is to get into the top 10. Astro's docs suggest popularity above 25 and difficulty below 75 as a starting filter.
I use a stricter cut: popularity 20 or more, difficulty 60 or less. A new app has no download history to lean on, so I'd rather sit on page one of a mid-size word than page nine of a huge one.
Two things the numbers won't tell you. Popularity 5 is Apple's floor. It means "below the reporting threshold", not zero, so a 5 could be dead or just small. And difficulty scores the competition's metadata. It can't see a giant app that ranks anyway. In the UK, "ai video generator" scored difficulty 50, which looks fair. Grok was number one with 134,114 ratings. Always open the live top 10 before you commit.
The US was my worst storefront
Our main term is "ai video generator". Same word, a very different fight depending on the store. These are popularity and difficulty from the same pull, on the same day.
| Storefront | Popularity | Difficulty |
|---|---|---|
| United States | 71 | 71 |
| United Kingdom | 71 | 50 |
| Netherlands | 68 | 41 |
| Norway | 67 | 36 |
| New Zealand | 62 | 21 |
| Croatia | 60 | 23 |
| China mainland | 60 | 15 |
The UK has the same demand as the US with a much easier field, at least on paper. Croatia, New Zealand and China keep most of the demand at a third of the difficulty or less. I'd picked every word in our old listing against US data, because that's where everyone assumes the money is.
Worked example: one word, two meanings
Our product is literally named after the word "ugc". In the US it scored popularity 51 and difficulty 59, and we ranked 64th. Not great, not hopeless. Then I looked at who ranked above us: SideShift, JoinBrands, UGC Roster, Billo, Kale, BRANDZ, Insense. Every one is a gig-work app for creators who want paid brand deals.
Those people want a job, not software. Across all the searches I cared about, four of the five apps that showed up most often were gig-work apps. Ranking first there would bring me visitors who leave.
Outside the US the same word means what I want it to, and it's cheap. We already ranked in several stores without trying, with no local listing at all.
| Storefront | Popularity | Difficulty | Our rank |
|---|---|---|---|
| Belgium | 58 | 9 | 168 |
| Canada | 45 | 23 | 29 |
| Turkey | 40 | 9 | not ranked |
| Germany | 34 | 15 | 103 |
| Netherlands | 34 | 9 | 178 |
| Norway | 28 | 9 | 26 |
| Finland | 25 | 7 | 140 |
So the call split by store. I dropped "ugc" from the US listing and kept it everywhere else. One keyword, two decisions.
The same check killed an idea I liked. I scored 54 industry phrases, things like "real estate video", "course creator" and "app marketing". 49 of them came back at popularity 5. People on the App Store type tool names, not use cases. Those phrases do get searched on Google, so they live on our website instead of in the store.
Where Astro does each step
This is the loop I run. Each step is one screen in Astro. It also has a local MCP server, in beta, so Claude, Cursor or VS Code Copilot can read the same data. That's how I pulled the dataset in this post, through the MCP instead of clicking through 53 stores.
-
1
Collect candidates
Add a few seed words, then paste a competitor's App Store link into Suggestions. Astro lists the words that app ranks for, with popularity and difficulty next to each.
-
2
Score each store
Add the same list to every store you sell in. Astro covers more than 60. This is the step that showed one word at difficulty 71 in the US and 15 in China.
-
3
Read foreign words
Hover a keyword and the DeepL integration shows its English translation. Handy when a suggestion comes back as ai動画 and you don't read Japanese.
-
4
Check the real top 10
Open Apps in Ranking to see who holds the spot. I look at rating counts. Slovakia "ai video" was 61/17 with a top-10 median of 85 ratings. That's an opening.
-
5
Pick per store
Keep what passes the filter and has the right intent. Best word in the name, next in the subtitle, the rest in the keyword field, no repeats.
-
6
Track weekly
Astro refreshes every keyword every 24 hours while it's running and keeps a rank chart per word. I read it once a week. Daily moves are mostly noise.
Localizations give you more fields, carefully
Apple tells you to localize your keywords for each market, and you can translate the name too. Each language you add carries its own keyword field. Apple's localizations reference lists which languages each storefront supports. Canada has English (Canada) plus French (Canada). Belgium has English (U.K.) plus Dutch and French. Norway has English (U.K.) plus Norwegian. Germany has German plus English (U.K.).
English (U.K.) is the default language in a lot of stores: Ireland, South Africa, Singapore, Croatia and Slovakia among them. Astro's public localizations page counts it in 172 countries. So a real en-GB listing, written for those markets instead of copied from the US one, was the most valuable single localization on my list.
What Apple doesn't document is exactly how search weighs a store's second language. So I don't count it as guaranteed extra space. I treat it as a test and check the rank in that store a few weeks later.
Mistakes I made or nearly made
Writing for the US only. Covered above. It cost me the cheapest wins in the whole dataset.
Trusting a word because my product is named after it. "ugc" was the obvious keyword and the wrong one in our biggest market.
Reading difficulty as a promise. A score of 50 with Grok at number one isn't a 50.
Chasing someone else's brand. "character ai" is popularity 74 in New Zealand at difficulty 19. It looks like a gift. It's people looking for the Character.AI chatbot, and they don't want a video tool. I left it alone.
Changing things every week. I changed our name and subtitle on 3 September and froze the listing until 5 November. Every edit restarts the clock, and two changes at once make the result impossible to read.
Not checking my own name. Our rank for "clipugc" should be 1 in every store. In Kazakhstan it was 2. If you're not first for your own brand in a store, you have no local signal there and nothing else will rank.
My checklist before any metadata change
I go through this before I touch App Store Connect.
- Name and subtitle are 30 characters or less, the keyword field 100 or less
- Keyword field uses commas with no spaces, no plurals of words I already have, no "app"
- No word appears in more than one of name, subtitle, keywords and category
- Every keyword was scored in each store I sell in, not just the US
- Popularity 20 or more and difficulty 60 or less, or a written reason for the exception
- I opened the live top 10 for every main keyword and the apps there are tools like mine
- I rank first for my own app name in every store
- Only one thing changes this time, and the date is written down
- Rank check booked for the same weekday next week
Ranking gets the visit. The page gets the install.
Keywords only get you into the results. Then someone looks at your icon, screenshots and preview and decides in a few seconds. Apple counts downloads, ratings and reviews in search too, so a page that converts also helps you rank.
The other half of my plan is short vertical videos on TikTok and Reels that send people to the store link. That's the thing I build. With ClipUGC you paste your App Store link and get three free UGC videos of an AI influencer talking about your app. After that it's $14.99 a month on the Professional plan.
Astro is a paid Mac app, $108 a year, and every keyword number on this page came out of it. Links to Astro here may be affiliate links.
Where this comes from
The App Store rules above were read on Apple's own pages, and every Astro feature on Astro's own site, on 2 October 2026. The keyword numbers are from our own Astro data, pulled on 3 September 2026.