SaaS

Gross Revenue Retention Calculator

Calculate how much recurring revenue from an existing cohort is retained before counting any expansion revenue.

Last reviewed: April 30, 2026Free toolMethodology

Gross Revenue Retention Calculator

These fields start with sample inputs. Keep them or replace them, then run the tool to show a fresh result.

Number fields accept plain values and common formatted input such as 250000, 250,000, or 1,234.56.

Result

Calculating the sample result.

Why it matters

GRR strips out the upside from expansion and focuses attention on how much recurring revenue was protected from contraction and churn.

When to use

  • Assessing baseline retention quality
  • Comparing segments where expansion varies a lot
  • Complementing NRR in reporting

Inputs & Outputs

Inputs

  • Starting MRR is the recurring revenue from the cohort at the start of the period.
  • Contraction and churned MRR are the losses from downsells and full customer churn.

Outputs

  • GRR shows the percentage of starting recurring revenue retained before expansion.
  • Gross revenue lost shows the absolute MRR erosion from contraction and churn.

GRR formula

Subtract contraction and churned MRR from starting MRR, then divide by starting MRR and convert to a percentage.

GRR = (start MRR - contraction - churn) / start MRR

Worked example

1

Retention baseline

A cohort begins at 500,000 in MRR, loses 20,000 to contraction and 30,000 to churn.

Inputs

  • Start MRR: 500,000
  • Contraction: 20,000
  • Churn: 30,000

Steps

  • Retained gross revenue = 500,000 - 20,000 - 30,000 = 450,000
  • GRR = 450,000 / 500,000 = 90%

Result

  • Gross revenue retention is 90%.

Edge cases & caveats

  • GRR does not reward expansion, by design.
  • A stable GRR can still hide growth if expansion is doing most of the work.

Frequently Asked Questions

Why report both GRR and NRR?

GRR shows the downside pressure from churn and contraction, while NRR shows the full cohort result after expansion.

Can GRR exceed 100%?

No. Expansion is excluded, so gross retention cannot exceed the starting recurring base.

Keep going