Plain-language questions
Ask for MRR growth rate per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
KPI · Subscriptions and SaaS
MRR growth rate is the change in MRR compared with the previous month, divided by the previous month's MRR, as a percentage. The change itself is called net new MRR: new customers plus expansion and reactivation, minus contraction and churn. MRR growth rate shows in one number whether your subscription business is growing, and how fast.
(MRR this month − MRR last month) ÷ MRR last month × 100%
MRR for Acme's subscription service rises from €40,000 to €41,800 in September. That comes from €2,600 new, €900 expansion and €100 reactivation, minus €400 contraction and €1,400 churn: €1,800 net. MRR growth rate is €1,800 ÷ €40,000 × 100% = 4.5%.
Fictitious figures for Acme Groothandel, a sample wholesaler.
A higher MRR growth rate means recurring revenue is increasing faster. Always look at the build-up: growth from expansion within existing accounts is usually cheaper than growth from new customers, and high churn can hide strong new sales. Compare over several months and against plan, since one large customer can move growth noticeably in a single month.
SQL & DAX
Two examples on a fictitious data warehouse for Acme Groothandel: a PostgreSQL query and a measure for a Power BI model. Adjust table and column names to your own model.
WITH monthly AS (
SELECT month,
SUM(CASE WHEN movement_type IN ('contraction', 'churn') THEN -amount ELSE amount END) AS net_new_mrr
FROM mrr_movements
GROUP BY month
),
running AS (
SELECT month, net_new_mrr,
SUM(net_new_mrr) OVER (ORDER BY month) AS mrr_end
FROM monthly
)
SELECT month, mrr_end, net_new_mrr,
ROUND(100.0 * net_new_mrr / NULLIF(mrr_end - net_new_mrr, 0), 1) AS mrr_growth_pct
FROM running
ORDER BY month;MRR Growth % =
VAR CurrentMRR = [MRR]
VAR PreviousMRR = CALCULATE([MRR], DATEADD('Date'[Date], -1, MONTH))
RETURN
DIVIDE(CurrentMRR - PreviousMRR, PreviousMRR)In ENABLE
Ask for MRR growth rate per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
Define the KPI as a measure in your Power BI model and show it in the portal, with "Last refreshed" next to it. Access profiles and optional row-level security decide who sees which figures.
Add the KPI as a tile to a custom dashboard, compared with last year. The Dashboard Builder is a pilot and can be switched on per client.
With the built-in Targets app you set a target for the KPI per month, so you see actuals and target side by side.
FAQ
Subtract last month's MRR from this month's MRR and divide the difference by last month's MRR. Going from €20,000 to €21,000 is an MRR growth rate of 5%. Split the difference into new, expansion, reactivation, contraction and churn to see where it comes from.
Net new MRR is the total change in MRR in a month: new MRR plus expansion and reactivation MRR, minus contraction and churn. It is the euro amount behind the growth percentage. A positive figure means MRR is growing.
Both: monthly growth shows changes quickly, while yearly growth is less sensitive to one-off spikes. Calculate yearly growth by comparing MRR with the same month last year, not by adding up monthly percentages. Twelve months of 3% growth is roughly 42.6% over the year, not 36%.
In an online demo we show how ENABLE makes your data securely available and how you build on it: describing an app in the AI Builder, plain-language questions, dashboards and APIs. And how we set it up and manage it for you.