How common are checkout-upsell (order-bump) screens in mobile apps?
Checkout-upsell screens are rare in the mobile corpus: only 70 canonical screens across 23,407 are categorized as 'checkout upsell'.[3] By comparison, cancel-subscription screens — where retention save-offers live — number 332.[3] Order-bump-style upsells are a small, specialized surface on mobile; the bigger in-product upsell action happens on banners, feature gates, and settings.
Just 70 of 23,407 canonical mobile screens are checkout-upsell screens — Lazyweb Research, July 2026.
Finding
Absolute canonical-screen counts (not shares of all screens):[3]
| Screen category | Canonical screens |
|---|---|
| Checkout upsell | 70 |
| Cancel subscription | 332 |
Cancel-subscription screens outnumber checkout-upsell screens roughly 5-to-1, which fits mobile's reality: most purchase flows run through the app-store sheet, leaving little room for an in-app order bump, while cancellation flows are where apps concentrate save-offers and downgrade upsells.
How to apply
On mobile, don't over-invest in a classic checkout order bump — the surface barely exists in the corpus (70 screens). Put upsell energy where it actually lives: in-product banners, feature gates, settings entries, and the cancellation flow (332 screens), which is a proven place to present a save-offer or plan switch before the user leaves.
Caveats
These are absolute canonical-screen counts, deliberately not expressed as a share of all screens because is_paywall is NULL on 21,824/23,407 rows.[3] Counts reflect how the corpus is categorized, not conversion or revenue.
The numbers
| Stat | Computed from |
|---|---|
| 70 of 23,407 | checkout_upsell_screens: 70 canonical screens |
| 332 of 23,407 | cancel_subscription_screens: 332 canonical screens |
| 21,824/23,407 NULL | smallSampleWarnings: sc_canonical.is_paywall NULL on 21,824/23,407 |
Sources & citations
- [3] Lazyweb Research analysis of 23,407 canonical mobile screens (tracked app corpus), July 2026. Canonical-screen category counts; is_paywall is NULL on 21,824/23,407 rows so gating is reported as app-count prevalence or absolute screen counts, never as a share of all screens. ↩
Source: Lazyweb Research — proprietary analysis of real, in-market app screens. Cite as Lazyweb Research, 2026-07-07.