Waarom aangepaste metrics?
De standaard statistieken in je databron zijn direct beschikbaar. Maar de meest waardevolle inzichten komen vaak uit berekeningen die je zelf definieert. Aangepaste metrics geven je de vrijheid om de KPI's te bouwen die precies passen bij je businessmodel.
Voorbeelden van metrics die je standaard niet hebt maar wel nodig hebt:
- Customer Lifetime Value (CLV): gemiddeld aankoopbedrag, vermenigvuldigd met de gemiddelde aankoopfrequentie en de gemiddelde klantduur
- Net Promoter Score berekend: (% Promoters min % Detractors), vermenigvuldigd met 100
- Inventory turnover: kosten van verkochte goederen, gedeeld door de gemiddelde voorraadwaarde
- Churn rate: (klanten begin min klanten eind), gedeeld door klanten begin
Aggregatievolgorde begrijpen
Dit is het meest kritieke concept voor aangepaste metrics. Looker Studio berekent statistieken in twee fases:
- Per rij (dimensie-niveau): berekeningen worden per unieke combinatie van dimensies uitgevoerd.
- Aggregatie: de resultaten worden opgeteld, gemiddeld of geteld.
Het gevolg: SUM(A) / SUM(B) geeft een ander resultaat dan SUM(A / B).
Stel dat je de gemiddelde marge per productcategorie wilt berekenen. Het verschil tussen beide formules:
| Aanpak | Formule | Wat er gebeurt |
|---|---|---|
| Fout | SUM(Marge / Omzet) |
Berekent de marge per rij en telt die losse verhoudingen op |
| Goed | SUM(Marge) / SUM(Omzet) |
Berekent de totale marge gedeeld door de totale omzet |
Test altijd je aggregatievolgorde
Denk altijd na over de aggregatievolgorde van je formule. Controleer je berekend veld door de ruwe data in een tabel te vergelijken met de geaggregeerde waarde in een scorecard. Kloppen ze niet, dan klopt de formule niet.
SAFE_DIVIDE voor bescherming tegen delen door nul
Elke deling kan een fout geven als de noemer nul is. Gebruik SAFE_DIVIDE in plaats van de operator /:
SAFE_DIVIDE(Teller, Noemer)
Dit geeft null terug als de noemer nul is, in plaats van een foutmelding. De grafiek toont dan een lege waarde in plaats van een error.
Een alternatief met CASE:
CASE WHEN Omzet = 0 THEN 0 ELSE Winst / Omzet END
Gewogen gemiddelde berekenen
Een normaal gemiddelde behandelt alle waarden even zwaar. Een gewogen gemiddelde houdt rekening met het volume.
Voorbeeld: de gemiddelde conversieratio, gewogen naar het aantal sessies per kanaal:
SUM(Conversies) / SUM(Sessies)
Dit is al een gewogen gemiddelde. Door simpelweg SUM / SUM te schrijven krijg je automatisch het naar volume gewogen resultaat, in plaats van een gemiddelde van losse percentages.
Genormaliseerde scores
Stel dat je meerdere KPI's wilt combineren tot één performancescore op een schaal van 0 tot 100. De eerste stap is elke KPI normaliseren naar diezelfde 0-tot-100-schaal.
Gebruik min-max-normalisatie:
(KPI - MIN_waarde) / (MAX_waarde - MIN_waarde) * 100
In Looker Studio voer je de minimum- en maximumwaarde als vaste getallen in als je de schaal kent, of je baseert ze op berekende velden uit je data.
Periodevergelijkende metrics
Wil je de groei ten opzichte van een vorige periode als metric tonen? Dat is lastig in Looker Studio, omdat je geen self-join kunt doen op dezelfde databron.
Je hebt drie opties:
- Gebruik de ingebouwde vergelijkingsperiode op scorecards en grafieken. Dit is het eenvoudigst en vereist geen eigen berekening.
- Bereken de groei in BigQuery en importeer het resultaat als veld.
- Gebruik een blend van twee periodes met de datum als join-sleutel.
Samengestelde KPI-scores
Een samengestelde KPI combineert meerdere metrics tot één getal. Voorbeeld: een klanttevredenheidsscore die bestaat uit 40 procent NPS, 30 procent CSAT en 30 procent first response time (omgekeerd, want sneller is beter):
SAFE_DIVIDE(NPS_score, 100) * 0.4
+ SAFE_DIVIDE(CSAT_score, 5) * 0.3
+ (1 - SAFE_DIVIDE(Response_time_minuten, MAX_response_time)) * 0.3
Vermenigvuldig de uitkomst met 100 om er een percentage van te maken.
Documenteer je formules
Leg je samengestelde KPI-formules vast in de beschrijving van het berekend veld. Klik op het veld in het databronbeheer en voeg een beschrijving toe. Dit is cruciaal voor collega's die later met de databron werken en anders moeten raden hoe het getal is opgebouwd.
Parameters als inputs voor metrics
Looker Studio ondersteunt parameters: variabelen die kijkers of rapportbeheerders kunnen instellen. Gebruik parameters voor metrics waarbij je de drempelwaarde wilt kunnen aanpassen zonder de formule te wijzigen.
Een parameter koppelen aan een metric
- Maak een parameter aan in de databron via Databronbeheer, Parameter toevoegen.
- Geef het een naam, kies het type Getal en stel een standaardwaarde in.
- Gebruik de parameter in je berekend veld, bijvoorbeeld:
CASE WHEN Waarde > @parameter_naam THEN "Boven drempel" ELSE "Onder drempel" END. - Laat rapportbeheerders de waarde aanpassen via de rapportinstellingen of via een parameter in de URL.
Lopende totalen
Een lopend totaal (running total) bestaat niet als losse functie in een berekend veld. Je hebt twee praktische routes:
- Gebruik op een tijdreeks of tabel de ingebouwde vergelijkingsberekening Lopende som (Running sum) in de grafiekinstellingen. Dit werkt zonder eigen formule.
- Heb je meer controle nodig, bereken het totaal dan vooraf in BigQuery met een window-functie, bijvoorbeeld
SUM(waarde) OVER (PARTITION BY ... ORDER BY datum ROWS UNBOUNDED PRECEDING).
Mijn aangepaste metric geeft verschillende uitkomsten per dimensie. Hoe komt dat?
Dit is vrijwel altijd een aggregatievolgorde-probleem. Verander de formule van een berekening per rij naar een berekening op geaggregeerde totalen, dus gebruik SUM(A) / SUM(B) in plaats van A / B.
Kan ik een metric maken die de maximale waarde per dimensiegroep vergelijkt?
Ja, gebruik MAX(statistiek) als aggregatie. Functies als RANK() of ROW_NUMBER() kun je niet in Looker Studio-formules gebruiken, dat doe je beter in BigQuery.
Hoe maak ik een lopend totaal?
Gebruik de vergelijkingsberekening Lopende som in de grafiekinstellingen, of bereken het totaal vooraf in BigQuery met een window-functie zoals SUM(waarde) OVER (...).
Kan ik een berekende metric als filter gebruiken?
Ja, je kunt berekende statistieken gebruiken in grafiekfilters. Stel een filter in op je berekende metric met een drempelwaarde.
Waarom toont mijn grafiek een lege waarde in plaats van een fout?
Waarschijnlijk gebruik je SAFE_DIVIDE en is de noemer nul. De functie geeft dan null terug, wat als lege cel verschijnt. Wil je liever een nul tonen, vang dat dan af met CASE WHEN Noemer = 0 THEN 0 ELSE ... END.