Skip to content

Retention rate: formula, types and how to read a cohort table

Updated 7 min readBy Max Beech

Retention rate is the percentage of customers or users still active or paying at the end of a period, out of those you had at the start. The formula is (customers at end - new customers gained) / customers at start, so starting with 200 customers, gaining 40 and ending with 220 gives (220 - 40) / 200 = 90%.

Types of retention rate, their formulas and when to use each
TypeFormulaBest for
Customer retention rate(Customers at end - new customers) / customers at startSubscription businesses counting paying accounts
N-day retentionUsers active on day N / users in the cohortProducts meant to be used daily, such as consumer apps
Unbounded retentionUsers active on day N or any later day / users in the cohortProducts used irregularly, where a quiet day is not a loss
Bracket retentionUsers active within a window, such as days 7 to 13 / users in the cohortProducts with a weekly or monthly rhythm
Net revenue retention(Start MRR + expansion - contraction - churned MRR) / start MRRRevenue from an existing customer base, including upsells
Gross revenue retention(Start MRR - contraction - churned MRR) / start MRRRevenue kept before any upsell, capped at 100%

How to calculate retention rate: a worked example

The standard customer retention rate formula is:

retention rate = (customers at end of period - new customers during period) / customers at start of period

Take a product that starts the quarter with 200 paying customers, gains 40 new ones and finishes with 220.

  • Customers at end: 220
  • New customers during the quarter: 40
  • Customers kept from the start: 220 - 40 = 180
  • Retention rate: 180 / 200 = 90%

Subtracting new customers is the step people forget. Without it you would get 220 / 200 = 110%, which only tells you the business grew, not whether it kept anyone.

For the same customers and period, retention rate and churn rate add up to 100%: here, 10% of the starting customers left. See the churn rate guide for the churn side and for converting between monthly and annual figures.

Choose the period to fit how customers pay and use the product. Monthly works for monthly plans. Quarterly or annual suits annual contracts, where customers can only leave at renewal and a monthly figure would look perfect for eleven months.

N-day, unbounded and bracket retention

For user activity rather than paying accounts, product analytics tools usually offer three ways to define "retained". They answer different questions, so the choice matters.

N-day retention

A user counts as retained on day 7 only if they were active on day 7 exactly. It is strict and suits products people should use every day. For a tool used once a week, it will look alarmingly low and bounce around depending on which weekday people signed up.

Unbounded retention

A user counts as retained on day 7 if they were active on day 7 or on any day after it. It answers "has this person come back at least once from this point on?" It is always equal to or higher than N-day retention, and it keeps changing for recent cohorts as more days pass, so compare cohorts of the same age.

Bracket retention

You define windows that match your product's rhythm, such as days 1 to 6, 7 to 13 and 14 to 29, and count users active at any point in each window. This is often the most honest choice for weekly or monthly tools, because it forgives a quiet day without pretending an absent month does not matter.

Whichever you pick, define "active" as doing something valuable, not simply opening the app.

Reading a cohort retention table

A cohort retention table groups users by when they signed up and shows the share still active at each later interval. An illustrative example with made-up numbers, using weekly bracket retention:

Sign-up weekUsersWeek 1Week 2Week 4Week 8
1 June31044%35%29%26%
8 June28546%37%31%28%
15 June33052%42%36%not yet
22 June29551%41%not yetnot yet

Three ways to read it:

  • Reading along a row shows how one cohort decays. Here each cohort drops fast in the first weeks and then levels off, which is what a product with real users looks like. A row that keeps falling towards zero is a warning sign.
  • Reading down a column compares cohorts at the same age. Week 1 retention jumped from the 15 June cohort, so it is worth checking what shipped that week.
  • Reading the diagonal shows everyone's activity in the same calendar week, which helps spot outages, seasonality or a marketing email that briefly brought people back.

In GA4, a Cohort exploration builds this kind of table from any event you choose as the inclusion and return conditions.

Net revenue retention

Net revenue retention (NRR) measures how much recurring revenue you keep from an existing group of customers over a period, counting upgrades as well as losses. New customers are excluded.

NRR = (start MRR + expansion - contraction - churned MRR) / start MRR

A worked example over a year, for customers who were paying £10,000 a month at the start:

  • Expansion (extra seats and upgrades): £2,000
  • Contraction (downgrades): £500
  • Churned (cancellations): £1,000
  • NRR = (10,000 + 2,000 - 500 - 1,000) / 10,000 = 105%

Above 100% means the customers you already had are worth more than they were a year ago, even after losses. That is why seat-based and usage-based products track it so closely: a business with NRR above 100% keeps growing revenue from its existing base even with no new sales.

Gross revenue retention (GRR) uses the same inputs without expansion: (10,000 - 500 - 1,000) / 10,000 = 85%. GRR can never exceed 100%, and it shows how much revenue leaks out before upsells mask it. Report both.

Customer retention vs user retention

The two are easy to mix up, and they often move in different directions.

Customer retention counts accounts that are still paying. It is a finance and revenue measure, and it is what the formula at the top of this page calculates.

User retention counts people who are still actively using the product. It is a product measure, and it usually leads customer retention: users drift away first, and the account cancels at the next renewal.

In a B2B product the gap can be large. A company account can stay paid for months while only one of its twenty seats is active. That account looks retained in the billing data and is quietly at risk. Tracking seat-level activity inside each account gives you warning before the renewal conversation.

In a consumer product the two are closer, but free users complicate things. Decide whether your headline figure covers paying customers only or all active users, and label every chart so nobody compares one with the other.

How OpenHelm helps

Retention is easy to measure once and hard to keep watching. In OpenHelm, a journey analyst agent maps your product's key user journeys from GA4 events and files a task, with the evidence, wherever users stall. Funnels, retention and audience appear as charts and data tables that the agents keep current, alongside the rest of the work being done on the product. If the product has no analytics at all, OpenHelm files a task and can create the GA4 property and data stream for you, then wire the measurement ID into your deployment. Because the analyst reads the same events every time it runs, a new stall shows up as a task with the numbers attached rather than being spotted by chance a month later. See user funnels.

Questions

What is the formula for retention rate?

Retention rate = (customers at end of period - new customers gained during the period) / customers at start of period. Multiply by 100 for a percentage.

What is the difference between retention rate and churn rate?

For the same customers and period they add up to 100%. Retention rate is the share who stayed; churn rate is the share who left.

What is N-day retention?

The share of a cohort active on exactly day N after sign-up. It is strict, so it suits daily-use products better than tools people use weekly or monthly.

Can net revenue retention be above 100%?

Yes. If expansion from existing customers is larger than the revenue lost to downgrades and cancellations, NRR exceeds 100%. Gross revenue retention, which ignores expansion, cannot.

How do I measure retention in GA4?

Use a Cohort exploration in Explorations, choosing the event that defines a new user as the inclusion condition and the event that counts as activity as the return condition.

Give your product a team that never clocks off.

Start free in the browser, or run it on your Mac with your own Claude Code or Codex plan.