Dashboard voor groeimetrieken: Een Playbook voor Oprichters
CAC, LTV en churn tracking voor startende startups.
Deze gids laat je precies zien welke groeimetrieken je moet volgen, hoe je ze moet berekenen en hoe je een simpel maar betrouwbaar dashboard kunt bouwen. Het geeft de voorkeur aan heldere definities, minimale aannames en formules die je direct in een spreadsheet of je data warehouse kunt plakken.
Waar Dit Dashboard Voor Is
Een goed gebouwd groei-dashboard is niet zomaar een verzameling grafieken; het is een machine voor het nemen van beslissingen. Dit playbook zal je helpen om:
- De gezondheid van je groei in één oogopslag te zien: Begrijp direct je acquisitie-efficiëntie, de kwaliteit van je klantenbinding en hoe snel je je investering terugverdient.
- Beslissen waar je je middelen in wilt investeren: Identificeer de kanalen, klantsegmenten en producten die daadwerkelijk waarde toevoegen, zodat je kunt verdubbelen wat werkt en kunt stoppen met wat niet werkt.
- Eén bron van waarheid te creëren: Bouw een dashboard waar je finance, groei en product teams allemaal achter kunnen staan, waardoor discussies over wiens cijfers "juist" zijn, worden geëlimineerd.
De Kern Metrieken (Definities Die Niet Tegenwerken)
Het gebruiken van precieze en consistente definities is de basis van een betrouwbaar dashboard.
Customer Acquisition Cost (CAC) - Kosten voor Klantenwerving
CAC meet de kosten van het werven van een nieuwe klant. Het is cruciaal om zowel een blended als een betaalde versie te volgen.
- Blended CAC: De all-in kosten.
CAC = (Alle verkoop & marketing acquisitie kosten in periode) ÷ (# nieuwe klanten in periode)
- Betaalde CAC: Isoleert de efficiëntie van je betaalde marketing kanalen.
Betaalde CAC = (Media uitgaven + bureaus + creatie gerelateerd aan betaalde kanalen) ÷ (# nieuwe klanten toegeschreven aan betaald)
Wat Op Te Nemen: Alle kosten die worden gebruikt voor acquisitie, inclusief S&M salarissen, commissies, secundaire arbeidsvoorwaarden, software tools, bureau kosten, advertentie uitgaven, creatieve ontwikkeling en relevante kosten van contractors. Wat Uit Te Sluiten: Customer Success of Support kosten die zijn bestemd voor retentie, R&D uitgaven en salarissen van oprichters (tenzij ze het grootste deel van hun tijd besteden aan acquisitie activiteiten). Attributie: Kies een simpel model zoals first-touch of last-touch. Het belangrijkste is om er één te kiezen, deze te documenteren en je eraan te houden voor consistentie.
Lifetime Value (LTV) - Levenslange Waarde
LTV schat de totale brutowinst die je zult verdienen aan een klant gedurende hun hele relatie met je bedrijf.
-
Snelle, Abonnement-Veilige Benadering (Bruto LTV): Deze formule is geweldig voor een snelle gezondheidscheck.
LTV = ARPA × Bruto Marge % ÷ Maandelijkse Logo Churn %
ARPA
: Gemiddelde Maandelijkse Terugkerende Omzet (MRR) per actieve account in de periode.- Gebruik hier logo churn (klantverloop), niet omzetverloop. Dit voorkomt dat omzet uit uitbreidingen onderliggende retentie problemen maskeert.
-
Meer Precieze (Gedisconteerd, Cohort-Gebaseerd): Deze methode is complexer maar veel nauwkeuriger, omdat het rekening houdt met de tijdswaarde van geld. Het telt de maandelijkse brutowinst voor een bepaald cohort op over zijn levensduur, verdisconteerd met een rente
d
(doorgaans 10-15% per jaar).LTV = Σ_t (ARPA_t × Bruto Marge % × Survival_t) / (1 + d)^(t/12)
Churn & Retentie (Volg Zowel Klanten als Omzet)
Je moet zowel volgen hoeveel klanten je verliest (logo churn) als hoeveel omzet je verliest (omzet churn).
- Logo Churn (Klanten): Het percentage klanten dat annuleert.
Maandelijkse Logo Churn % = (Klanten die deze maand zijn vertrokken) ÷ (Klanten aan het begin van de maand)
- Bruto Omzet Churn: Het percentage MRR dat verloren is gegaan door annuleringen en downgrades. Dit is een zuivere meting van omzetlekkage.
Bruto Omzet Churn % = (Churn MRR + Contractie MRR) ÷ MRR aan het begin van de maand
- Netto Omzet Retentie (NRR): De heilige graal van SaaS metrieken. Het toont je omzetgroei van je bestaande klantenbestand, rekening houdend met churn, contractie en expansie. Een NRR van meer dan 100% betekent dat je bedrijf groeit, zelfs zonder nieuwe klanten toe te voegen.
NRR = (Start MRR − Churn MRR − Contractie MRR + Expansie MRR) ÷ Start MRR
- Onvrijwillige vs. Vrijwillige Churn: Het is cruciaal om klanten die er actief voor kiezen om te annuleren ("Ik wil het niet") te scheiden van degenen die churnen als gevolg van een mislukte betaling. Hoge onvrijwillige churn duidt vaak op corrigeerbare problemen in je dunning proces.
CAC Payback & LTV:CAC Ratio
Deze twee metrieken verbinden je acquisitie kosten met je unit economics.
- CAC Terugverdien Periode (in maanden): Hoe lang het duurt om de kosten van het werven van een klant terug te verdienen.
Terugverdien = CAC ÷ (ARPA × Bruto Marge % − Gemiddelde variabele succes kosten per account)
- LTV:CAC Ratio: De relatie tussen de levenslange waarde van een klant en hun acquisitie kosten. Een algemene vuistregel is om te streven naar een verhouding van ≥ 3:1. Een gezond bedrijf zou minimaal €3 aan levenslange waarde moeten genereren voor elke €1 die aan acquisitie wordt besteed. De terugverdientijd zou idealiter < 12–18 maanden moeten zijn voor MKB klanten of < 24 maanden voor mid-market/enterprise.
Wat Het Dashboard Moet Laten Zien (Lay-out)
Organiseer je dashboard in drie lagen, van high-level KPI's naar gedetailleerde diagnoses.
- Bovenste Rij (Key Performance Indicators): Je gezondheidscheck in één oogopslag.
Nieuwe Klanten
|Nieuwe MRR
|NRR (laatste 3 & 12 maanden)
CAC (blended + betaald)
|CAC Terugverdien (maanden)
|LTV:CAC
- Middelste Rij (Trends): Hoe je kern metrieken zich in de loop van de tijd ontwikkelen.
- Een lijngrafiek die
CAC
&Terugverdien Periode
over tijd laat zien. - Een lijngrafiek die
Logo Churn %
enBruto Omzet Churn %
laat zien. - Een gestapelde staafdiagram die je MRR bewegingen visualiseert:
Expansie vs. Contractie vs. Churn
.
- Een lijngrafiek die
- Onderste Rij (Diagnoses): Het "waarom" achter de trends.
- Cohort Heatmaps: Eén voor klantenretentie en een andere voor omzetretentie, die de prestaties per aanmeldingsmaand laat zien. Dit is de beste manier om te zien of je product en retentie daadwerkelijk verbeteren.
- Kanaal Prestatie Tabel: Een uitsplitsing per acquisitie kanaal die
Uitgaven
,Nieuwe Klanten
,CAC
,90-dagen Retentie
enLTV:CAC
laat zien. - Churn Redenen: Een taart- of staafdiagram die de top 5 redenen voor churn laat zien, met trends.
Data Die Je Nodig Hebt (Minimaal Model)
Om dit dashboard te kunnen gebruiken, moet je data verzamelen en structureren uit een paar belangrijke bronnen.
- klanten:
customer_id, signup_date, plan, segment, country, channel, sales_owner
- abonnementen:
customer_id, term_start, term_end, status, plan, seats, list_price, discount
- subscription_events (sterk aanbevolen):
event_date, customer_id, event_type (new|upgrade|downgrade|churn|reactivate), mrr_delta
- facturen/betalingen:
invoice_id, customer_id, service_period_start, service_period_end, amount, cogs_if_any
- ad_spend:
date, channel, campaign, cost
- s&m_kosten:
month, cost_type, amount, attributable_to (acquisition|retention)
- churn_survey:
customer_id, churn_date, reason_code, free_text
Pro Tip: Bewaar alles in maandelijkse buckets voor de dashboard weergave, maar bewaar de onderliggende events op dagelijkse granulariteit voor meer flexibele analyse.
Spreadsheet Formules (Kopiëren/Plakken)
Maak voor een simpel spreadsheet model een sheet voor elke maand en gebruik deze formules:
ARPA = Start_MRR / Start_Klanten
Logo_Churn_% = Vertrokken_Klanten / Start_Klanten
Bruto_Omzet_Churn_% = (Churn_MRR + Contractie_MRR) / Start_MRR
NRR = (Start_MRR - Churn_MRR - Contractie_MRR + Expansie_MRR) / Start_MRR
CAC_Blended = (S&M_Acq_Kosten) / Nieuwe_Klanten
Terugverdien_Maanden = CAC_Blended / (ARPA * Bruto_Marge_% - Variabele_Succes_Kosten_per_Klant)
LTV_Bruto = ARPA * Bruto_Marge_% / Logo_Churn_%
LTV_naar_CAC = LTV_Bruto / CAC_Blended
Belangrijk: Bereken churn rates altijd ten opzichte van de start van de maand, exclusief nieuwe klanten van de noemer. Dit voorkomt dat nieuwe aanmeldingen je churn rate voor de periode kunstmatig verlagen.
SQL Die Je Kunt Aanpassen (Postgres)
Gebruik deze SQL queries als startpunt voor een meer robuuste setup.
1) MRR Flows Per Maand Deze query berekent de MRR aan het begin van de maand en de belangrijkste bewegingen (nieuw, expansie, contractie, churn) voor elke maand.
WITH m AS (
SELECT
date_trunc('month', event_date) AS month,
SUM(CASE WHEN event_type = 'new' THEN mrr_delta ELSE 0 END) AS new_mrr,
SUM(CASE WHEN event_type = 'upgrade' THEN mrr_delta ELSE 0 END) AS expansion_mrr,
SUM(CASE WHEN event_type = 'downgrade' THEN -mrr_delta ELSE 0 END) AS contraction_mrr,
SUM(CASE WHEN event_type = 'churn' THEN -mrr_delta ELSE 0 END) AS churn_mrr
FROM subscription_events
GROUP BY 1
),
base AS (
SELECT
month,
SUM(new_mrr + expansion_mrr - contraction_mrr - churn_mrr)
OVER (ORDER BY month ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS end_mrr
FROM m
)
SELECT
m.month,
LAG(end_mrr, 1, 0) OVER (ORDER BY m.month) AS start_mrr,
m.new_mrr, m.expansion_mrr, m.contraction_mrr, m.churn_mrr
FROM m
JOIN base b ON b.month = m.month
ORDER BY m.month;
2) Logo Churn Rate Deze query berekent de maandelijkse klant churn rate op basis van actieve klanten aan het begin van de maand.
WITH actives AS (
SELECT date_trunc('month', s.term_start) AS month, s.customer_id
FROM subscriptions s
WHERE s.status = 'active'
GROUP BY 1,2
),
churns AS (
SELECT date_trunc('month', se.event_date) AS month, se.customer_id
FROM subscription_events se
WHERE se.event_type = 'churn'
)
SELECT
a.month,
COUNT(DISTINCT a.customer_id) AS start_customers,
COUNT(DISTINCT c.customer_id) AS churned_customers,
COUNT(DISTINCT c.customer_id)::decimal /
NULLIF(COUNT(DISTINCT a.customer_id),0) AS logo_churn_pct
FROM actives a
LEFT JOIN churns c
ON c.customer_id = a.customer_id AND c.month = a.month
GROUP BY 1
ORDER BY 1;
3) Channel CAC (Blended and Paid) Deze query berekent zowel blended als betaalde CAC voor elk acquisitie kanaal.
WITH new_logos AS (
SELECT date_trunc('month', signup_date) AS month, channel, COUNT(*) AS new_customers
FROM customers
GROUP BY 1,2
),
paid_spend AS (
SELECT date_trunc('month', date) AS month, channel, SUM(cost) AS spend
FROM ad_spend
GROUP BY 1,2
),
s_and_m AS (
SELECT month, SUM(amount) AS acq_costs
FROM s_m_costs
WHERE attributable_to = 'acquisition'
GROUP BY 1
)
SELECT
n.month,
n.channel,
n.new_customers,
COALESCE(p.spend,0) AS paid_spend,
CASE WHEN n.new_customers > 0
THEN COALESCE(p.spend,0)::decimal / n.new_customers
ELSE NULL END AS paid_cac,
s.acq_costs,
CASE WHEN (SELECT SUM(new_customers) FROM new_logos WHERE month = n.month) > 0
THEN s.acq_costs::decimal / (SELECT SUM(new_customers) FROM new_logos WHERE month = n.month)
ELSE NULL END AS blended_cac
FROM new_logos n
LEFT JOIN paid_spend p ON p.month = n.month AND p.channel = n.channel
LEFT JOIN s_and_m s ON s.month = n.month
ORDER BY n.month, n.channel;
4) Cohort Revenue Retention Heatmap Deze query genereert de data voor een omzet retentie heatmap, die het percentage van de initiële MRR laat zien dat in de loop van de tijd wordt behouden voor elk maandelijks aanmeldings cohort.
WITH firsts AS (
SELECT customer_id, date_trunc('month', MIN(signup_date)) AS cohort_month
FROM customers
GROUP BY 1
),
mrr_by_month AS (
SELECT date_trunc('month', event_date) AS month, customer_id,
SUM(mrr_delta) OVER (PARTITION BY customer_id ORDER BY event_date
ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS mrr
FROM subscription_events
),
cohorts AS (
SELECT f.cohort_month, m.month,
EXTRACT(YEAR FROM age(m.month, f.cohort_month)) * 12 +
EXTRACT(MONTH FROM age(m.month, f.cohort_month)) AS months_since,
SUM(GREATEST(m.mrr,0)) AS cohort_mrr
FROM firsts f
JOIN mrr_by_month m USING (customer_id)
GROUP BY 1,2,3
)
SELECT cohort_month, months_since,
cohort_mrr / NULLIF(MAX(CASE WHEN months_since = 0 THEN cohort_mrr END)
OVER (PARTITION BY cohort_month),0) AS revenue_retention
FROM cohorts
ORDER BY cohort_month, months_since;
Instrumentatie Checklist (Sla Dit Niet Over)
Goede data erin, goede metrieken eruit. Zorg ervoor dat je product en systemen zijn uitgerust om deze kritieke events vast te leggen:
- UTMs: Volg UTM parameters op elk aanmeldingspad en bewaar ze in het account record op het moment van creatie.
- Annulerings Event: Wanneer een klant churns, leg een gestructureerde
reason_code
vast en bied een optioneel free-text veld aan. - Dunning Events: Volg betalingspogingen en hun succes/falen om onvrijwillige churn correct te identificeren en analyseren.
- Seat/Plan Wijzigingen: Log seat wijzigingen en plan upgrades/downgrades als afzonderlijke events, elk met een bijbehorende
mrr_delta
. - Reactivatie: Volg klant reactivaties expliciet. Een terugkerende klant is geen "nieuwe" klant.
- Financiën: Bewaar de
price
endiscount
op elke factuurregel. Als je aanzienlijke variabele kosten hebt (bijv. infrastructuur, AI model inference, third-party API fees), bewaar dan de bijbehorende COGS.
Segmentatie Die Daadwerkelijk Helpt Bij Beslissingen
Vertrouw nooit alleen op blended, bedrijfsbrede metrieken. Segmenteer je data om verborgen waarheden over je bedrijf te ontdekken. Analyseer je kern metrieken (CAC, LTV, Churn) op:
- Plan / ACV Band: bijv. minder dan €1k, €1–10k, €10–100k jaarlijkse contract waarde.
- Kanaal: Betaalde zoekopdrachten, content, partner, outbound sales, enz.
- ICP Fit: Je ideale klantprofiel vs. niet-ICP klanten.
- Go-to-Market Motion: Self-serve vs. sales-led.
- Regio: Als prijzen, concurrentie of gebruikersgedrag aanzienlijk verschillen.
Je zult bijna altijd ontdekken dat sommige segmenten zeer winstgevend zijn, terwijl andere een negatieve invloed hebben op je algemene metrieken.
Review Cadans
Integreer dit dashboard in het operationele ritme van je team.
- Wekelijks: Bekijk high-velocity metrieken zoals
CAC
trends,Nieuwe MRR
, deExpansie vs. Churn MRR
grafiek en de top churn redenen. - Maandelijks: Duik dieper in
NRR
(laatste 3 maanden en 12 maanden),CAC Terugverdien
enLTV:CAC
. Gebruik deze om de prestaties van kanalen en segmenten te beoordelen. - Kwartaal: Analyseer de
Cohort Retentie
curves om de product gezondheid op lange termijn te beoordelen. Gebruik deze meeting om je attributie model te controleren en de impact van prijs- en verpakkingswijzigingen te bespreken.
Benchmarks (Vuistregels)
Hoewel elk bedrijf anders is, zijn hier enkele algemene benchmarks voor gezonde SaaS bedrijven.
- LTV:CAC: Een verhouding van ≥ 3:1 wordt als gezond beschouwd. Een verhouding > 5:1 kan erop wijzen dat je te weinig investeert in groei.
- CAC Terugverdien: Streef naar < 12–18 maanden voor MKB/PLG modellen en < 24 maanden voor enterprise sales.
- Maandelijkse Logo Churn: Voor MKB's is 2-4% gebruikelijk; voor mid-market, 1-2%; voor enterprise, <1%.
- NRR: Voor MKB's, 90-110%; voor mid-market, 100-120% of meer; voor enterprise, 110-130% of meer.
Onthoud: Schrijf je eigen doelen op. Vergelijk jezelf eerst met jezelf, daarna met de markt.
Veelvoorkomende Valkuilen (En Hoe Ze Te Vermijden)
- Het mengen van omzet en klant churn in dezelfde formule. → Gebruik altijd de juiste teller en noemer (klanten voor logo churn, omzet voor omzet churn).
- Het gebruiken van omzet churn voor LTV wanneer je expansie hebt. → Dit zal je LTV drastisch opblazen. Gebruik logo churn voor de simpele LTV formule of bouw een goed cohort-gebaseerd LTV model.
- Het tellen van boekingen of cash als MRR. → Herken omzet over de periode van dienstverlening, niet wanneer het geld op de bank staat.
- Het negeren van stock-based compensation en tools in CAC. → Dit onderschat je werkelijke kosten voor klantenwerving.
- Het middelen van churn rates over maanden. → Dit is wiskundig incorrect. Geef de voorkeur aan cohort curves of bereken churn altijd op de basis van het begin van de periode.
- Attributie thrashing. → Het elke maand wisselen van attributie modellen maakt je data onmogelijk om over tijd te vergelijken. Kies er één, documenteer wanneer je wijzigingen aanbrengt en versioneer je metrieken.
“Goed → Beter → Best” Implementatie
Je hebt niet vanaf dag één een perfecte data stack nodig. Begin simpel en evolueer.
- Goed (1–2 uur):
- Een Google Sheet met maandelijkse handmatige invoer voor Nieuwe Klanten, MRR flows en S&M kosten.
- Gebruik de formules uit deze gids. Volg UTMs en churn redenen handmatig.
- Beter (1–2 dagen):
- Een Postgres of BigQuery database die is verbonden met een BI tool zoals Metabase of Looker Studio.
- Automatiseer een
subscription_events
tabel en neem advertentie uitgaven data op via een API. Bouw de cohort heatmap visualisaties.
- Best (1–2 weken):
- Gebruik een tool zoals dbt om version-controlled data modellen te creëren en tests te schrijven voor data integriteit.
- Gebruik een BI tool zoals Mode of Looker met beheerde data "explores" om self-service analyse mogelijk te maken. Implementeer historische data backfills en verdisconteerde LTV berekeningen.
Minimale Metrieken Woordenlijst (Plak in Je Wiki)
Gebruik deze tabel om ervoor te zorgen dat iedereen in je bedrijf dezelfde taal spreekt.
Metriek | Definitie | Notities |
---|---|---|
CAC (blended) | S&M acquisitie kosten ÷ nieuwe klanten | Inclusief salarissen, tools, bureaus, advertenties, commissies |
CAC (betaald) | Betaalde media kosten ÷ betaald-sourced nieuwe klanten | Gebruik een consistent attributie venster |
LTV (bruto) | ARPA × GM% ÷ maandelijkse logo churn | OK voor sanity checks; documenteer je GM% aanname |
CAC terugverdientijd | CAC ÷ (ARPA × GM% − variabele succes kosten) | Gemeten in maanden; segmenteer op plan/ACV |
Logo churn % | Vertrokken klanten ÷ klanten aan het begin van de maand | Sluit nieuwe klanten uit van de noemer |
Bruto omzet. churn % | (Churn MRR + Contractie MRR) ÷ Start MRR | Expansie omzet is uitgesloten |
NRR | (Start MRR − Churn − Contractie + Expansie) ÷ Start MRR | Volg Trailing 3-Maanden (T3M) en T12M |
Wat Te Beslissen Zodra Dit Live Is
Je dashboard is live. En nu? Gebruik het om kritieke zakelijke vragen te beantwoorden:
- Schaal of knip kanalen op basis van hun betaalde CAC en, belangrijker nog, hun 90-dagen retentie.
- Pas prijzen en verpakkingen aan als je ziet dat de expansie MRR vlak is en de contractie MRR stijgt.
- Investeer in onboarding en customer success als de vrijwillige churn hoog is. Als de onvrijwillige churn hoog is, repareer dan eerst je betalings- en dunning systemen.
- Verscherp je ICP definitie als je ontdekt dat niet-ICP segmenten je LTV:CAC verhouding consequent onder je doel trekken.