Back to Blog
ASO Tips · 9 min read

15 ASO Tips for Indie Developers in 2026 (Beyond Keywords)

Keyword strategy gets an app found. These 15 ASO tips cover what makes it convert: screenshots, ratings, release cadence, localization, and Custom Product Pages.

Keyword optimization decides whether your app shows up in a search. It does not decide whether the person who finds it taps install. That second decision runs on a different set of levers: the screenshots in the carousel, the star rating next to your icon, how recently you shipped an update, whether your listing reads like it was translated or written for the reader, and whether every visitor lands on the same generic page regardless of how they got there. This post covers 15 concrete ASO tips that sit outside keyword strategy. For the keyword side, see our guide to ASO keyword optimization strategies. Everything below assumes your keywords are already doing their job and focuses on what happens after a user lands on your page.

Screenshots and creative testing

Screenshots are the first thing most visitors actually look at, before they read a word of your description. A carousel that leads with a plain feature list loses people who are deciding in seconds, not reading a spec sheet. Lead with the outcome the app delivers, not a UI screenshot with a caption bolted on. If your first frame requires explanation, it is not doing its job.

Test one variable at a time. Apple's Custom Product Pages and Google Play's store listing experiments both let you run a screenshot set against a control, but a test that changes the headline, the order, and the background color at once cannot tell you which change moved the number. Change one frame, run it long enough to clear a reasonable sample, then move to the next variable.

Device frame accuracy matters more than most teams assume. A screenshot that shows the wrong device silhouette for the store it is submitted to reads as generic stock art rather than your actual product. Check exact pixel dimensions per device class before you export, our screenshot size reference covers the current spec for every required size on both stores.

The icon and the first screenshot do different jobs and get tested differently. The icon has to work at a tiny size next to a dozen competitors in a search grid, so legibility at 60 pixels matters more than detail. The first screenshot has the whole width of the device to work with and gets seen after the tap already happened once, in the app switcher or a shared link. Testing them together in one experiment makes it hard to know which one moved the number when a result changes.

Preview videos are worth the production time only if the first three seconds hold up on their own. Autoplay is silent on both stores by default, so a video that opens on a talking head or a logo animation loses most of its potential audience before the sound would have mattered anyway. Open on the same outcome-first frame you use for your lead screenshot, then use the extra seconds a screenshot cannot give you: a real interaction, not a montage of feature callouts.

Ratings and review response

Both stores treat ratings as a ranking and conversion signal, and both give you a native prompt to ask for one. Apple's StoreKit review prompt is rate limited by the system itself, historically capped at three prompts per app per 365 days regardless of how many times your code calls it, so timing the call matters more than calling it often. Trigger it after a moment of clear success, not on first launch or right after a crash.

Google's In-App Review API works differently. Google does not publish an exact display quota, and the API itself decides whether to show the prompt on any given call. Treat it the same way: call it after a positive moment, and do not assume every call results in a visible prompt.

Responding to reviews is the part most indie teams skip, and it is free. A short, specific reply to a negative review, especially one that names a fix and a timeline, is visible to every future reader of that review, not just the original poster. It will not undo a low star rating, but it changes what a prospective user reads directly underneath it.

Response speed matters for the same reason it matters in support tickets: a review that got a reply within a day reads as an active team, and a review that sat unanswered for a year reads as an abandoned one, even if both apps are equally maintained under the hood. If you cannot answer every review, prioritize the ones with a specific, fixable complaint over the ones that are just a low score with no text. Those are the replies most likely to be read by the next visitor who scrolls past that exact complaint.

Release cadence as a freshness signal

Neither store publishes an exact algorithm for how update recency affects ranking. What is documented and testable is more indirect: both stores surface "recently updated" filtering and sorting in some browse contexts, and a stale changelog is a visible signal to any user who checks it before installing. An app that last shipped eight months ago reads as unmaintained even if it works fine.

A cadence you can sustain beats a burst you cannot. Shipping every two weeks for a month and then going quiet for a quarter is worse for this signal than a boring, predictable monthly release with a changelog that says something real. "Bug fixes and performance improvements" on every entry tells a reader nothing and reads the same as no changelog at all.

Small releases count. A cadence signal comes from the date on the last update, not the size of the diff. A one-line copy fix shipped this week is a more current signal than a major rewrite that shipped six months ago, so there is no reason to hold a ready fix back just because it feels too small to count as a release.

App description copy for readers who scroll past the fold

Most visitors never read the full description, but the ones who do are further along in deciding, and the copy either closes that decision or loses it. The first two lines carry the most weight because they show before a "more" tap on both stores. Lead with the specific problem the app solves and who it solves it for, not a list of every feature it happens to have.

Write for the reader who is already convinced enough to keep reading, not the reader who bounced at the screenshots. That means concrete detail: what data it needs, what it costs, what happens after the free tier ends, rather than restating the value proposition a second time in different words. A description that repeats the headline in paragraph form wastes the one part of the listing built for depth.

Localization as a conversion lever, not a translation checkbox

Localization as a conversion lever, not a translation checkbox

A machine translated listing reads as machine translated to a native speaker in the first sentence, and that impression costs you the tap before your screenshots even get a chance. Localization done for ASO means the headline, the screenshot copy, and the description are written for that market, not translated word for word from the English source. We cover the layout side of this in detail, including which languages need extra room and which need less, in our text expansion data across all 41 locales.

Prioritize by opportunity, not by the number of countries a language covers. A market where you already have organic traffic and no localized listing is a faster win than a market you have never touched. Check your existing analytics by country before you decide which language to localize next.

Localized screenshots need the same layout discipline as the description. A headline that fit in two lines in English can wrap to three in German or overflow a button in Polish, which is a design problem, not a translation problem. Right-to-left languages mirror the whole layout, not just the text direction, and CJK scripts usually need less horizontal room but more attention to font weight at small sizes. Plan the worst case into your template instead of discovering it locale by locale after submission.

Custom Product Pages for segment-specific conversion

A single generic product page has to work for every visitor, whether they arrived from a broad keyword, a paid campaign, or a link in a review article. Custom Product Pages let you build a variant tuned to a specific audience and route traffic to it, so a user who clicked a "budget tracking" ad sees screenshots about budget tracking, not your full feature set. We cover how many variants are worth building, and when adding a fifth one stops paying for itself, in our CPP variant count guide.

Match the variant to the traffic source, not to an internal feature you want to promote. The most common mistake here is building variants around what the team is proud of shipping rather than around what each traffic segment actually searched for or clicked on to get there.

Where to focus first

LeverEffortSignal it moves
Screenshot lead frameLowTap-through from search results
Review responseLowTrust for readers of existing reviews
Rating prompt timingLowAverage star rating
Changelog qualityLowPerceived maintenance, install confidence
Localized listing copyMediumConversion in that market
Custom Product Page variantMediumConversion by traffic source
Release cadenceHighFreshness over months, not one release

The 15-tip checklist

  1. Lead your screenshot carousel with the outcome, not a labeled UI panel.
  2. Test one screenshot variable at a time, not a full redesign against a control.
  3. Match device frame and pixel dimensions exactly to each store's current spec.
  4. Trigger the native rating prompt after a clear moment of success, not on first launch.
  5. Expect Apple's system prompt to be rate limited regardless of how often your code calls it.
  6. Do not assume every call to Google's In-App Review API shows a visible prompt.
  7. Reply to negative reviews with a specific fix and timeline, not a generic apology.
  8. Keep a changelog readers can act on, skip the generic "bug fixes" entry.
  9. Ship on a cadence you can sustain for a year, not a burst you cannot repeat.
  10. Localize copy for the market, do not machine translate the English source.
  11. Prioritize localization by where you already have organic traffic, not by country count.
  12. Build Custom Product Page variants around traffic sources, not internal feature pride.
  13. Route paid and referral traffic to the variant that matches what they clicked on.
  14. Check analytics by country before committing engineering time to a new locale.
  15. Revisit this list quarterly. What moved the needle last year will not stay constant.

FAQ

What is the difference between ASO tips and ASO strategy?

ASO strategy usually refers to the keyword layer: title, subtitle, and keyword field decisions that determine what your app is found for. ASO tips in this post cover the conversion layer: what happens after a user finds your listing, including screenshots, ratings, release cadence, localization, and Custom Product Pages.

How often should indie developers update their app for ASO?

Neither Apple nor Google publishes an exact cadence requirement. A predictable monthly release with a real changelog performs better for the freshness signal than an irregular burst of updates followed by months of silence.

Does responding to app store reviews actually help ASO?

It does not change your star rating directly, but a specific, helpful reply is visible to every future reader of that review. It is one of the few ASO levers that costs nothing but time.

Are Custom Product Pages worth building for a small indie app?

They are worth building once you have at least one identifiable traffic segment, such as a paid campaign or a recurring referral source, that would benefit from screenshots tuned to what brought them there. Building variants with no distinct traffic source to route just adds maintenance.

Shotlingo
Written by the Shotlingo team

We build tools that help developers localize App Store screenshots into 40+ languages. We write about ASO, screenshot design, and what actually moves the conversion needle.