Ad revenue is set by session time, not downloads: AdMob numbers across 15 apps
Eleven apps with more monthly users produced 27 times fewer ad impressions than four TV remote apps. Where the gap between 7.68 and 0.18 impressions per user per day comes from, and how it changed the order I do marketing in.
For months I worked on the assumption that more downloads means more revenue. I optimized store listings, posted in communities, reshot screenshots. Then I laid the AdMob report out across every app at once, and the assumption fell apart.
The numbers
On 3 September 2026 I split the 15 apps I run into two groups in the AdMob "Ad activity" report.
| Monthly active users | Impressions per day | Impressions per user per day | |
|---|---|---|---|
| 4 TV remote apps | 277 | 2,128 | 7.68 |
| The other 11 apps | 429 | 79 | 0.18 |
The other 11 apps have more users: 429 against 277. Yet the four remote apps produce 27 times the impressions. It is not the number of ad slots either. The bookmark manager has 9 slots and the benefits calendar has 8, while the remotes have 6. The apps with fewer slots produced 27 times more.
The difference is session length. A remote stays open and gets tapped for as long as the TV is on. A Markdown viewer or an error-code lookup gets opened once, answers the question, and gets closed. How long one person keeps the app open per day produces impressions, and impressions produce revenue. Downloads are merely the step before that.
Working the target backwards
I calculated what it takes for one app to earn one dollar a day. At $0.60 per 1,000 impressions, that is 1,667 impressions a day.
- U+TV remote: at 7.68 per user, 101 monthly active users are enough. It has 102. Already there.
- Markdown viewer: at 0.18 per user, it needs 9,961 monthly active users. It has 146. That is 68 times more.
Same "one dollar a day", but one app has reached it and the other is 68x away. Doubling the viewer's downloads would leave 0.18 per user unchanged, so revenue would grow by a few cents a day, not double.
What I changed
First, I no longer start a revenue conversation with install counts. I measure impressions per day divided by monthly active users and see which side of the line the app is on. Below 1, time spent inside the app comes before any marketing.
Second, I dropped the idea of adding more ad slots. The data says no. A 9-slot app earns one twenty-seventh of a 6-slot app.
Third, I changed how I pick the next app. Not a blue ocean where I could rank first, but a market where people install several apps and switch between them, and a kind of app that stays open once launched. "No competition" was not an advantage. It usually meant a market with no session time.
How to measure it
In the AdMob console, Reports › Ad activity › AdMob Network, put impressions and active users per app on the same period and divide. This report is not available to service accounts through the API, so I read it in the console. One caveat: on an emulator AdMob serves test ads only, so fill rate and revenue cannot be measured there. Only numbers from a release build on a physical device mean anything.
Summary
- The variable that dominates ad revenue is impressions per user per day, not downloads.
- Measured, it differed 43x between app types: 7.68 versus 0.18.
- Slot count was not the cause.
- Measure impressions ÷ monthly actives per app first; below 1, fix session length before anything else.