Ga naar inhoud

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.

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.

  1. Begin met een lek uit je funnel-diagnose. Test nooit willekeurig. Je vertrekt vanuit het grootste herstelbare lek uit 5.1.

  2. Formuleer één scherpe hypothese. Gebruik het sjabloon. Eén wijziging, één verwachte uitkomst, één onderbouwing.

  3. 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”.

  4. 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.

  5. Bereken de benodigde testduur. Steekproefgrootte per variant × 2, gedeeld door je dagelijkse verkeer. Rond altijd af op volledige weken.

  6. 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.

  7. 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.

  8. Documenteer het resultaat. Ook (juist) de tests die niets opleverden. Bouw een test-logboek op; dat voorkomt dat je hetzelfde tweemaal test.

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 elementenKleurtint van een knop
Aanwezigheid en plaatsing van reviewsLettergrootte van bijschrift
Prijspresentatie en kortingsweergaveKomma in een microcopy-zin
Gastcheckout vs. account verplichtPictogramvariaties
USP-balk / verzendbelofte boven de vouwFooterlinks
Productfoto’s en video vs. alleen fotoExacte witruimte tussen blokken

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.

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 CVRMDE (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
TestparameterSlechtGoed
Significantieniveauonder 90%95% of hoger
Poweronbekend / onder 70%80% of hoger
Conversies per variantminder dan 100meer dan 300
Testduurminder dan 1 week2 tot 4 volledige weken
Aantal varianten tegelijkmeer dan 32 (A/B), hooguit 3 (A/B/C)
ToolFunctieWanneer kiezen
Shopify-native (Shopify Plus: Functions/Apps)Eenvoudige split-tests binnen ShopifyOp Shopify zonder externe tool; beperkt op standaard-plan
IntelligemsA/B-testen van prijs, aanbod en content voor ShopifyAls je prijs- en aanboptests wilt draaien
VWOVolwaardige A/B- en multivariate testing + sample-calculatorBij voldoende verkeer en serieus testprogramma
Convert / AB TastyVisuele editor, server-side testingPrivacyvriendelijk alternatief, EU-hosting beschikbaar
Google OptimizeVoorheen gratis testtool van GoogleNiet meer beschikbaar (gestopt 2023) — gebruik niet
Evan Miller sample-size calculatorSteekproefgrootte vooraf berekenenAltijd, vóór elke test — gratis
  • 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.
Hypothese-formulier
  • 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.”