How to calculate MRR and ARR, with examples

MRR is the monthly value of every active subscription, with yearly plans divided by 12; ARR is MRR × 12. Worked examples with monthly, yearly and enterprise plans, what does not count, the MRR bridge from new to churned, MRR growth, and DAX, SQL and Excel.

Short answer: MRR (monthly recurring revenue) is the sum of what every active subscription is worth per month, with yearly plans divided by 12. 300 customers at €49 a month, 60 at €468 a year and 10 at €12,000 a year make €14,700 + €2,340 + €10,000 = €27,040 MRR. ARR (annual recurring revenue) is MRR × 12 = €324,480.

MRR is the heartbeat of a subscription business: new customers, upgrades, downgrades and cancellations all move it. It is simple to define and easy to inflate by accident, usually by counting money that will not come back every month.

How do you calculate MRR?

Take every active subscription, turn its price into a monthly amount, and add them up:

PlanCustomersPricePer month eachMRR
Monthly300€49 a month€49€14,700
Yearly60€468 a year468 ÷ 12 = €39€2,340
Enterprise10€12,000 a year12,000 ÷ 12 = €1,000€10,000
Total€27,040

Use what the customer actually pays: a customer on a 20% discount adds 80% of the list price. Stripe's billing analytics count it the same way, "summing the monthly-normalized amounts of all active subscriptions", where "an annual subscription for $1,200 only counts $100 towards your MRR."

What does not count as MRR?

CountsDoes not count
Active monthly, yearly and multi-year plans, per monthOne-off setup or onboarding fees
Fixed monthly add-onsConsulting and services billed once
Committed minimum usageUsage above the commitment that varies month to month
Price after discountsFree trials, until they pay

The other common mistake is booking a yearly plan in the month it is paid: €5,616 paid in January by 12 yearly customers is €468 of MRR every month, not €5,616 in January and nothing after. That is cash; MRR is what recurs.

How do you calculate ARR?

ARR = MRR × 12

€27,040 × 12 = €324,480. ARR is a run rate: what the subscriptions active today would bring in over a year if nothing changed. It is not this year's revenue, which also has the months before today's customers joined and the one-off fees MRR leaves out. Never annualise one strong month of usage revenue into ARR.

What makes MRR go up and down?

Split the change into four parts, the MRR bridge:

MovementMRR
MRR at the start of the month€25,000
+ New (new customers)+ €2,600
+ Expansion (upgrades, more seats)+ €900
− Contraction (downgrades)− €300
− Churn (cancellations)− €1,160
MRR at the end of the month€27,040

One total hides which part moved. A month where MRR grew because new sales covered heavy churn is a different business from one where existing customers grew; the bridge shows which.

How do you calculate MRR growth?

MRR growth = (MRR this month − MRR last month) ÷ MRR last month × 100

(27,040 − 25,000) ÷ 25,000 = 8.2% month on month. Net MRR churn, the contraction and churn minus expansion as a share of starting MRR, is (300 + 1,160 − 900) ÷ 25,000 = 2.2%.

How do you calculate MRR in Power BI with DAX?

As KPI Atlas gives it, from a Subscriptions table with each subscription's monthly value in an MRR column:

MRR =
CALCULATE ( SUM ( Subscriptions[MRR] ), Subscriptions[Status] = "Active", LASTDATE ( 'Date'[Date] ) )
ARR = [MRR] * 12

LASTDATE takes the subscriptions active on the last day of the period, so a month shows its closing MRR rather than adding up every day.

How do you calculate MRR in SQL and Excel?

SQL, from a monthly snapshot of subscriptions:

SELECT month, SUM(mrr) AS mrr FROM subscriptions WHERE status = 'active' GROUP BY month ORDER BY month;

Excel, with the month in A2:

=SUMIFS(Subs[MRR], Subs[Month], A2, Subs[Status], "Active")

How should you show MRR?

An area chart of MRR over time shows the shape of growth. A waterfall from last month's MRR to this month's (new, expansion, contraction, churn) is the bridge above as a picture. A card with current MRR and its month-on-month growth belongs at the top of the page.

Read it with net revenue retention, churn rate and customer lifetime value.

Where can you check this?

Where do you find MRR and the SaaS KPIs around it?

KPI Atlas has MRR, ARR, MRR growth rate and net MRR churn, each with its formula, the DAX, SQL and Excel above, the mistakes to avoid and its best charts drawn, next to net revenue retention and churn. It holds 455 KPIs for 30 areas of a business.

The tool

Do it in your browser.

Data

KPI Atlas

455 KPIs for 30 areas of a business, each with its definition, formula, DAX, SQL and Excel, a benchmark, the mistakes to avoid, and the charts that show it best, drawn.

Keep reading

More from the blog.

Every post