Every argument about App Store creative starts at the screenshots. It should start one step earlier, because the screenshots are downstream of a decision the visitor already made.
In a search result your app is an icon, a name and a rating, repeated ten times down a column. At that size the icon is doing nearly all the work, and it is doing it against nine others drawn by people making the same trade-offs you did. Whether your screenshots are any good is a question nobody reaches unless the icon wins first.
What "at that size" actually means
An iPhone search result renders the icon at roughly 64 points. Appstro's icon teardown shows yours in that row at 64px, and then at 48 and 32 — not because those are real placements, but because they are a legibility stress test. The page says so, rather than implying Apple ships a 32px icon somewhere.
The useful trick is the grayscale toggle. Strip the colour and what remains is the shape. An icon that only works in colour is an icon that stops working the moment it sits next to something with the same hue — which, as the measurement below shows, is a common situation.
The <img> always pulls the 256x256bb.png artwork and lets the browser scale it, so every size in the row is retina-sharp off a single request rather than three.
The colour split is measured, not estimated
This is the part worth being pedantic about, because most creative advice is vibes with a confident tone.
Apple's artwork CDN serves icons with access-control-allow-origin: * — verified — which means a browser can draw a competitor's icon into a canvas and read the pixels back. So the dominant-colour split across the ten apps in a result is a count, not an impression.
Two design decisions follow from taking that seriously:
The bins are written out longhand. Anyone reading "6 of 11 are blue" is entitled to see where blue stops and cyan begins. A histogram whose buckets are hidden is a claim you cannot check.
Below a saturation floor there is no hue. Pixels under MIN_SATURATION (0.18) are counted as light or dark rather than binned by whatever the rounding happens to produce. A near-white icon is not "slightly yellow" because of a rounding artefact.
And when the analysis fails — the CDN changes its headers, getImageData throws a SecurityError — the icon resolves to null and the page says "not analysed". It does not fall back to an estimated colour. The count of unanalysed icons is printed next to the figures, so the denominator is never implied.
That distinction has a name in this codebase and it recurs everywhere: "not analysed" and "nobody matches you" must not render the same. The share of the row matching your palette is null rather than 0 when your own icon could not be read.
What the histogram is not allowed to say
Here is where most tools would put a score, and where this one stops.
| The page can say | The page must not say |
|---|---|
| Six of the ten icons in this row are blue | Blue is overused, change yours |
| Yours is the only orange one | Standing out is working |
| Yours shares its dominant hue with four rivals | You are invisible |
| Four icons were not analysed | (imply a denominator of ten anyway) |
Matching the row's dominant colour is not automatically a problem. Category conventions exist for a reason — a finance app that looks like a game reads as the wrong kind of app, and "stand out" advice pushed far enough produces exactly that. Standing out is also not automatically right.
The judgement is about your product and your category, and it is not one a colour histogram can make. So the page counts what the row does and says the rest is yours.
No model looks at these images either, for the same reason the screenshot teardown refuses to: an AI verdict on creative it cannot actually see would be confident and worthless.
Two requests, and it stays two
Worth knowing if you build something similar. Apple's search endpoint returns artwork URLs on every row, so the whole competitor set arrives in one call. The second call looks up your own app directly, because it may not rank for the term it wants to compete on and would otherwise be missing from its own teardown.
Turning that into a per-rival lookup fan-out is the obvious refactor and it is eleven requests instead of two, for identical data.
What this cannot tell you
- Not whether a new icon will convert better. Apple's Product Page Optimization is the only place an icon change is measurable, and it brings the multiple-comparison problem with it.
- Not whether your icon is good. Colour is one property. Shape, legibility at 32px, and whether it says what the app does are all judgements this page hands back to you.
- Not what Apple thinks. Apple names four text fields as search inputs and documents no creative factor at all. Nothing here is a ranking claim.
- Not the whole row, when part of it failed. Unanalysed icons are counted and shown, never quietly dropped from the denominator.
The work
Open the icon teardown on a term you want to win, look at the 64px row, then hit grayscale. If your icon disappears into the column when the colour goes, the colour was doing work the shape should have been doing. Then go one step down the funnel to the screenshot teardown — but only once the first step holds.