Failed Payments Aren’t Churn: Calculating GRR and NRR Correctly

Failed card retries that re-create subscriptions inflate SaaS churn and understate retention. How to spot it, fix it, and calculate GRR and NRR the way buyers do.

The short answerWhen a card fails and the retry creates a new subscription, billing records a cancellation and a new customer for what was really one continuous customer. Churn goes up, new business goes up, and GRR and NRR go down. Reclassify re-created subscriptions before they reach your metrics, and write the rule down.

How it happens

A customer's card expires. Your billing system retries, fails, and eventually cancels the subscription. A few days later the customer updates the card, and depending on how billing is set up, that creates a brand-new subscription, sometimes a brand-new customer record.

In the raw data, that is one cancellation and one new customer. In reality, nothing happened. The customer never left.

It shows up in other ways too: an entity migration that moves customers to a new billing account, a plan change implemented as cancel-and-replace, or a sales rep who re-creates a deal instead of amending it.

How big the distortion gets

In our fictional Demo Co, 19 subscriptions cancelled in August. Fourteen of them were failed card payments that came back as new subscriptions within a few weeks. Reported August churn was $7.9K of MRR. Real churn was $2.4K.

Across the year, the effect on retention looks like this, for the group of customers Demo Co had twelve months ago:

As reportedCorrected
Starting MRR, 12 months ago$200.0K$200.0K
Expansion+$16.4K+$16.4K
Contraction−$3.2K−$3.2K
Churn−$13.8K−$5.2K
Gross revenue retention91.5%95.8%
Net revenue retention99.7%104.0%

The $8.6K difference didn't vanish. It reappeared as new business, which made new-customer numbers look better and retention look worse. Both are wrong in a way that matters: NRR under 100% tells a board the installed base is shrinking.

The formulas

Gross revenue retentionGRR = (Starting MRR − Contraction − Churn) ÷ Starting MRR
Net revenue retentionNRR = (Starting MRR + Expansion − Contraction − Churn) ÷ Starting MRR

Both are measured on a fixed group of customers: everyone who was paying at the start of the period. New customers acquired during the period are excluded. That is exactly why re-created subscriptions do so much damage: the original customer shows as lost, and the replacement is excluded as new.

See the glossary entries for GRR and NRR for benchmarks and more examples.

The rules to write down

  • Re-activation window. A customer who cancels and returns within a set window, often 30 days, is treated as continuous. Pick the window and keep it.
  • Matching. How you recognize the same customer across records: customer ID, email domain, or your customer crosswalk.
  • Voluntary versus involuntary. Track both. Involuntary churn that is never recovered is real churn, and a dunning problem worth fixing.
  • Cancel-and-replace. Plan changes implemented as a new subscription are expansion or contraction, not churn plus new business.

How to find it in your own data

  1. Export cancellations and new subscriptions for the last twelve months.
  2. Match cancellations to new subscriptions for the same customer within 30 days.
  3. Total the MRR of the matches. That is the churn you are over-reporting, and the new business you are over-crediting.

If the number is material, restate the history consistently and tell your board once, with the rule you are applying from now on. Buyers and investors will rebuild retention from your billing data during diligence; better that their number matches yours.

Common questions

How do you calculate gross revenue retention?

GRR = (starting MRR − contraction − churn) ÷ starting MRR, measured for a fixed group of customers over a period, usually 12 months. Expansion is excluded, so GRR can never exceed 100%.

How do you calculate net revenue retention?

NRR = (starting MRR + expansion − contraction − churn) ÷ starting MRR, for the same fixed group of customers over the same period. Above 100% means existing customers grew.

Is involuntary churn real churn?

Yes, when the customer is actually lost. A failed payment that is recovered, or a subscription re-created by a retry, is not churn and should not be reported as churn.

Ryan Erwin
Ryan ErwinFounder & Fractional CFO at Prinsee. Ten years in finance and analytics, from Big4 Advisory to SaaS reporting for boards and buyers. More about Ryan.

Your next board meeting is coming either way.

Thirty minutes. Bring your last board deck or your messiest spreadsheet. You’ll leave with three things to fix, whether we work together or not.