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%.

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.

Count as
Channel
Retention by install cohort and day since install
Install cohortD1D2D3D4D5D6D7D8D9D10D11D12D13D14
1 Sep Tue148 installs
2 Sep Wed152 installs
3 Sep Thu154 installs
4 Sep Fri142 installs
5 Sep Sat148 installs
6 Sep Sun249 installs
7 Sep Mon262 installs
8 Sep Tue278 installs
9 Sep Wed258 installs
10 Sep Thu266 installs
0%85%+not reached yet

See these three views for your own app's cohorts in Linkrunner

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.

Count as

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

D01234567891011121314
User 1counted
User 2counted
User 3not counted
User 4counted
User 5not counted
User 6counted
User 7not counted
User 8not counted
User 9counted
User 10counted

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.

ClassicRollingCumulative
Retention by day since install0%25%50%75%100%Day 1Day 3Day 7Day 10Day 14Classic 16%Rolling 16%Cumulative 73%

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.

Which retention should you use?

Question you are askingUseWhy
Did onboarding bring people back at least once?Cumulative Day 3 or Day 7Counts any return in the window, fixed once the window passes.
Did a product change on one day help?Classic Day N, by cohortOne exact day per cohort, so before and after cohorts compare cleanly.
Are we above or below a published benchmark?Classic, same Day NMost published retention benchmarks count activity on an exact day.
Is this user base still around at all?Rolling, with the as-of dateCredits late returns; record when you read it because it keeps rising.
Which channel brings stickier users?Classic and cumulative, per channel, mature cohorts onlyBounded numbers, read on cohorts of the same age.
How many active users next month (forecast)?Classic curveEach 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.

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.