Apple’s App Store search is still heavily metadata-driven. Per App Store Connect reference docs, the Keywords field accepts up to 100 bytes of content—comma-separated terms that help determine where your app can appear in search. Waste those bytes on duplicates, category words, or brand vanity, and you silently forfeit rankings competitors will take.
This 2026 guide walks through a practical research workflow for indie developers and growth marketers: seed generation, competitor mining, byte budgeting, metadata mapping, and ongoing refresh cadence.
Apple indexes more than the keyword box. Align research with every indexed surface:
| Field | Limit (typical) | Search role |
|---|---|---|
| App name | Character-limited; highly visible | Strong relevance + conversion |
| Subtitle | Short supporting line | Relevance + clarity |
| Keywords | ≤100 bytes | Hidden relevance boost |
| Promotional text | ≤170 characters | Does not affect search ranking (use for offers/news) |
| Description | ≤4000 characters | Product page + web discovery; not a keyword dump |
| Custom Product Pages | Unique URLs + creatives | Can be assigned keywords so the CPP appears in search for those terms |
Apple’s public guidance: you are already searchable by app name and company name, so do not waste keyword bytes repeating them. Do not use other apps’ or companies’ names. Irrelevant, trademarked, celebrity, or offensive terms are common rejection causes.
For English ASO, one character ≈ one byte for basic Latin letters. Non-Latin scripts and some symbols can consume multiple bytes—always count in App Store Connect’s editor or a UTF-8 byte counter when localizing to Japanese, Korean, Chinese, Arabic, etc.
Apple’s product-page guidance recommends maximizing unique words by avoiding:
run,jog not run, jog) — spaces inside multi-word phrases are fine (Real Estate)Example compression:
Bad: fitness, fitness app, workouts, workout, gym, fitness tracker
Better: fitness,workout,gym,tracker,hiit,steps,cardio
Group opportunities into intents:
invoice, interval timer)freelancer, postpartum)offline maps, travel sim)ocr, csv export)Write 3–5 “jobs to be done” sentences first. Keywords without intents become random lists.
Sources that stay grounded:
Aim for 150–300 raw candidates before scoring.
You can learn from competitors without copying their trademarks into your keyword field.
Do:
Don’t:
Build a spreadsheet with columns: term, intent bucket, evidence (review quote / autocomplete), estimated competition, relevance (1–5), decision (name / subtitle / keywords / CPP / reject).
You do not need enterprise tooling on day one. Score each term 1–5 on:
photo) vs mid-tail (raw photo editor)Prioritize mid-tail terms you can win and convert. A #50 rank on a huge head term often loses to a #5 rank on a precise phrase that downloads.
A 100-byte English list rarely ports 1:1. For each locale:
DE compound nouns, JP loanwords, and PT-BR variants can change byte cost dramatically—budget per locale, not by copying EN.
| Trigger | Action |
|---|---|
| Major feature ship | Add feature terms; demote unused ones |
| Seasonal demand | Swap via CPP + promo text; keep evergreen keywords stable |
| Ratings / review themes | Promote phrases users already call you |
| Algorithm / UI store changes | Re-check Discover vs Search mix in Analytics |
| CPP keyword assignment updates | Live keyword assignment can ship without full resubmit in many cases—verify in Connect |
Avoid weekly thrash. Metadata changes need time to settle; change when evidence says so.
Discovery without conversion wastes spend. For every priority keyword cluster:
ASO is a loop: keywords earn impressions; screenshots earn installs; retention and ratings earn more rankings.
Name: [Brand] [Primary job]
Subtitle: [Audience] · [Differentiator]
Keywords: term1,term2,term3,... # exactly 100 bytes, no trailing waste
CPP A: intent cluster "budget couples" → matching screenshots
CPP B: intent cluster "receipt scan" → matching screenshots
Treat the App Store Connect keyword field like a scarce inventory slot: research intents, mine competitors for generics (not brands), pack 100 bytes without vanity duplicates, and wire winning terms to screenshots and Custom Product Pages. That disciplined loop—not a longer description—is what moves indie apps in 2026 search.