guide · keywords · 4 min read

Keyword Rank Buckets: Why Position 11–30 Matters and Position 51+ Doesn't

App Store rank distribution is non-linear. Sniffy buckets keywords into actionable groups — here's why that mapping is the most useful framing.

Why ranks are bucketed, not point-by-point

App Store search rank is fluid — an app sitting at position 12 for "habit tracker" on Tuesday can land at 18 by Friday based on competitor releases, ratings volume, or seasonal query shifts. Reporting an exact rank as a single number invites false precision; reporting a bucket forces you to think in actionable tiers instead.

Sniffy buckets every diagnosed keyword into one of five tiers: 1-10, 11-30, 31-50, 51-100, and not_found. Each bucket implies a different decision.

What each bucket means in practice

  • 1–10 — the top of the first results screen. The vast majority of App Store installs come from these positions. Defend aggressively: monitor for competitor releases, refresh promotional text on launches, and keep ratings velocity up.
  • 11–30 — the top of the "more results" screen, where engaged searchers actually scroll. This is the most actionable bucket: small placement changes (subtitle rewrite, keyword consolidation) can promote keywords here into the top 10. If Sniffy flags a high-intent term in 11–30 with low minimum difficulty, that's your fastest unlock.
  • 31–50 — below the fold for most searchers. Worth working toward only if the keyword has high intent and your metadata is the obvious blocker. Otherwise, deprioritize.
  • 51–100 — effectively invisible. The decision is not "how do I move this up" but "is this keyword worth targeting at all?" If intent and search volume justify the slot, treat it as a long-term keyword and pair with description copy on Android. If not, free the slot for a higher-leverage term.
  • not_found — outside the top 100, or Apple isn't indexing your app for this query at all. Often a sign that the keyword is not in any indexed field (title, subtitle, keyword field) or that you've been flagged for a guideline violation (competitor brand names, "free", your own category).

Difficulty vs. rank: two numbers, two decisions

Bucket tells you where you are now. Difficulty (and minDifficulty) tells you how hard moving up will be. A keyword at rank 11–30 with difficulty 71/100 (high) means the placement is good but the contest is fierce — expect to need ratings velocity, not just a subtitle edit. The same bucket with difficulty 38/100 (low) means a structural fix likely promotes the keyword on its own.

Sniffy reports both numbers per keyword so you can prioritize by impact-over-effort rather than by rank alone.

How Sniffy measures this

Every paid Sniffy report's keywordDiagnosis[] array carries a rankBucket per keyword, plus difficulty, minDifficulty, intentScore, and a recommendation string that explains the most leveraged next move for that keyword. The sample report shows the per-keyword diagnosis for a habit-tracker app with two keywords in different buckets.