The net revenue retention formula is NRR = (starting MRR + expansion − contraction − churn) ÷ starting MRR × 100, calculated only for customers who were active at the start of the period. A result above 100% means revenue from existing customers grew, even before counting new sales.
This guide is for finance teams, SaaS operators, and subscription businesses that report recurring revenue to leadership or investors. It covers the NRR formula, a worked example, the gross revenue retention (GRR) formula, how NRR compares with GRR and NDR, sourced benchmarks, a free calculator, and how to improve the number.
NRR = (Starting MRR + Expansion − Contraction − Churn) ÷ Starting MRR × 100
GRR = (Starting MRR − Contraction − Churn) ÷ Starting MRR × 100
Starting MRR = recurring revenue from existing customers at period start
Expansion = upgrades, upsells, add-ons from those same customers
Contraction = downgrades and reduced plans
Churn = recurring revenue lost to cancellations
New customers = excluded from both formulas
What is "net revenue retention"?
Net revenue retention measures how much recurring revenue you kept from the same customer base over a period, after churn, downgrades, and expansion. If you start with $100,000 in recurring revenue, lose $8,000 to churn and downgrades, gain $12,000 from upsells, and end at $104,000, your NRR is 104%.
The net revenue retention formula is used to evaluate the quality of a recurring revenue book, not just the size of the top line. It gives leadership a clear view of customer health, product adoption, and whether existing accounts are expanding enough to offset churn and downgrades. That makes it a core metric in board reporting, forecasting, and revenue operations.
Many teams still track retention with spreadsheets, CRM reports, or billing exports stitched together by hand. Those methods work at a small scale, but they often create mismatches between invoiced amounts, recognized revenue, and customer-level changes. Pelcro reduces that friction by connecting subscription management, billing, and revenue workflows in one system, so retention analysis is built on cleaner operational data.
For a broader look at what the metric says about a business, see what NRR tells you about subscription health.
How do you calculate net revenue retention?
Calculate net revenue retention in four steps: fix the cohort, record its starting MRR, sort every revenue change into expansion, contraction, or churn, then apply the formula. The example below uses illustrative numbers, not benchmark data.
| Step | Input | Amount |
|---|---|---|
| 1. Starting MRR (existing customers on day one) | Cohort revenue at period start | $100,000 |
| 2. Add expansion | Upgrades and add-ons | + $12,000 |
| 3. Subtract contraction | Downgrades | − $3,000 |
| 4. Subtract churn | Cancellations | − $5,000 |
| 5. Ending cohort MRR | $100,000 + $12,000 − $3,000 − $5,000 | $104,000 |
| 6. NRR | $104,000 ÷ $100,000 × 100 | 104% |
The most important step is defining the cohort correctly. Use only customers who were active at the start of the period and exclude new business, since new revenue can mask churn and make the metric look stronger than it is. That is why the net revenue retention formula differs from a general growth rate: it isolates how well your current base is performing.
Next, separate revenue movement into the right buckets. Churn removes a customer's revenue entirely, contraction captures downgrades, and expansion reflects upsell or cross-sell activity. Leaving contraction out of the formula is a common mistake, and it inflates NRR every month that customers downgrade.
A reliable process also requires consistent timing. Monthly billing changes, annual contract upgrades, prorations, credits, and cancellations need the same period rules each time. Without that discipline, the net revenue retention formula can swing because the operational data is uneven, not because customer behavior changed.
Gross revenue retention formula
Gross revenue retention (GRR) uses the same cohort and the same starting MRR, but ignores expansion. It shows how much of the original revenue you kept before any upsells.
Using the example above, GRR = ($100,000 − $3,000 − $5,000) ÷ $100,000 × 100 = 92%. The same cohort has an NRR of 104%, so expansion added 12 points on top of the revenue that was retained.
Because GRR excludes expansion, it can never exceed 100%. That makes it a cleaner signal of churn and downgrade risk, while NRR shows whether expansion is strong enough to cover those losses.
NRR vs GRR vs NDR
The three metrics are closely related. The difference is what each one counts.
| Metric | Formula | Includes expansion? | Can exceed 100%? |
|---|---|---|---|
| Net revenue retention (NRR) | (Start + expansion − contraction − churn) ÷ start | Yes | Yes |
| Gross revenue retention (GRR) | (Start − contraction − churn) ÷ start | No | No |
| Net dollar retention (NDR) | Same as NRR, expressed in dollars | Yes | Yes |
Stripe notes that NRR and net dollar retention are often used interchangeably in SaaS. In practice, check how a company defines NDR before comparing it with your own NRR.
Try the NRR and GRR calculator
Enter your cohort's starting MRR and its expansion, contraction, and churn for the period.
What is a good net revenue retention rate?
The most widely used benchmark line is 100%. ChurnZero states that anywhere above 100% is considered a good net revenue retention rate across SaaS and subscription businesses.
Stripe breaks the range down further:
- Above 100%: the business is retaining most or all of its customers and growing revenue from upsells and expansion.
- 80% to 100%: the business is retaining most customers but may not be growing revenue from them as much as it could.
- Below 80%: generally considered low.
Benchmarks vary by business model. Consumer subscriptions and media businesses with few upgrade paths usually have less expansion revenue than B2B software with seat-based pricing, so track your own trend over time alongside these ranges.
How to improve net revenue retention
Every term in the net revenue retention formula is a lever. Raise expansion, and cut contraction and churn.
Recover failed payments. Involuntary churn from expired or declined cards removes revenue from customers who never chose to leave. Smart retries, card updaters, and dunning emails can recover part of it, as covered in our guide to failed payment recovery.
Build upgrade paths. Premium tiers, add-on products, and group or corporate subscriptions give existing customers a reason to spend more. Expansion is the only term in the formula that can push NRR above 100%.
Reduce downgrades with better packaging. If customers downgrade because they only use part of a plan, a well-placed middle tier keeps them from dropping to the cheapest option. Our guide to pricing strategies that improve revenue retention covers how to structure tiers and offers.
Make cancellation a conversation. Offer a pause, a downgrade, or a retention discount at the point of cancellation. A paused account you win back later is better than a churned one.
Watch churn and MRR monthly. Track the inputs, not just the result. Our free churn rate calculator and guide to MRR help you measure the numbers that feed NRR.
How Pelcro solves net revenue retention reporting
Pelcro helps teams calculate and trust the net revenue retention formula by centralizing subscription billing, customer lifecycle events, and revenue operations in one workflow. Instead of pulling numbers from disconnected systems, finance and operations teams work from a unified record of subscriptions, invoices, renewals, upgrades, and cancellations.
That matters because the quality of the net revenue retention formula depends on the quality of the underlying data. Pelcro reduces manual reconciliation by aligning billing activity with customer account history, which makes expansion, contraction, and churn easier to trace. The result is cleaner reporting and less time spent validating spreadsheets before leadership meetings.
Pelcro also supports the broader contract-to-cash process, which keeps retention analysis tied to real billing events. Automated invoicing, subscription management, and revenue recognition workflows show how customer actions affect recurring revenue across the full lifecycle. That gives finance teams visibility into the revenue retention rate without rebuilding it manually every month.
For businesses comparing gross retention vs net retention, Pelcro provides the operational clarity needed to understand both. Gross retention shows how much recurring revenue was preserved before expansion, while net retention shows whether growth from the existing base offsets losses.
Frequently Asked Questions
What does the net revenue retention formula measure?
It measures how recurring revenue from the same customer cohort changes over time after accounting for churn, contractions, and expansions. It is one of the clearest ways to evaluate subscription health.
How is net revenue retention different from gross retention?
Gross retention vs net retention is a useful comparison because gross retention measures revenue kept before expansion, while net retention includes upsells and cross-sells. Gross retention is capped at 100%, while net retention can exceed it.
What is a good revenue retention rate?
An NRR above 100% is widely considered good, because it means expansion outpaces churn and downgrades. Stripe describes 80% to 100% as retaining most customers without much growth, and below 80% as generally low.
Should new customers be included in the net revenue retention formula?
No. The formula only counts customers who were active at the start of the period. Revenue from new customers belongs in growth metrics, otherwise it hides churn and inflates NRR.
Is NRR the same as NDR?
In most SaaS reporting, net revenue retention and net dollar retention describe the same calculation and are used interchangeably. Confirm the definition before comparing your number with another company's.
Why do finance teams struggle with the net revenue retention formula?
Teams often struggle because the data lives in separate billing, CRM, and spreadsheet workflows. When those systems do not align, the calculation becomes harder to trust and explain.
