- Mobile apps
- Analytics
- Competitors
- Store Data
App Store download count: find yours and estimate any app
The App Store download count is not public. Find your app's exact downloads in App Store Connect and estimate any app's from ratings and chart rank.
- Author
- Extenify Team
- Published
- Reading time
- 12 min read

On this page
The App Store download count is one of the most searched numbers in mobile apps, and Apple does not publish it. An App Store product page shows a rating, a rating count, a chart position and an age rating, but no downloads. That is why the same question keeps coming up on the Apple Developer Forums and in support centers of app builders: where do I see how many times an app was downloaded?
The answer depends on whose app it is. For your own app, App Store Connect gives exact numbers, split into first-time downloads, redownloads and more, and the Analytics Reports API delivers them as daily files. For any other app, there is no exact count, but there are public signals you can record every day and turn into a reasonable estimate. This guide covers both, with the metric definitions from Apple's documentation and a tested Node.js script. All figures were read on October 31, 2026.
Key takeaways
- The App Store shows no public download count. Product pages show ratings and a chart position instead.
- For your own app, App Store Connect reports First-Time Downloads, Redownloads and Total Downloads (the sum of the two), plus Installations, Updates and Deletions.
- The Analytics Reports API's App Store Downloads report has daily rows by download type, source, territory, device and version, complete "within two days", with history back to January 1, 2024.
- For any other app, record the rating count in each storefront and the category chart position daily. Both are public and free.
- Turn those signals into a download estimate only after calibrating them on an app whose real numbers you know.
Does the App Store show download counts?
No. Google Play shows a download range such as "1M+" on every listing, as our guide to the Google Play download count explains. The App Store shows nothing comparable, and Apple offers no public endpoint for it.
What a product page does show is useful, though:
- Ratings count. The ChatGPT page in the US storefront showed "12M Ratings" on October 31, 2026.
- A chart badge. The same page carried a Chart badge with position 2, its rank in the US Top Free chart for Productivity. Apple's own top charts feed for that category listed ChatGPT second the same evening, behind Muse from Meta.
- The version history, which tells you how actively the app is maintained. Our guide to App Store version history covers how to read and track it.
Those signals are what every download estimate for an iPhone app is built from, including the ones sold by paid market intelligence tools.
How to see your own app's downloads in App Store Connect
If you own the app, or have a role on its App Store Connect team that can see analytics, the exact numbers are in Analytics in App Store Connect. Apple rebuilt Analytics in March 2026, which 9to5Mac described as more than 100 new metrics, cohorts by download date and source, and up to seven filters at once, so screenshots in older tutorials no longer match the screen.
The menus moved; the definitions did not. These are the download metrics as Apple's metrics reference defines them:
| Metric | Apple's definition |
|---|---|
| First-Time Downloads | "The number of first-time downloads on devices with iOS, macOS, tvOS, or visionOS." |
| Redownloads | "The total number of redownloads of your app on the App Store. Does not include auto-updates or device restores." |
| Total Downloads | "The sum of First Time Downloads and Redownloads." |
| Installations | Every completed install, including redownloads on the same device, other devices on the same Apple Account and Family Sharing. |
| Updates | "The total number of app updates. Includes auto-updates." |
| Deletions | Deletions from the Home Screen or Manage Storage, on iOS 12.3 or later. |
Two rules from the same page save confusion. The App Store and download metrics appear only once an app has "at least five first-time downloads or pre-orders." And usage metrics such as sessions and active devices are "based on users who have opted in to share their analytics with you", so they undercount compared with downloads.
Which download number should you report?
They answer different questions, so pick by purpose:
- First-Time Downloads is the closest thing to "new users". Use it for growth rates, launch results and marketing.
- Total Downloads adds people who come back to an app they had before. It is the figure Apple's conversion rate is built on ("Total downloads and pre-orders divided by unique device impressions").
- Installations counts devices, not people. A user with an iPhone and an iPad, or a family sharing one purchase, adds several.
- Updates are not downloads in any marketing sense. Leave them out of every growth number.
When someone quotes "downloads" without a qualifier, ask which of these they mean. The gap between them can easily be a factor of two for an app that has been around a few years.
Get App Store downloads programmatically
App Store Connect's web screens are fine for a monthly look. For a daily dashboard, use the Analytics Reports API, whose App Store Downloads report "includes download data generated on the App Store." According to Apple's documentation:
- Fields include Date, App Version, Device, Platform Version, Source Type, Page Type, Pre-Order, Territory and Counts. A detailed version adds Source Info, Campaign and Page Title, with extra privacy measures.
- Download Type separates first-time downloads, redownloads, manual updates, auto-updates and restores, so you can rebuild every metric in the table above.
- Source Type tells you where people found the app: App Store search, App Store browse, app referrer, web referrer, App Clip or institutional purchase.
- Timing: daily reports arrive every day, weekly ones every Friday and monthly ones on the fifth of the next month. Data is complete "within two days", and history is available from January 1, 2024 on request.
The practical rule that follows: never read yesterday's figure as final. Store each day's rows, and overwrite them when a later report instance brings corrections.
How to estimate another app's App Store downloads
For a competitor's app there is no API that returns downloads, and anyone who claims an exact figure is showing you a model. You can build a simple, honest model yourself from two public signals.
Signal 1: rating count in each storefront
Ratings belong to the storefront where they were left, and the iTunes lookup endpoint returns userRatingCount for one country at a time. Here is Slack (app ID 618783545) in seven storefronts on October 31, 2026:
| Storefront | Ratings | Average rating |
|---|---|---|
| United States | 54,738 | 4.14 |
| Japan | 11,774 | 3.78 |
| India | 7,222 | 4.52 |
| United Kingdom | 4,852 | 4.03 |
| Germany | 3,842 | 4.17 |
| Brazil | 2,845 | 4.65 |
| France | 2,348 | 4.27 |
| Total | 87,621 |
Two lessons from this table. First, the US storefront holds most of Slack's ratings, but more than a third of the total is elsewhere, so a US-only check misses a lot. Second, the number is cached: a read of the US storefront a few minutes earlier returned 54,795, then 54,738. Treat day-over-day changes of a few dozen ratings as noise and look at weekly trends. Our guide to the iTunes Search API covers the endpoint's fields, caching and rate limit in detail.
Signal 2: category chart position
Apple publishes its top charts as public feeds. The legacy feed returns a category chart for one country, with the app ID of each entry:
https://itunes.apple.com/us/rss/topfreeapplications/limit=100/genre=6007/json
6007 is Productivity; each app's primaryGenreId from the lookup endpoint tells you which category to read. In our tests these feeds returned at most 100 entries, so an app outside a category's top 100 shows as "not ranked", which is itself information. Chart position responds to recent downloads much faster than the rating count does, which makes it the better signal for spotting a launch or a featuring spike.
Turn the signals into an estimate
Ratings are a fraction of downloads, and that fraction depends on how and when an app asks for ratings, its category and its audience. There is no universal ratio you can trust. The way around that is calibration:
- Take an app whose real numbers you know, usually your own, in the same category.
- Over the same 30 days, divide its First-Time Downloads from App Store Connect by the number of new ratings it gained in the public data.
- Apply that ratio to the competitor's new ratings over the same 30 days.
As an illustration with made-up numbers: if your app gained 300 new ratings across your main storefronts in a month in which App Store Connect reported 24,000 first-time downloads, your ratio is 80. A competitor in the same category that gained 1,200 ratings in that month would then be in the region of 96,000 downloads. Treat it as an order of magnitude. If the competitor prompts for ratings more aggressively than you do, the real figure is lower; if it barely asks, higher.
Use the chart position as a cross-check. If the rating-based estimate says the competitor out-downloads you four to one, it should also sit well above you in the same category chart in the same countries.
Track App Store download signals daily with Node.js
A single reading tells you little. The script below records, for each app ID you pass, the rating count and average in a set of storefronts and the app's position in its US category chart, and appends one JSON line per app per day. It needs Node.js 18 or newer and no packages. Run it once a day from a scheduler you already have; our guide to a reliable Node.js cron job shows one way.
// appstore-signals.mjs: record the public download signals of App Store apps once a day.
// Usage: node appstore-signals.mjs 6448311069 618783545
import { appendFile } from 'node:fs/promises';
const COUNTRIES = ['us', 'gb', 'de', 'fr', 'jp', 'br', 'in'];
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
async function getJson(url) {
const res = await fetch(url, { headers: { Accept: 'application/json' } });
if (!res.ok) throw new Error(`HTTP ${res.status} for ${url}`);
return res.json();
}
async function lookup(id, country) {
const data = await getJson(`https://itunes.apple.com/lookup?id=${id}&country=${country}`);
return data.resultCount > 0 ? data.results[0] : null;
}
// Top Free chart for one category in one country. Returns a 1-based position or null.
async function chartPosition(id, genreId, country) {
const url = `https://itunes.apple.com/${country}/rss/topfreeapplications/limit=100/genre=${genreId}/json`;
const entries = (await getJson(url)).feed?.entry ?? [];
const index = entries.findIndex((entry) => entry.id?.attributes?.['im:id'] === String(id));
return index === -1 ? null : index + 1;
}
async function snapshot(id) {
const perCountry = {};
let genreId = null;
let name = null;
for (const country of COUNTRIES) {
const app = await lookup(id, country);
await sleep(500); // stay well under Apple's lookup rate limit
if (!app) continue; // not sold in this storefront
name ??= app.trackName;
genreId ??= app.primaryGenreId;
perCountry[country] = { ratings: app.userRatingCount ?? 0, rating: app.averageUserRating ?? null };
}
const ratingsTotal = Object.values(perCountry).reduce((sum, row) => sum + row.ratings, 0);
const usChartPosition = genreId ? await chartPosition(id, genreId, 'us') : null;
return { date: new Date().toISOString().slice(0, 10), id, name, ratingsTotal, usChartPosition, perCountry };
}
for (const id of process.argv.slice(2)) {
const row = await snapshot(id);
await appendFile('appstore-signals.jsonl', JSON.stringify(row) + '\n');
console.log(row.date, row.name, 'ratings:', row.ratingsTotal, 'US category chart:', row.usChartPosition ?? 'not in top 100');
}
Our run on October 31, 2026 printed:
2026-10-31 ChatGPT ratings: 24765042 US category chart: 2
2026-10-31 Slack ratings: 87621 US category chart: 24
From there, the useful numbers are differences: new ratings per week in each storefront, and the change in chart position. Store the rows in a table keyed by app, date and country, as described in our guide to PostgreSQL time series without TimescaleDB, and plot the weekly change rather than the running total.
Read the trend with care
- A jump in new ratings is not always a jump in downloads. A new in-app rating prompt can multiply the ratings rate overnight while downloads stay flat. Check the chart position before you believe a spike.
- Rating resets break the series. Apple lets developers reset the summary rating with a new version, for all countries at once. Mark the date and start a new baseline.
- Charts are per country and per device. A top-10 position in a small storefront can mean fewer downloads than position 80 in the US.
- Ratings lag. People rate after using an app for a while, so ratings trail downloads by days or weeks. Use 30-day windows for calibration.
App Store download count compared with other stores
| Store | What is public | Exact numbers for your own listing |
|---|---|---|
| Apple App Store | Rating count per storefront, chart position | App Store Connect Analytics, Analytics Reports API |
| Google Play | Download range such as "1M+" | Play Console statistics |
| Chrome Web Store | Weekly users, rounded for large extensions | Developer Dashboard |
| Firefox Add-ons | Average daily users | AMO statistics dashboard |
Browser extension stores count users, not downloads, so for extensions the question becomes how fast users grow; see our guides to Chrome extension user growth and reading review and rating trends across stores.
Track App Store download signals without a script
If you want these signals for your apps and your competitors without running a collector, Extenify does it for you. It is an app install tracking and competitor app monitoring dashboard that records ratings, reviews, versions and category rank every day for App Store and Google Play apps, next to your Chrome, Edge and Firefox extensions, and sends app store rating alerts to email, Slack, Discord, Telegram or Teams when something moves. If Slack is where your team works, our guide to the Slack webhook in Node.js shows how to post the script's output there yourself. Every plan starts with a free trial; see Extenify pricing.
Frequently asked questions
Can you see how many downloads an app has on the App Store?
Not for other people's apps. Apple publishes no download count and no public API for it. You can see the rating count in each storefront and the app's chart position, and estimate downloads from those. Exact numbers are only available to the app's own team in App Store Connect.
How do I see my app's downloads in App Store Connect?
Open Analytics in App Store Connect and select your app. The download metrics are First-Time Downloads, Redownloads and Total Downloads. They appear once the app has at least five first-time downloads or pre-orders. For daily files, request the App Store Downloads report through the Analytics Reports API.
What is the difference between first-time downloads and total downloads?
First-time downloads count people downloading the app for the first time. Total downloads add redownloads, when someone installs an app they had before. Apple defines Total Downloads as the sum of the two. Neither includes updates.
Do app updates count as downloads?
No. Apple reports updates, including auto-updates, as a separate Updates metric. Redownloads also exclude auto-updates and device restores.
How accurate are third-party App Store download estimates?
They are models built from the same public signals: chart positions, rating counts and sometimes panel data. They are useful for comparing apps and spotting trends, but the absolute numbers can be far off for any single app. Calibrating against an app whose real numbers you know is the best way to judge how far.
Why does an app's rating count change between two checks a few minutes apart?
Apple's lookup endpoint is served from caches that do not update at the same moment. Small differences between reads are normal. Compare daily or weekly readings, not single requests.
Summary
The App Store download count is not public. For your own app, App Store Connect Analytics gives exact First-Time Downloads, Redownloads and Total Downloads, and the Analytics Reports API delivers the same data as daily files with sources, territories and versions, complete within two days. For any other app, record the rating count in each storefront and the category chart position every day, calibrate the ratio of downloads to new ratings on an app you know, and read the weekly trend rather than any single number.
Image credits
- Cover photo: A smartphone and a tablet resting on a woven dark brown outdoor table by Nilo Velez on the WordPress Photo Directory, CC0.


