Gratisverktyg

Kalkylator för signifikans i A/B-test

Ditt test är avslutat — men vann varianten verkligen? Ange antal besökare och konverteringar för varje version och se p-värdet, konfidensintervallet och ett utlåtande i klartext. Allt räknas ut i din webbläsare medan du skriver.

+20.0%

Varianten slår kontrollen — skillnaden är statistiskt signifikant.

p = 0.0283 vid 95 % konfidens

Kontrollens konverteringsgrad
5.00%
Variantens konverteringsgrad
6.00%
p-värde
0.0283
Skillnadsintervall
+0.1% … +1.9%

Matematiken

Så beräknas statistisk signifikans för ett A/B-test

Kalkylatorn kör ett z-test för två proportioner, standardtestet för att jämföra två konverteringsgrader:

  • Konverteringsgrader: p₁ = konverteringar A ÷ besökare A och p₂ = konverteringar B ÷ besökare B.
  • Sammanvägd grad, om vi för stunden antar att A och B är lika: p = (konverteringar A + konverteringar B) ÷ (besökare A + besökare B).
  • Skillnadens standardfel: SE = √[p(1 − p) × (1/n₁ + 1/n₂)].
  • Teststatistika: z = (p₂ − p₁) ÷ SE. p-värdet är chansen att få ett z minst så långt från noll om det inte fanns någon verklig skillnad.

Räkneexempel: standardvärdena

  • A: 250 konverteringar av 5 000 besökare = 5,00 %. B: 300 av 5 000 = 6,00 %. Det är en relativ ökning på 20 %.
  • Sammanvägd grad: 550 ÷ 10 000 = 0,055.
  • SE = √(0,055 × 0,945 × (1/5 000 + 1/5 000)) ≈ 0,00456.
  • z = 0,01 ÷ 0,00456 ≈ 2,19, vilket ger ett tvåsidigt p-värde på 0,0283.

0,0283 är under 0,05, så vid 95 % konfidens är B en signifikant vinnare. Vid 99 % konfidens är den inte det: då krävs p under 0,01.

Att läsa resultatet

Vad p-värdet, ökningen och konfidensintervallet var och ett säger

  • p-värde. Hur överraskande skillnaden vore om A och B verkligen var identiska. Det säger ingenting om hur stor effekten är. En pytteliten, oanvändbar ökning kan ha ett pyttelitet p-värde med tillräckligt mycket trafik.
  • Ökning. Den relativa förändringen från A till B: (6,00 % − 5,00 %) ÷ 5,00 % = +20 % i exemplet. Det är din bästa enskilda uppskattning, men den är brusig.
  • Konfidensintervall. Spannet av verkliga skillnader som passar med datan, i procentenheter. För exemplet vid 95 % går det från ungefär +0,1 till +1,9 enheter: B är bättre, men den verkliga vinsten kan ligga var som helst mellan nästan ingenting och nästan dubbelt så mycket som du mätte. Använd det för att avgöra om förändringen är värd att lansera, inte bara om den är verklig.

Om intervallet korsar noll är resultatet inte signifikant på den konfidensnivån. Vid 99 % går exemplets intervall från −0,2 till +2,2 enheter, och det är precis därför det inte håller där.

Stickprovsstorlek

Varför samma ökning kan vara signifikant eller inte

Samma resultat på 5 % → 6 % (en ökning på 20 %), med olika antal besökare i varje variant:

Besökare per variantzp-värde (tvåsidigt)95 %-intervall (enheter)
1 0000,980,327−1,0 till +3,0
2 5001,550,121−0,3 till +2,3
5 0002,190,028+0,1 till +1,9
10 0003,100,002+0,4 till +1,6
20 0004,39< 0,0001+0,6 till +1,4

Ett ”inte signifikant” resultat vid 1 000 besökare betyder inte att B inte gjorde någon skillnad. Det betyder att testet var för litet för att avgöra det. Räkna ut hur mycket trafik du behöver innan du startar med kalkylatorn för stickprovsstorlek: en ökning på 20 % på en bas på 5 % kräver 8 156 besökare per variant vid 95 % konfidens och 80 % styrka.

Innan du lanserar

Kontroller innan du litar på ett signifikant resultat

  • Du nådde det planerade stickprovet. Att sluta första gången p sjunker under 0,05 blåser upp de falska positiva långt över 5 %. Läs resultatet en gång, vid den stickprovsstorlek du bestämde i förväg.
  • Fördelningen är den du ställde in. I ett 50/50-test är 5 000 mot 4 700 besökare för ojämnt för att vara slumpen (chitvå p ≈ 0,002). En skev stickprovsfördelning betyder oftast att en omdirigering, ett botfilter eller en spårningsbugg tappar besökare från en variant, och då går det inte att lita på konverteringsgraderna.
  • Det pågick i hela veckor. Besökare på vardagar och helger konverterar olika; ett test som slutar mitt i veckan ger vissa dagar för stor vikt.
  • Ökningen är värd att ha. Titta på intervallets nedre gräns. Om den minsta rimliga vinsten inte skulle betala för förändringen är ett signifikant resultat inget skäl att lansera den.
  • Du letade inte efter det. Att dela upp ett platt test efter enhet, land och källa tills något segment blir signifikant är ett säkert sätt att hitta en falsk positiv. Testa ett segment bara om du hade planerat det.

Ingen vinnare

Vad du gör när resultatet inte är signifikant

  • Kontrollera om testet kunde ha hittat effekten. Om du hade färre besökare än kalkylatorn för stickprovsstorlek kräver hade testet för låg styrka, och det ärliga utlåtandet är ”okänt”, inte ”ingen skillnad”.
  • Läs intervallet. Ett intervall på −0,3 till +2,3 enheter utesluter en stor förlust men lämnar en värdefull vinst möjlig. Det kan fortfarande motivera att lansera en förändring med låg risk, som en bedömning snarare än ett testresultat.
  • Förläng inte testet om och om igen. Att lägga till trafik tills det blir signifikant är att tjuvkika med extra steg. Planera i stället ett nytt test med en större förändring eller en sida med mer trafik.
  • Ta reda på varför inget rörde sig. Titta på session replays av besökare i varje variant och se var tratten tappar dem. En variant som ingen lade märke till är ett annat problem än en som folk såg och ignorerade.

Vanliga frågor

Om statistisk signifikans

Vad betyder statistisk signifikans egentligen?

Det betyder att skillnaden du mätte sannolikt inte är en slump. Ett p-värde på 0,03 säger att om de två versionerna i själva verket vore identiska skulle du se ett så här stort glapp (eller större) ungefär 3 % av gångerna. Det är ett belägg för att något har förändrats — inte ett bevis, och inte ett mått på hur stor förändringen är.

Vilket p-värde räknas som en vinnare?

Konventionen är p under 0,05, vilket motsvarar 95 % konfidens. Höj ribban till 99 % när förändringen är dyr att lansera eller svår att backa, och nöj dig med 90 % för lågriskjusteringar av text, där det är mer värt att ha ungefär rätt snabbt än att vara helt säker långsamt.

Kan jag avsluta testet så fort det blir signifikant?

Nej. Att titta gång på gång och stanna vid det första gröna resultatet — att tjuvkika — blåser upp antalet falska positiva rejält. Bestäm urvalsstorleken innan du drar igång, kör tills du når den och läs sedan av resultatet en enda gång. Kalkylatorn för urvalsstorlek ger dig den siffran.

Skickar den här kalkylatorn min data någonstans?

Nej. Hela testet körs i din webbläsare med ren JavaScript. Inget du skriver laddas upp, loggas eller sparas, och sidan fungerar offline när den väl har laddats.

Hur beräknar man statistisk signifikans för ett A/B-test?

Använd ett z-test för två proportioner. Beräkna varje konverteringsgrad, den sammanvägda graden för båda varianterna och standardfelet √[p(1 − p)(1/n₁ + 1/n₂)]. Dela skillnaden mellan graderna med standardfelet för att få z, och omvandla z till ett p-värde. 250/5 000 mot 300/5 000 ger z ≈ 2,19 och ett tvåsidigt p-värde på 0,028, signifikant vid 95 %.

Vad är ett p-värde i A/B-testning?

Sannolikheten att se en skillnad minst lika stor som den du mätte om de två versionerna i själva verket presterade lika. Ett p-värde på 0,03 betyder att ett så stort glapp skulle dyka upp ungefär 3 % av gångerna av ren slump. Det är inte sannolikheten att B är bättre, och det mäter inte effektens storlek.

Varför är mitt test inte signifikant när B konverterade bättre?

Oftast för att stickprovet är för litet för skillnadens storlek. Ett resultat på 5 % → 6 % är inte signifikant med 2 500 besökare per variant (p = 0,12) men är det med 5 000 (p = 0,028). Kontrollera den planerade stickprovsstorleken innan du läser ett platt resultat som ”ingen effekt”.

Ska jag använda ett ensidigt eller tvåsidigt test?

Tvåsidigt, om du inte före testet bestämde att en förlust och ingen förändring skulle leda till samma beslut. Ensidigt halverar p-värdet när B ligger före (0,028 blir 0,014 i standardexemplet), och därför är det inte legitimt att byta till det efter att ha sett datan.

Kan jag använda kalkylatorn för fler än två varianter?

Ja, genom att jämföra varje variant med kontrollen var för sig. Varje extra jämförelse ökar risken för en falsk vinnare, så använd en striktare tröskel per jämförelse: för två varianter mot kontrollen testar du var och en vid 97,5 % konfidens i stället för 95 %.

Relaterat

Mer från PulsePanda

Se varför vinnaren vann

Ett p-värde säger dig att något förändrades. PulsePandas session replay, heatmaps och trattar visar vad folk faktiskt gjorde.

Kom igång gratis