Formula

text
GRR(cohort, month n) = min(net revenue(n), net revenue(0)) per customer, summed / net revenue(cohort, month 0) × 100

For each customer in a cohort, cap their later-month revenue at their first-month revenue so upgrades do not count, sum across the cohort, and divide by the cohort’s first-month revenue.

Worked example

Inputs for the example
Cohort month 010 customers × $20 = $200
Month 32 cancelled, 1 upgraded to $49, 7 unchanged
  1. Capped month 3: 7 × $20 + 1 × $20 (capped) = $160
  2. $160 / $200 × 100 = 80%

GRR at month 3 is 80%, while NRR would be (7 × $20 + $49) / $200 = 94.5%.

How ProductLense shows it

ProductLense v1 shows net revenue retention by channel, not gross retention, on the Revenue page. The churned MRR figure on the same page shows the revenue lost to cancellations in the selected period, which is the leak GRR measures.

Gross retention needs per-customer revenue by month, which ProductLense stores from billing connections. With a connection in place you can read churned MRR per period today; a GRR cohort view is not part of v1.

GRR: questions

What is GRR?
Gross revenue retention (GRR) is the share of a cohort’s starting revenue still paid in a later month, counting downgrades and churn but not upgrades. Because it ignores expansion, it isolates how much revenue leaks out, which is the number to fix first when a channel brings customers who cancel early.
How do you calculate GRR?
For each customer in a cohort, cap their later-month revenue at their first-month revenue so upgrades do not count, sum across the cohort, and divide by the cohort’s first-month revenue. For example, ten $20 customers where two cancel and one upgrades gives 80% GRR but 94.5% NRR.
Where does ProductLense show GRR?
ProductLense v1 shows net revenue retention by channel, not gross retention, on the Revenue page. The churned MRR figure on the same page shows the revenue lost to cancellations in the selected period, which is the leak GRR measures.
What does ProductLense need to calculate GRR?
Gross retention needs per-customer revenue by month, which ProductLense stores from billing connections. With a connection in place you can read churned MRR per period today; a GRR cohort view is not part of v1.
How is GRR different from NRR?
GRR ignores upgrades and tops out at 100%; NRR includes upgrades and can exceed it. Read them together: a high NRR can hide a low GRR when a handful of customers expand while many cancel.

Free up to 10k events a month. No card.

Add the script, connect Stripe or any of 14 other billing providers, and see revenue by channel the same day.