---
title: Classic, Rolling and Cumulative Retention Explained
description: Classic, rolling and cumulative retention on one interactive cohort table: how each is counted, why the numbers differ and which one to use for each decision.
url: https://retentioncohorts.com/
---

# One cohort, three retention numbers

An explorable guide to classic, rolling and cumulative retention: how each is counted from the same raw activity, why they disagree, and what each one lets you conclude.

**Short answer**

**Classic retention** counts users active on exactly Day N. **Rolling retention** counts users active on Day N or any later day, so it keeps rising as late returns arrive. **Cumulative retention** counts users active at least once from Day 1 to Day N. Same cohort, same activity, three numbers: in the sample app below, Day 7 reads about 18%, 38% and 67%.

## What are the three types of retention?

[Classic Active on exactly Day N Also called N-day or exact-day retention. Strict, fixed once the day passes, and the definition most benchmarks use. count if active[N]](https://retentioncohorts.com/types/classic/) [Rolling Active on Day N or later Also called unbounded retention. Credits late returns, so it keeps rising as time passes. count if any active[N..today]](https://retentioncohorts.com/types/rolling/) [Cumulative Active at least once by Day N Did the user come back at all within the first N days? Never falls as N grows. count if any active[1..N]](https://retentioncohorts.com/types/cumulative/)

Figure 1

## Cohort explorer

Ten daily install cohorts from a made-up app, observed to 15 Sep. Switch how retention is counted and watch the same cells change. Click or hover a cell to see exactly which users it counts.

> Interactive tool (cohort explorer): runs in the browser at https://retentioncohorts.com/#cohort-explorer. Its text content follows.

Count as

Channel

| Install cohort | D1 | D2 | D3 | D4 | D5 | D6 | D7 | D8 | D9 | D10 | D11 | D12 | D13 | D14 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 Sep Tue 148 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 2 Sep Wed 152 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 3 Sep Thu 154 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 4 Sep Fri 142 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 5 Sep Sat 148 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 6 Sep Sun 249 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 7 Sep Mon 262 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 8 Sep Tue 278 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 9 Sep Wed 258 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| 10 Sep Thu 266 installs |  |  |  |  |  |  |  |  |  |  |  |  |  |  |

0% 85%+ not reached yet

Classic retention

### 3 Sep cohort, Day 7

38%

59 of 154 all channels

Counted: users from the 3 Sep cohort who opened the app on exactly Day 7 (10 Sep). Click any cell to see who it counts.

[See these three views for your own app's cohorts in Linkrunner](https://dashboard.linkrunner.io/sign-in?utm_source=retentioncohorts&utm_medium=referral&utm_campaign=home&utm_content=explorer)

**Source:** Sample data: a made-up app to show the method, not a benchmark. Hatched cells: the cohort has not reached that day yet.

Figure 2

## The same rule, person by person

Ten made-up users, fourteen days. Pick a definition and a day: the shaded columns are the days that count, and each user is counted or not.

> Interactive tool (user dots): runs in the browser at https://retentioncohorts.com/#user-dots. Its text content follows.

Count as

Counts a user if they were active on Day 7 or any later day (to Day 14).

|  | D0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |  |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| User 1 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | counted |
| User 2 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | counted |
| User 3 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | not counted |
| User 4 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | counted |
| User 5 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | not counted |
| User 6 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | counted |
| User 7 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | not counted |
| User 8 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | not counted |
| User 9 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | counted |
| User 10 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | counted |

Rolling Day 7: 6 of 10 users = 60%

Filled dot: opened the app that day. Shaded columns: the days that count for this definition. Dashed square: install day (Day 0), which never counts as a return.

**Source:** Sample data: a made-up app to show the method, not a benchmark. At Day 7: classic 3 of 10, rolling 6 of 10, cumulative 8 of 10.

Figure 3

## Three curves from one cohort

The 1 Sep cohort (148 installs) is the only one observed for all 14 days. Classic falls and flattens, cumulative climbs, and rolling falls until it meets classic on the last day in the data.

Classic Rolling Cumulative

**Source:** Sample data: a made-up app to show the method, not a benchmark.

## Why is rolling retention higher than classic?

Rolling counts a user on Day N if they opened the app on Day N *or on any later day*. Classic only counts Day N itself. Every user classic counts, rolling counts too, plus everyone who skipped Day N and came back later, so rolling is never lower. In the sample, the 1 Sep cohort's Day 7 is 16% classic and 61% rolling.

The gap also depends on how long you have watched the cohort. Rolling has no end date, so the same cell rises as more days arrive, and older cohorts look better than newer ones for that reason alone. [More on rolling retention and its traps](https://retentioncohorts.com/types/rolling/).

## Which retention should you use?

| Question you are asking | Use | Why |
|---|---|---|
| Did onboarding bring people back at least once? | [Cumulative](https://retentioncohorts.com/types/cumulative/) Day 3 or Day 7 | Counts any return in the window, fixed once the window passes. |
| Did a product change on one day help? | [Classic](https://retentioncohorts.com/types/classic/) Day N, by cohort | One exact day per cohort, so before and after cohorts compare cleanly. |
| Are we above or below a published benchmark? | Classic, same Day N | Most published retention benchmarks count activity on an exact day. |
| Is this user base still around at all? | [Rolling](https://retentioncohorts.com/types/rolling/), with the as-of date | Credits late returns; record when you read it because it keeps rising. |
| Which channel brings stickier users? | Classic and cumulative, per channel, mature cohorts only | Bounded numbers, read on cohorts of the same age. |
| How many active users next month (forecast)? | Classic curve | Each point is the share active on that day, which is what a forecast needs. |

Whatever you choose, label the definition and the Day N on every chart, and compare like with like.

## Learn to read the table

- [01 **How to read a cohort retention table** Rows, columns, diagonals, flattening, channels, mix shifts and small cohorts, each with what you can and can't conclude.](https://retentioncohorts.com/read/)
- [02 **Compute all three in SQL or a spreadsheet** Copy-ready queries and formulas, plus four checks that catch a wrong definition.](https://retentioncohorts.com/compute/)
- [03 **Classic vs rolling vs cumulative retention** Classic, rolling and cumulative retention count different users on the same day. See the definitions, a ten-user worked example and when to use each one.](https://retentioncohorts.com/learn/classic-vs-rolling-vs-cumulative/)
- [04 **How to read a retention curve** A retention curve plots one cohort's retention against Day N. Read the early drop, the flattening point and smile curves, and why shape depends on definition.](https://retentioncohorts.com/learn/read-a-retention-curve/)
- [05 **Why paid D1 retention is lower than organic** Paid D1 retention below organic is partly normal, as organic users arrive with intent. See the causes, from targeting to measurement errors, and how to check.](https://retentioncohorts.com/learn/paid-d1-lower-than-organic/)
- [06 **Retention by channel and campaign** Blended retention hides what each channel does. Learn to cut a cohort table by channel, campaign and creative, keep naming clean and spot a channel mix shift.](https://retentioncohorts.com/learn/retention-by-channel/)

See this on your own app

Linkrunner reports classic, rolling and cumulative retention as separate columns for your own install cohorts, side by side per campaign, so you can read your app the way this explorer reads the sample.

- [How Linkrunner calculates the three retention views](https://docs.linkrunner.io/features/retention?utm_source=retentioncohorts&utm_medium=referral&utm_campaign=home&utm_content=panel)
- [Create a free account (25k installs free)](https://dashboard.linkrunner.io/sign-in?utm_source=retentioncohorts&utm_medium=referral&utm_campaign=home&utm_content=panel)

## Questions

**Why is my rolling retention higher than classic?**

Rolling also counts users who skipped Day N but came back later, so it can never be lower than classic. The gap grows the longer a cohort has been observed, because late returns keep adding to it.

**What is cumulative retention?**

Cumulative retention is the share of an install cohort that opened the app at least once between Day 1 and Day N. It never falls as N grows and it is fixed once Day N has passed, which makes it a good activation measure.

**How do I read a cohort retention table?**

Each row is a group of users who installed on the same day and each column is days since install. Read across a row for one cohort's decay, down a column to compare cohorts at the same age, and along a diagonal for anything that happened on one calendar day.

**Can rolling retention be lower than cumulative?**

Yes. Rolling counts returns on or after Day N, cumulative counts returns from Day 1 to Day N, so they count different users. Early in a cohort's life rolling is usually higher; at later days cumulative usually overtakes it.

**Why does the newest cohort look worse on rolling retention?**

Because rolling only counts days that have already happened. A cohort that installed last week has had far fewer days to come back than one from last month, so its rolling numbers are lower even if its users are just as good.

**What is the difference between classic, rolling and cumulative retention?**

Classic counts users active on exactly Day N. Rolling counts users active on Day N or any later day, and cumulative counts users active at least once from Day 1 to Day N. They use the same raw activity but answer different questions.
