How to calculate retention rate
Pick a period, such as a month or a quarter. You need three counts from your billing data.
- Start (S): paying customers on the first day of the period.
- End (E): paying customers on the last day of the period.
- New (N): customers absent from the start group who are still paying at the end.
The retention rate formula is (E − N) ÷ S. Subtracting N leaves only the customers who were already there on day one and stayed. If you can query your data directly, you can also count the start group and check which of them are still paying. Count a returning customer as retained if they belonged to the start group and have paid access at the end. Count other returning customers in N only if they still have paid access. Exclude new customers who left before the end.
Worked example
A language-learning app has 1,200 paying subscribers on March 1. During March, 180 people subscribe for the first time and keep paid access through March 31. Paid access ends for 126 members of the start group. On March 31, it has 1,254 subscribers.
| March | Customers |
|---|---|
| Paying on March 1 (S) | 1,200 |
| Paying on March 31 (E) | 1,254 |
| New and still paying on March 31 (N) | 180 |
| Retained: 1,254 − 180 | 1,074 |
| Retention rate: 1,074 ÷ 1,200 | 89.5% |
The subscriber count grew by 54, but the app still lost 126 people, or 10.5% of the start group. Growth in the total can hide a retention problem.
Retention rate calculator
Enter the three counts for any period. The calculator also shows the churn rate for the same group.
Day N retention for apps
Apps often measure retention for users, not paying customers. The standard version follows an install cohort: all users who installed on the same day.
Most teams watch Day 1, Day 7, and Day 30. Day 1 shows whether the first session worked. Day 7 shows whether the app became a habit. Day 30 is closer to long-term use. The table below shows three weekly cohorts from one app.
| Install week | D1 | D7 | D30 |
|---|---|---|---|
| Aug 4–10 | 27% | 11% | 5% |
| Aug 11–17 | 28% | 12% | 5% |
| Aug 18–24 | 33% | 15% | 7% |
Read the table by column. Here, the August 18 cohort does better at every point, so look at what changed that week, such as a release, an onboarding change, or a new ad campaign.
Tools define a "day" differently. Some use calendar days in the user's time zone. Others use 24-hour windows from the install time. Use one definition and keep it, or your trend will move for no real reason.
Classic vs rolling retention
Classic retention (also called exact-day or N-day retention) counts a user only if they were active on day N itself. Rolling retention (also called unbounded retention) counts a user if they were active on day N or on any later day.
A user who opens a recipe app on day 3 and day 12 counts toward rolling Day 7 retention, but not classic Day 7 retention. Rolling retention is therefore always equal to or higher than classic retention. It suits apps people use now and then, like travel or tax apps. Its value for a cohort also keeps going up as later activity comes in, so recent cohorts look worse than old ones until they catch up. Use classic retention for apps meant for daily use, and say which method you use when you share a number.
Retention vs churn
For the same group and the same period, retention rate and churn rate add up to 100%. In the March example, 89.5% of the start group stayed and 10.5% churned.
This only works when both numbers use the same start group. A churn rate that divides by the average customer count, or by the end count, will not add up with a retention rate that divides by the start count.
Common mistakes
- Forgetting to subtract new customers. E ÷ S is a growth ratio, not a retention rate.
- Mixing customers and users. Customer retention uses paying customers. Day N retention uses all users. Label which one you report.
- Counting any event as "active." A push notification delivery or a background refresh is not use. Define active as a real session or a key action.
- Averaging percentages across cohorts. A cohort of 200 installs and a cohort of 20,000 should not count the same. Add up the retained users and the installs, then divide.
- Judging a cohort too early. A cohort that installed 10 days ago has no Day 30 value yet. Leave the cell empty, not zero.
Retention in apps
One retention number for the whole app is a start. Splitting cohorts is where you learn something. Compare cohorts by acquisition source, platform, and app version. A campaign that brings cheap installs with half the Day 7 retention of your organic users may cost more per retained user than it seems. Then compare user retention with paid retention, because an app can keep users who never pay.
In DataDad, Day 1, 7, and 30 retention sit in a cohort table by install week, and you can split it by campaign. See app analytics.
Questions
What is a good retention rate?
It depends on the category, price, and how often people need the product. Compare each cohort with your earlier cohorts first. A rising trend matters more than any single target.
Should I measure retention monthly or annually?
Use the period that matches how customers pay. Monthly plans suit monthly retention. For annual plans, measure retention at each renewal date.
How is customer retention different from revenue retention?
Customer retention counts people. Revenue retention measures how much recurring revenue from the start group remains, including upgrades and downgrades. See MRR.