Methodology
How we collect, validate, and estimate app data.
Where the numbers come from, how we cross-check them, and where they fall short. No black boxes.
1. Data sources
Many noisy signals, aggregated on purpose.
We pull from app stores, search engines, ad platforms, SEO tooling, and attribution providers. No single source is treated as ground truth — they get cross-checked against each other.
App stores (official)
- — Apple App Store rankings, listings, and structured metadata
- — Google Play rankings, listings, and structured metadata
Search engines
- — Google Search index signals (visibility, organic reach)
- — Bing Search index signals
Paid search and visibility
- — Google Ads inventory and bid landscape signals
- — Apple Search Ads visibility and competitive signals
Paid social
- — Meta Ads (Facebook + Instagram) creative and reach signals
- — TikTok Ads creative and reach signals
SEO intelligence
- — Semrush traffic, keyword, and backlink signals
- — Ahrefs traffic, keyword, and referring-domain signals
Attribution and lifecycle
- — AppsFlyer install attribution and post-install lifecycle signals
2. Validation and estimation
An in-house ML model does the cross-check.
Cross-validate signals
A single source — one ad platform's reach number, one ranking snapshot — is noisy in isolation. The model reconciles signals across every source listed above so a metric only ships when at least one other source agrees.
Estimate revenue when no source publishes it
Stores don't publish revenue directly. We trained the model to map the combination of download signals, ad spend indicators, in-app purchase visibility, and ranking trajectory into a revenue estimate.
~70%
Honest about accuracy
Against the ground-truth comparisons we run periodically, the model lands at roughly 70% accuracy. Where confidence is too low to report a real number, we fall back to bucket labels (
<$3k
,<3k
) rather than fake precision.3. Refresh cadence
Daily, with hot apps re-checked more often.
- Main batch runs daily between 02:00 and 07:00 UTC.
- A subset of high-velocity apps is re-checked every 4–6 hours so ranking moves don't fall behind the live store.
- The sitemap
<lastmod>on every detail page reflects the latest model output time, not the last render.
4. Coverage today
Where the dataset reaches right now.
- iOS App Store and Google Play, US storefront.
- Roughly 10,000 ranked apps in the sitemap and ~13,000 in the underlying dataset.
- More countries on the roadmap, not done yet.
5. Known limits
Where the numbers fall short — documented.
Floor effects on weak signals
When source signals only confirm “less than the threshold,” we render
<$3k
for revenue and <3k
for downloads, instead of guessing a precise figure.Revenue per download (RPD) suppression
When revenue sits at the floor (i.e. renders as
<$3k
), we suppress the RPD value to −
. Dividing by an unknown numerator produces noise that looks like signal, and we'd rather show nothing than mislead.Refresh lag for some metrics
A subset of metrics can lag the live store state by up to ~24 hours, especially during high-traffic events (launches, holidays).
US storefront only, for now
We currently cover the US App Store and Google Play storefronts. Multi-country expansion (EU, Asia) is on the roadmap, not done.
6. FAQ
Common questions about the numbers.
Ready to see the dataset?
Browse the live trending list, filtered by category and release window.