5.2 A/B-testen
Een A/B-test die te vroeg wordt gestopt of te weinig verkeer krijgt, is gevaarlijker dan geen test: hij geeft een vals gevoel van zekerheid en je rolt een “winnaar” uit die in werkelijkheid ruis was. Dit hoofdstuk leert je testen die je echt iets vertellen — met de juiste hypothese, steekproefgrootte en testduur.
Na dit hoofdstuk kun je:
- Je kunt een toetsbare hypothese formuleren met wijziging, verwachting en onderbouwing, vertrekkend vanuit een concreet funnel-lek.
- Je weet wat statistische significantie (95%), power (80%) en MDE betekenen en kunt vooraf je steekproefgrootte en testduur bepalen.
- Je herkent peeking als de grootste valkuil en weet waarom je pas na de vooraf bepaalde steekproef én volledige weken naar de uitslag kijkt.
- Je kunt beoordelen of een test haalbaar is bij jouw verkeer en wat je doet als dat niet zo is.
- Je weet welke elementen je wél (hoge impact) en niet los (te klein) test en houdt het bij één wijziging en één primaire metric.
Kernconcepten
Section titled “Kernconcepten”A/B-test (split test). Je toont variant A (controle, het origineel) aan de helft van het verkeer en variant B (de wijziging) aan de andere helft, willekeurig verdeeld. Je meet welke variant beter converteert. Omdat het verkeer willekeurig verdeeld is, is het enige systematische verschil tussen de groepen jouw wijziging.
Hypothese. Een toetsbare voorspelling, niet een onderbuikgevoel. Vorm: “Als ik [wijziging] doorvoer, dan stijgt [meetbare metric] met [verwachting], omdat [onderbouwing].”
Statistische significantie. De kans dat het gemeten verschil géén toeval is. Standaard streef je naar 95% significantie (p-waarde kleiner dan 0,05): bij die drempel is er 5% kans dat je een verschil ziet dat er in werkelijkheid niet is (een vals positief).
Statistisch vermogen (power). De kans dat je een écht bestaand verschil ook daadwerkelijk detecteert. Standaard 80%. Te weinig power betekent dat een echte verbetering onzichtbaar blijft.
Minimaal detecteerbaar effect (MDE). De kleinste verbetering die je test betrouwbaar kan oppikken. Hoe kleiner het effect dat je wilt kunnen zien, hoe meer verkeer je nodig hebt — de relatie is kwadratisch: een MDE die half zo klein is, vraagt ongeveer 4 keer zoveel verkeer.
Steekproefgrootte (sample size). Het aantal bezoekers per variant dat je nodig hebt om met 95% significantie en 80% power je MDE te detecteren. Dit bereken je vooraf, niet achteraf.
Stap-voor-stap workflow
Section titled “Stap-voor-stap workflow”-
Begin met een lek uit je funnel-diagnose. Test nooit willekeurig. Je vertrekt vanuit het grootste herstelbare lek uit 5.1.
-
Formuleer één scherpe hypothese. Gebruik het sjabloon. Eén wijziging, één verwachte uitkomst, één onderbouwing.
-
Bepaal je primaire metric. Meestal de aankoopconversie of de overgangsratio van de geraakte stap. Eén primaire metric — niet vijf, want dan vind je altijd wel ergens “iets”.
-
Bereken vooraf je steekproefgrootte. Gebruik je huidige conversie (baseline), je gewenste MDE, 95% significantie en 80% power. Een gratis sample-size-calculator (Evan Miller, AB Tasty, VWO) doet het rekenwerk.
-
Bereken de benodigde testduur. Steekproefgrootte per variant × 2, gedeeld door je dagelijkse verkeer. Rond altijd af op volledige weken.
-
Zet de test live met willekeurige 50/50-verdeling. Laat hem draaien tot je vooraf bepaalde steekproef én minimaal 1-2 volledige weken zijn behaald — wat later komt.
-
Sluit de test af en beoordeel pas dan. Significant en boven je MDE? Roll uit. Niet significant? Geen verschil aangetoond — behoud de controle en leer ervan.
-
Documenteer het resultaat. Ook (juist) de tests die niets opleverden. Bouw een test-logboek op; dat voorkomt dat je hetzelfde tweemaal test.
Wat wel en niet testen
Section titled “Wat wel en niet testen”Prioriteer op impact × verkeer. Test grote, zichtbare elementen die veel bezoekers raken; verspil geen verkeer aan microdetails.
| Wel testen (hoge impact) | Niet los testen (te klein) |
|---|---|
| Productpagina-indeling en volgorde van elementen | Kleurtint van een knop |
| Aanwezigheid en plaatsing van reviews | Lettergrootte van bijschrift |
| Prijspresentatie en kortingsweergave | Komma in een microcopy-zin |
| Gastcheckout vs. account verplicht | Pictogramvariaties |
| USP-balk / verzendbelofte boven de vouw | Footerlinks |
| Productfoto’s en video vs. alleen foto | Exacte witruimte tussen blokken |
Voorbeeld: steekproefgrootte doorgerekend
Section titled “Voorbeeld: steekproefgrootte doorgerekend”Je huidige checkout-conversie (baseline) is 47%. Je wilt een verbetering van minimaal 5% relatief kunnen detecteren — dat is een stijging naar 49,35%. Significantie 95%, power 80%.
Een sample-size-calculator geeft dan ongeveer 6.700 bezoekers per variant, dus 13.400 in totaal die de checkout starten.
Stel: er starten 660 bezoekers per maand de checkout (uit het voorbeeld in 5.1). Dan duurt deze test 13.400 / 660 ≈ 20 maanden. Veel te lang — dit lek is via A/B niet te testen bij dit verkeer. Conclusie: kies kwalitatieve validatie (heatmaps, gebruikerstests) of test hoger in de funnel waar meer verkeer langskomt.
Tweede voorbeeld, hoger in de funnel. Add-to-cart-ratio is 10%, je wilt 15% relatieve verbetering (naar 11,5%) kunnen zien. Dat vraagt ongeveer 9.000 productpaginabezoekers per variant. Bij 11.000 productpaginaweergaven per maand × 2 varianten = 22.000 nodig in totaal → 18.000 / 11.000 ≈ ruim 1,5 maand. Haalbaar.
Waarom mag je niet stoppen zodra de test significant lijkt?
Omdat significantie pas iets betekent bij de stéékproef die je vooraf hebt vastgelegd — en niet op elk willekeurig tussenmoment. De 95%-drempel garandeert dat je maar 5% kans hebt op een vals positief als je één keer kijkt, aan het einde. Maar elke keer dat je tussentijds gluurt, neem je opnieuw die gok.
De conversiecijfers schommelen van dag tot dag rond hun werkelijke waarde. Vroeg in een test zijn die schommelingen groot; puur door toeval schiet het verschil geregeld even boven de 95%-lijn — om daarna weer te verdampen. Stop je precies op zo’n piek, dan rol je ruis uit als “winnaar”.
Dit heet peeking, en het effect is dramatisch: wie continu meekijkt en stopt bij de eerste significante uitslag, jaagt de vals-positief-kans op van 5% naar meer dan 30%. Je denkt op 95% zekerheid te beslissen, maar zit in werkelijkheid dichter bij een muntworp.
De remedie is puur discipline, geen wiskunde: bereken vooraf je steekproefgrootte én testduur (minimaal 1–2 volledige weken), en kijk pas naar de uitslag als beide behaald zijn. Wil je wél tussentijds kunnen stoppen, dan heb je een andere methode nodig (sequential testing / Bayesiaanse tools) die daar expliciet voor corrigeert — niet het gewone 95%-cijfer.
Formules & benchmarks
Section titled “Formules & benchmarks”Conversieratio per variant:
CVR = conversies / bezoekers × 100%
Relatieve uplift:
Uplift = (CVR variant B − CVR variant A) / CVR variant A × 100%
Voorbeeld: A = 2,0%, B = 2,3% → (0,023 − 0,020) / 0,020 = 15% relatieve uplift.
Vereenvoudigde steekproefgrootte-indicatie (per variant, bij 95% / 80%):
Hoe lager je baseline-conversie en hoe kleiner het effect dat je wilt zien, hoe meer verkeer. Gebruik altijd een calculator; uit het hoofd reken je dit niet betrouwbaar.
| Baseline CVR | MDE (relatief) | Bezoekers per variant (indicatie) |
|---|---|---|
| 2% | 25% | ± 9.300 |
| 2% | 10% | ± 56.000 |
| 5% | 25% | ± 3.500 |
| 10% | 15% | ± 9.000 |
| 47% | 5% | ± 6.700 |
| Testparameter | Slecht | Goed |
|---|---|---|
| Significantieniveau | onder 90% | 95% of hoger |
| Power | onbekend / onder 70% | 80% of hoger |
| Conversies per variant | minder dan 100 | meer dan 300 |
| Testduur | minder dan 1 week | 2 tot 4 volledige weken |
| Aantal varianten tegelijk | meer dan 3 | 2 (A/B), hooguit 3 (A/B/C) |
| Tool | Functie | Wanneer kiezen |
|---|---|---|
| Shopify-native (Shopify Plus: Functions/Apps) | Eenvoudige split-tests binnen Shopify | Op Shopify zonder externe tool; beperkt op standaard-plan |
| Intelligems | A/B-testen van prijs, aanbod en content voor Shopify | Als je prijs- en aanboptests wilt draaien |
| VWO | Volwaardige A/B- en multivariate testing + sample-calculator | Bij voldoende verkeer en serieus testprogramma |
| Convert / AB Tasty | Visuele editor, server-side testing | Privacyvriendelijk alternatief, EU-hosting beschikbaar |
| Google Optimize | Voorheen gratis testtool van Google | Niet meer beschikbaar (gestopt 2023) — gebruik niet |
| Evan Miller sample-size calculator | Steekproefgrootte vooraf berekenen | Altijd, vóór elke test — gratis |
Veelgemaakte fouten
Section titled “Veelgemaakte fouten”- Te vroeg stoppen (peeking). Je ziet na 3 dagen +20% en stopt juichend. Drie dagen later is het verschil verdampt. Wacht je vooraf bepaalde steekproef af.
- Te veel varianten tegelijk. Vier varianten betekent dat elke variant maar een kwart van het verkeer krijgt — je hebt vier keer zo lang nodig én meer kans op een vals positief.
- Meerdere wijzigingen in één variant. Verander je knopkleur én tekst én plaatsing, dan weet je bij winst niet wát werkte. Eén wijziging per test (tenzij je bewust een nieuw concept tegen het oude zet).
- Te veel metrics bekijken. Kijk je naar 10 metrics, dan is er statistisch altijd wel één “significant” door toeval. Eén primaire metric, vooraf vastgelegd.
- Niet op volledige weken testen. Dinsdag koopt anders dan zondag. Een test van 10 dagen weegt twee dinsdagen en één zondag scheef. Test altijd in blokken van 7 dagen.
- Lokaal optimum najagen. Eindeloos knopjes finetunen levert 1% hier en 1% daar. Een radicale herontwerptest van de hele productpagina kan 20% opleveren. Durf groter te testen.
- Seizoens- of campagne-effecten negeren. Een test tijdens Black Friday of een grote betaalde campagne meet een uitzonderlijke periode, niet je normaal.
Checklist
Section titled “Checklist”Sjablonen
Section titled “Sjablonen”- Probleem (uit data): “In stap [stap] haakt [percentage] af; dit kost circa [bedrag] per maand.”
- Hypothese: “Als ik [concrete wijziging] doorvoer, dan stijgt [primaire metric] met circa [verwachting], omdat [onderbouwing op basis van data/heatmap/gebruikersfeedback].”
- Primaire metric: [bijv. checkout-voltooiingsratio]
- Baseline-waarde: [huidig percentage]
- Gewenst minimaal effect (MDE): [relatief percentage]
- Benodigde steekproef per variant: [getal uit calculator]
- Geschatte testduur: [aantal volledige weken]
- Beslisregel: “Uitrollen als B significant (95%) beter is dan A én boven de MDE; anders A behouden.”
Oefen het zelf
Section titled “Oefen het zelf”Case: is deze test überhaupt haalbaar?
Je wilt de productpagina testen. Je add-to-cart-ratio is nu 8% en je wilt een relatieve verbetering van 20% kunnen detecteren (naar 9,6%). Een sample-size-calculator geeft hiervoor ongeveer 4.300 bezoekers per variant nodig (95% significantie, 80% power). Je productpagina’s krijgen samen 6.000 weergaven per maand.
Bepaal: (1) hoeveel bezoekers je in totaal nodig hebt, (2) hoe lang de test duurt, (3) is dit haalbaar — en zo niet, wat doe je?
Toon uitwerking
1 — Totaal nodig: 4.300 per variant × 2 varianten = 8.600 bezoekers.
2 — Testduur: 8.600 / 6.000 per maand ≈ 1,4 maand (rond af op volledige weken → 6 weken).
3 — Haalbaar? Net aan de lange kant, maar werkbaar — mits er in die periode geen Black Friday of grote campagne loopt die het beeld vertekent. Belangrijker: controleer of je per variant je ~200–350 conversies haalt. Bij 8% op 4.300 bezoekers = ~344 conversies per variant. Net genoeg.
Als het niét haalbaar was (bv. de calculator vroeg 56.000 per variant omdat je een klein effect van 10% wilde zien): dan test je óf een grover, groter effect (een radicaler herontwerp dat meer dan 20% kan opleveren), óf je gaat hoger in de funnel waar meer verkeer komt, óf je valideert kwalitatief met heatmaps en gebruikerstests in plaats van A/B. Een test die 20 maanden zou duren, is geen test — dat is wachten.
Test jezelf
Section titled “Test jezelf”Snelle kennischeck — A/B-testen
-
Wat betekent '95% statistische significantie'?
Significantie gaat over de kans dat je verschil géén toeval is. Bij 95% (p < 0,05) accepteer je 5% kans op een vals positief — een verschil zien dat er in werkelijkheid niet is. Het zegt niets over de grootte van de winst.
-
Je ziet na 3 dagen +20% en het lijkt significant. Wat doe je?
Doortesten. Vroeg stoppen (peeking) jaagt je vals-positief-kans op tot meer dan 30%. Schommelingen pieken vroeg vaak boven de drempel en verdampen daarna. Wacht je vooraf bepaalde steekproef en duur af.
-
Waarom test je altijd in blokken van volledige weken?
Koopgedrag verschilt per weekdag. Een test van 10 dagen weegt twee dinsdagen en maar één zondag scheef. Hele weken zorgen dat elke weekdag even vaak meetelt.
-
Je wilt een 2× zo klein effect kunnen detecteren. Wat gebeurt er met het benodigde verkeer?
De relatie is kwadratisch: een half zo klein MDE vraagt ongeveer 4× zoveel verkeer. Daarom zijn kleine effecten op laag verkeer praktisch niet te testen — kies een groter effect of test hoger in de funnel.
Samenvatting
- Vertrek vanuit een concreet funnel-lek met één scherpe hypothese, één wijziging en één vooraf vastgelegde primaire metric.
- Bereken vooraf je steekproefgrootte (95% significantie, 80% power) en testduur; de relatie tussen MDE en verkeer is kwadratisch — een half zo klein effect vraagt ~4× zoveel verkeer.
- Peeking is de grootste valkuil: tussentijds stoppen jaagt je vals-positief-kans van 5% naar meer dan 30%. Wacht je steekproef én minimaal 1 à 2 volledige weken af.
- Een test is praktisch haalbaar bij ongeveer 200 à 350 conversies per variant binnen 4 weken; lukt dat niet, test dan hoger in de funnel of valideer kwalitatief.
- Test grote, zichtbare elementen, niet microdetails als knopkleur, en documenteer ook de tests die niets opleverden.
Lees verder
Section titled “Lees verder”- 5.1 Conversiefunnel & lekken opsporen — kies welk lek je test
- 5.6 Heatmaps & sessie-opnames — kwalitatief valideren bij te weinig verkeer
- 10.5 Beslissingen op data — significantie correct interpreteren
- 5.4 AOV verhogen — vaak een hogere hefboom dan conversie-tweaks