What is the right way to compute true gross retention vs net retention when half your customers are on multi-year contracts with annual escalators?
Quick take: Compute retention on the contracted ARR base eligible for renewal in the period (not on total active ARR), normalize annual escalators OUT of NRR to avoid double-counting "expansion" you contractually pre-sold, and report GRR and NRR with the escalator-impact disclosed as a separate line. Bessemer, OpenView, and SaaStr all converge on this approach — escalators are contractual revenue inflation, not retention performance.
The Detail
The mistake is computing retention on YOUR fiscal calendar instead of on the CUSTOMER's contract anniversary. That works fine in a single-year world. It falls apart with multi-year contracts because (a) the customer isn't actually up for renewal in your fiscal period and (b) annual escalators inflate ARR without representing any renewal performance.
The Right Denominator: Eligible ARR
For a given period (typically a trailing 12 months), the denominator should be: ARR of customers whose contract anniversary falls within the period.
Customer A signed a 3-year deal in Jan 2024 with a 7% escalator. Their first true renewal opportunity is Jan 2027. In FY2025, they are NOT in your retention denominator. In FY2027, they are.
Customer B signed an annual deal in Mar 2024. They are in your retention denominator for any 12-month period containing Mar 2025.
This is the "cohort by anniversary" method — the approach Bessemer's Atlas memo and the Gainsight benchmarks both recommend.
Computing GRR
`` GRR = (Eligible ARR at anniversary - Churn - Downgrades) / Eligible ARR at anniversary ``
Importantly: ESCALATORS DO NOT APPEAR in GRR. They are pre-contracted price increases, not retention performance. If you let escalators inflate your numerator, you'll show a misleadingly high GRR.
Computing NRR
`` NRR = (Eligible ARR at anniversary - Churn - Downgrades + Expansion) / Eligible ARR at anniversary ``
Where Expansion includes:
- True upsell (more seats, more modules)
- Cross-sell (new product lines)
- Usage-based ARR growth (if you have usage tiers)
It does NOT include contracted escalators on existing scope. Those are reported as a separate "Contractual Price Escalation" line.
Why Separate the Escalator?
Two reasons. First, escalators reflect pricing power at contract signing, not retention performance. Sliding them into NRR conflates two different operating questions. Second, board sophistication is rising — investors increasingly ask for the breakdown, and showing it proactively builds credibility.
The Reporting Frame
| Metric | What It Captures | What It Excludes |
|---|---|---|
| GRR (Gross Retention Rate) | Customer dollar retention pre-expansion | Escalators, upsell, cross-sell |
| NRR (Net Retention Rate) | GRR + true expansion motion | Contractual escalators (reported separately) |
| NRR + Escalator | The "all-in" growth rate of existing book | Nothing — this is the headline if you want one number |
| Logo Retention | Customer count retention | Dollar impact, expansion, escalators |
| NDR (Net Dollar Retention) | Synonym for NRR in some firms | Same exclusions as NRR |
The Calculation Flow
Example: A Concrete Walkthrough
You have $10M ARR total. Of that, $4M is in customers whose anniversary falls in FY2025.
- Customer A: $1M ARR, anniversary in March, churns at renewal.
- Customer B: $500K ARR, anniversary in April, downgrades to $400K.
- Customer C: $1.5M ARR, anniversary in July, stable, 5% escalator triggers ($75K).
- Customer D: $1M ARR, anniversary in November, expands to $1.3M ($300K of true upsell, also 5% escalator $50K).
Eligible ARR: $4M
GRR Numerator: $4M - $1M (Customer A churn) - $100K (Customer B downgrade) = $2.9M GRR: $2.9M / $4M = 72.5%
NRR Numerator: $2.9M + $300K (Customer D true expansion) = $3.2M NRR: $3.2M / $4M = 80%
Escalator Impact: $75K + $50K = $125K, or 3.1% of eligible ARR.
NRR + Escalator: ($3.2M + $125K) / $4M = 83.1%
You report all three. The board can evaluate retention performance independently of pricing power.
Vendors and Tooling
- Gainsight — category-leading CS platform with native retention reporting; configure the cohort-by-anniversary view.
- ChartMogul or Maxio (formerly SaaSOptics) — billing-side analytics that compute these natively if your billing data is clean.
- Salesforce CPQ + Billing — generates the contract-level data you need; pair with a downstream reporting layer.
- Tableau or Looker — for the final board view.
Common Mistakes
- Computing retention on a fiscal-calendar denominator (mixes customers not up for renewal).
- Letting escalators inflate NRR without disclosure.
- Treating multi-year prepay discounts as "negative escalators" (they're not — they're contracted from day 1).
- Excluding churned-mid-contract customers because they "weren't supposed to" — yes they were, that's churn.
- Reporting only NRR with no GRR — boards now demand both.
Sources
- OpenView 2025 SaaS Benchmarks: https://openviewpartners.com/blog/saas-benchmarks/
- SaaStr — Retention Benchmarks: https://www.saastr.com/
- Gartner Sales Research: https://www.gartner.com/en/sales/research
- Bessemer Atlas — Retention Memos: https://www.bessemerventurepartners.com/atlas
- Salesforce CPQ + Billing: https://www.salesforce.com/products/cpq/overview/
- Gainsight Blog: https://www.gainsight.com/blog/
The retention number that flatters you is rarely the one that holds up under a partner-meeting cross-examination — show both.
TAGS: gross-retention, net-retention, saas-metrics, multi-year-contracts, rev-rec