# How to calculate MRR, and four ways it goes wrong

> MRR is the normalised monthly value of active subscriptions. Divide annual plans by twelve, exclude one-off charges, book the discounted amount actually charged, and exclude failed payments until they collect. The number is only useful broken into new, expansion, contraction and churn.

Source: https://rankcert.com/blog/how-to-calculate-mrr
Published: 2026-08-29 · Updated: 2026-09-01

---


MRR looks trivial to calculate and is wrong in most spreadsheets, always in the flattering direction.

## The definition

The normalised monthly value of all active recurring subscriptions, as of a point in time.

Every word is load-bearing. **Normalised** - annual plans divided by twelve. **Recurring** - one-off charges excluded. **Active** - cancelled and failed subscriptions excluded.

## The four ways it goes wrong

### Annual plans booked as a spike

A $1,200 annual plan is **$100 of MRR**, not $1,200 in the month it was paid.

Booking the full amount makes that month look enormous and every following month look like a collapse. It also makes your growth rate meaningless, because it depends on billing cycles rather than on the business.

### One-off charges included

Setup fees, overage charges, professional services and consulting are revenue, and they are not recurring. Including them inflates MRR and hides the fact that a chunk of your income is not repeatable.

Track them separately as non-recurring revenue. Both numbers matter; conflating them means neither is usable.

### Discounts booked at list price

If a customer pays $80 on a $100 plan, that is $80 of MRR. Booking list price and treating the discount as a marketing expense produces a number that will not reconcile to your bank account.

Same for annual plans sold at a discount - normalise the amount actually paid.

### Failed payments counted as active

A subscription in dunning is not revenue. Depending on your processor's retry schedule, a meaningful share of those never recover.

Exclude them from MRR while they are failing. If they collect, they come back.

## The breakdown that makes it useful

A single MRR figure tells you almost nothing. The movements do:

```
Starting MRR
  + New          first-time customers
  + Expansion    upgrades, seats, usage from existing customers
  − Contraction  downgrades
  − Churn        cancellations
= Ending MRR
```

Two businesses both growing 10% a month:

- **A:** +10% new, 0% churn.
- **B:** +30% new, −20% churn.

Identical headline growth, completely different companies. B is filling a leaking bucket and will stall the moment acquisition slows. Only the breakdown shows it.

## Net revenue retention

Once you have the movements:

```
NRR = (Starting + Expansion − Contraction − Churn) ÷ Starting
```

Above 100% means your existing customers generate more revenue over time than you lose - revenue grows even with zero new customers. It is the strongest signal in SaaS and rare below a few hundred customers.

## ARR is not a separate metric

ARR is MRR × 12. Nothing more.

Quoting ARR for a business on monthly plans with 8% monthly churn implies a year of revenue that will not exist. Use ARR when contracts are genuinely annual; otherwise it is a bigger number rather than a better one.

<Callout>
Reconcile MRR to your payment processor's actual deposits every month. If they diverge and you cannot explain the gap, one of the four errors above is in your spreadsheet.
</Callout>

<Cta />
