EnableYourData.com

KPI · Abonnementen en SaaS

Omzetchurn (MRR-churn): formule en voorbeeld.

Omzetchurn is de MRR die je in een periode verliest door opzeggingen en downgrades, gedeeld door de MRR aan het begin van die periode, in procenten. Waar klantchurn klanten telt, meet omzetchurn wat die vertrekkende of krimpende klanten waard waren. Als je uitbreidingsomzet ervan aftrekt, krijg je de netto omzetchurn.

Formule voor omzetchurn (MRR-churn)

(Churn-MRR + inkrimpings-MRR) ÷ MRR aan het begin van de periode × 100%

Rekenvoorbeeld

De abonnementsdienst van Acme begint september met € 40.000 MRR. Door opzeggingen verdwijnt € 1.400 en door downgrades € 400. De omzetchurn is (€ 1.400 + € 400) ÷ € 40.000 × 100% = 4,5%. Met € 900 uitbreiding erbij is de netto omzetchurn (€ 1.800 − € 900) ÷ € 40.000 × 100% = 2,25%.

Fictieve cijfers van Acme Groothandel.

Zo lees je deze KPI

Een lagere omzetchurn betekent dat je meer van je bestaande terugkerende omzet behoudt. Vergelijk hem met de klantchurn: is de omzetchurn veel hoger, dan vertrekken vooral grote klanten, wat extra aandacht vraagt. Een netto omzetchurn onder nul betekent dat uitbreiding bij bestaande klanten het verlies meer dan goedmaakt.

Valkuilen bij omzetchurn (MRR-churn)

  • Niet vastleggen of inkrimping (downgrades) wel of niet meetelt, waardoor cijfers tussen rapporten verschillen.
  • Bruto en netto omzetchurn door elkaar gebruiken.
  • MRR van nieuwe klanten uit dezelfde maand meenemen in de beginwaarde.

SQL & DAX

Omzetchurn (MRR-churn) berekenen in SQL en DAX

Twee voorbeelden op een fictief datawarehouse van Acme Groothandel: een query in PostgreSQL en een measure voor een Power BI-model. Pas tabel- en kolomnamen aan je eigen model aan.

SQL · PostgreSQL
WITH monthly AS (
  SELECT month,
         SUM(amount) FILTER (WHERE movement_type IN ('churn', 'contraction')) AS lost_mrr,
         SUM(CASE WHEN movement_type IN ('churn', 'contraction') THEN -amount ELSE amount END) AS net_new_mrr
  FROM mrr_movements
  GROUP BY month
),
with_start AS (
  SELECT month, lost_mrr,
         SUM(net_new_mrr) OVER (ORDER BY month) - net_new_mrr AS start_mrr
  FROM monthly
)
SELECT month, start_mrr, lost_mrr,
       ROUND(100.0 * lost_mrr / NULLIF(start_mrr, 0), 1) AS revenue_churn_pct
FROM with_start
ORDER BY month;
DAX · Power BI
Revenue Churn % =
VAR StartMRR = CALCULATE([MRR], DATEADD('Date'[Date], -1, MONTH))
VAR LostMRR =
    CALCULATE(SUM(MrrMovements[amount]), MrrMovements[movement_type] IN {"churn", "contraction"})
RETURN
    DIVIDE(LostMRR, StartMRR)

In ENABLE

Deze KPI volgen in ENABLE

Vragen in gewone taal

Vraag naar omzetchurn (MRR-churn) per maand, klant of product in de SQL Explorer met AI. De AI schrijft de SQL, jij ziet de query en voert hem zelf uit; de AI krijgt alleen metadata.

Lees meer →

In je Power BI-dashboard

Leg de KPI vast als measure in je Power BI-model en toon hem in het portaal, met "Laatst ververst" erbij. Toegangsprofielen en optioneel row-level security bepalen wie welke cijfers ziet.

Lees meer →

Eigen dashboards (pilot)

Zet de KPI als tegel in een eigen dashboard, met vergelijking met vorig jaar. De Dashboard Builder is een pilot en per klant aan te zetten.

Lees meer →

Doelen per maand

Met de ingebouwde app Targets leg je per maand een doel voor de KPI vast, zodat je realisatie en doel naast elkaar ziet.

Lees meer →

FAQ

Veelgestelde vragen

Hoe bereken je omzetchurn?

Je telt de MRR die verloren gaat door opzeggingen en downgrades en deelt dat door de MRR aan het begin van de periode. Bij € 50.000 begin-MRR en € 1.500 verlies is de omzetchurn 3%. Vermeld of inkrimping meetelt.

Wat is het verschil tussen bruto en netto omzetchurn?

Bruto omzetchurn telt alleen verloren MRR door opzeggingen en downgrades. Netto omzetchurn trekt daar de uitbreidingsomzet van bestaande klanten van af. Netto omzetchurn kan negatief zijn als bestaande klanten meer uitbreiden dan er wegvalt.

Wat betekent negatieve churn?

Negatieve churn betekent dat de uitbreidingsomzet van bestaande klanten groter is dan de omzet die je verliest door opzeggingen en downgrades. Je terugkerende omzet uit bestaande klanten groeit dan, ook zonder nieuwe klanten. Het is hetzelfde als een netto omzetretentie boven 100%.

AI gebruiken op je eigen data. Veilig, en zonder hoofdpijn.

In een online demo laten we zien hoe ENABLE je data veilig beschikbaar maakt en hoe je erop bouwt: een app beschrijven in de AI Builder, vragen in gewone taal, dashboards en API's. En hoe wij het voor je inrichten en beheren.