Gross revenue retention (GRR) is the share of starting recurring revenue kept from existing customers over a period, after downgrades and churn but not expansion, so it never exceeds 100%.
A worked example
An example with round numbers. A group of existing customers starts the year at $500,000 of ARR. During the year, cancellations take out $40,000 and downgrades another $10,000. The same customers also add $80,000 in expansion. GRR is ($500,000 − $40,000 − $10,000) ÷ $500,000 = 90%. The expansion is ignored for GRR; counting it gives a net revenue retention of 106%. A business can post that healthy NRR while losing a tenth of its base every year, which is why the two are read together.
What the benchmarks say, and what moves it
Benchmarkit's 2026 benchmark report shows median gross revenue retention fell from 88% to 84% in 2025, the largest one-year drop in its four-year series. SaaS Capital's 2025 survey of private B2B SaaS companies puts median gross retention at 91%, and 94% on multi-year contracts versus 90% on annual ones, though contract length tracks customer size, so that is not a controlled comparison. The levers are mostly operational: renewals worked early, failed payments recovered before they become involuntary churn, and every cancellation recorded with a reason, so you know which losses were preventable.
In Salesforce
Salesforce has no GRR field. You calculate it from the same records as net revenue retention: recurring revenue for each customer at the start of the period, then every downgrade and cancellation against those customers, with expansion left out. On standard objects that takes a custom ARR field and a record of what was lost, because a Contract that simply reaches its end date leaves no churn amount behind. Salesforce CPQ holds the install base as SBQQ__Subscription__c records under the Contract. Revenue Cloud Advanced holds it on Asset, and amendments, renewals and cancellations are recorded against the asset.
How Kugamon handles it
Kugamon keeps the churn and contraction side of GRR as records. With the Subscription Management add-on, Cancel Contract sets the Contract's active Subscriptions to Cancelled and closes the Renewal Opportunity as Lost, and the cancelled Subscription records stay on the Contract, so the lost revenue stays reportable. Cancelling a single Subscription sets its status to Cancelled and removes it from the Renewal Opportunity. The Contract rolls up ARR, MRR and TCV, and the Subscription Active Check job, recommended hourly, keeps each Subscription's IsActive flag current. Kugamon does not compute GRR as a field; you report it from these records against a snapshot of starting ARR.
Related terms
- Net revenue retention (NRR)
- Annual recurring revenue (ARR)
- Involuntary churn
- Dunning
- Amendment
- Renewal uplift
Source: www.benchmarkit.ai