Formeln för urvalsstorlek i A/B-tester talar om hur många besökare varje variant behöver innan en skillnad i konverteringsgrad betyder något. För ett vanligt tvåsidigt test med 95 % konfidens och 80 % styrka behöver du ungefär n = (1,96 + 0,84)² × (p1(1−p1) + p2(1−p2)) / (p2 − p1)² besökare per variant, där p1 är din baslinje och p2 den nivå du hoppas kunna upptäcka.
Kör den formeln på verkliga B2B-siffror så blir resultatet obekvämt. En sida som konverterar på 3 % behöver cirka 14 000 besökare per variant för att tillförlitligt upptäcka en relativ ökning på 20 %. Många B2B-sidor ser inte så många besökare på ett kvartal. Nedan: formeln indata för indata, beräknade tabeller för en rad baslinjenivåer, hur lång tid ett test tar vid en viss trafiknivå och vad du ska göra när svaret är "åtta månader".
Vår hållning: de flesta A/B-tester inom B2B har för låg styrka
Först den åsikt som matematiken stöder. Vi anser att de flesta A/B-tester inom B2B avbryts långt innan de har tillräckligt med data, och att många av de "vinnare" de ger är brus. Mönstret ser ut så här: ett test på tre veckor, en variant som leder med 25 %, en grön markering, en lanserad ändring och sex månader senare ingen synlig ökning i pipelinen.
Tester med för låg styrka missar verkliga effekter, vilket slösar bort testplatsen. Värre är att när ett test med för låg styrka faktiskt passerar signifikansgränsen tenderar den uppmätta ökningen att vara en överskattning, eftersom bara de lyckosamma utfallen tar sig över ribban. Statistiker kallar det ett magnitudfel (typ M-fel). Teamet lanserar en ändring som kanske inte gör någonting och bokför dessutom en uppblåst siffra i sin CRO-rapportering. Att räkna ut urvalsstorleken före lansering är det billigaste skyddet.
Formeln för urvalsstorlek i A/B-tester
Standardformeln för att jämföra två konverteringsgrader (ett z-test för två proportioner) är:
n per variant = [ zα/2 × √(2 × p̄ × (1 − p̄)) + zβ × √(p1(1 − p1) + p2(1 − p2)) ]² / (p2 − p1)²
Varje indata har en betydelse i klartext:
- p1 (grundläggande konverteringsgrad): den nuvarande konverteringsgraden för sidan och målet du testar. Använd siffran för exakt den konverteringshändelsen och exakt den sidan, från de senaste 4 till 8 veckorna, inte ett genomsnitt för hela webbplatsen.
- p2 (målnivå): utgångsnivån multiplicerad med (1 + MDE). Med en utgångsnivå på 3 % och en relativ MDE på 20 % blir p2 = 3,6 %.
- MDE (minimum detectable effect): den minsta relativa förbättring du vill kunna upptäcka. Det är ett affärsbeslut, inte ett statistiskt. Mindre MDE kräver dramatiskt mer trafik, eftersom skillnaden (p2 − p1) kvadreras i nämnaren. Halvera MDE och urvalet blir ungefär fyra gånger så stort.
- p̄ (sammanslagen nivå): medelvärdet av p1 och p2. Den beskriver bruset under antagandet att det inte finns någon verklig skillnad.
- zα/2 = 1,96: motsvarar en andel falska positiva på 5 % (alfa 0,05), fördelad på båda svansarna eftersom varianten kan vara bättre eller sämre.
- zβ = 0,8416: motsvarar 80 % styrka, vilket innebär att om den verkliga förbättringen är lika stor som din MDE upptäcker testet den i 80 % av fallen. I övriga 20 % missar du en verklig vinnare.
Många kalkylatorer använder den förenklade opoolade versionen som visas i första stycket. Vid konverteringsgrader inom B2B skiljer sig de två åt med bara en handfull besökare. Vår A/B-testkalkylator använder den poolade formeln ovan och uppskattar även testets längd.
Genomräknat exempel, steg för steg
Exempel (illustrativa siffror): en sida för demoförfrågan konverterar med 3 %. Du vill upptäcka en relativ ökning på 20 %.
- Sätt nivåerna: p1 = 0,030, p2 = 0,030 × 1,2 = 0,036. Den absoluta skillnaden är 0,006.
- Sammanvägd andel: p̄ = (0,030 + 0,036) / 2 = 0,033.
- Första termen: √(2 × 0,033 × 0,967) = √0,06382 = 0,2526. Multiplicera med 1,96: 0,4951.
- Andra termen: p1(1−p1) = 0,0291 och p2(1−p2) = 0,0347. √(0,0638) = 0,2526. Multiplicera med 0,8416: 0,2126.
- Addera och kvadrera: (0,4951 + 0,2126)² = 0,7077² = 0,5009.
- Dividera med den kvadrerade skillnaden: 0,5009 / 0,006² = 0,5009 / 0,000036 = 13 914 besökare per variant.
Testet behöver alltså ungefär 27 800 besökare totalt, och runt 417 konverteringar bara i kontrollgruppen (13 914 × 3 %), innan du läser av resultatet. Som kontroll ger den förenklade opoolade formeln 13 911 per variant, och en arcsin-approximation (Cohens h) ger cirka 13 890. De tre metoderna skiljer sig åt med mindre än 0,2 %.
Tabell över urvalsstorlek för konverteringsgrader inom B2B
Tabellen nedan tillämpar den sammanslagna formeln ovan (alfa 0,05 tvåsidigt, styrka 0,8) på baslinjer från 1 % (till exempel demoförfrågningar som andel av alla besökare på en välbesökt sida) till 10 % (till exempel en mikrokonvertering som ett klick på en CTA). Använd din egen baslinje; raderna är bara referenspunkter. Värdena är besökare per variant, beräknade i Node.js och avrundade uppåt.
| Baskonvertering | 10 % relativ MDE | 20 % relativ MDE | 30 % relativ MDE | 50 % relativ MDE |
|---|---|---|---|---|
| 1% | 163,095 | 42,693 | 19,827 | 7,750 |
| 2% | 80,682 | 21,109 | 9,798 | 3,826 |
| 3% | 53,211 | 13,914 | 6,455 | 2,518 |
| 5% | 31,234 | 8,158 | 3,780 | 1,471 |
| 10% | 14,751 | 3,841 | 1,774 | 686 |
Att gå från en MDE på 10 % till en MDE på 50 % minskar det nödvändiga urvalet ungefär 20 gånger. En fördubblad baskonvertering halverar det ungefär. Du kan inte ändra trafiken snabbt, men du kan välja storleken på förändringen du testar och vilken konvertering du mäter, och på en liten webbplats är det de två spakar som spelar roll.
Hur lång tid tar testet?
Längden är det totala antalet besökare som krävs (båda varianterna) delat med de besökare per månad som faktiskt når den testade sidan. Tabellen visar antal månader för en 50/50-fördelning vid tre trafiknivåer.
| Besökare per månad till sidan | Utgångsläge | 10 % MDE | 20 % MDE | 30 % MDE | 50 % MDE |
|---|---|---|---|---|---|
| 2,000 | 2% | 80.7 | 21.1 | 9.8 | 3.8 |
| 2,000 | 3% | 53.2 | 13.9 | 6.5 | 2.5 |
| 2,000 | 5% | 31.2 | 8.2 | 3.8 | 1.5 |
| 5,000 | 2% | 32.3 | 8.4 | 3.9 | 1.5 |
| 5,000 | 3% | 21.3 | 5.6 | 2.6 | 1.0 |
| 5,000 | 5% | 12.5 | 3.3 | 1.5 | 0.6 |
| 20,000 | 2% | 8.1 | 2.1 | 1.0 | 0.4 |
| 20,000 | 3% | 5.3 | 1.4 | 0.6 | 0.3 |
| 20,000 | 5% | 3.1 | 0.8 | 0.4 | 0.1 |
Oavsett vad tabellen säger, kör varje test i minst två hela veckor så att beteendet på vardagar och helger och eventuella kampanjtoppar finns med i båda grupperna. Och behandla allt över tre månader som ett test du förmodligen inte ska köra i nuvarande form: sidinnehåll, kampanjer och trafikmix förändras under den tiden, och resultatet beskriver en webbplats som inte längre finns.
Med 5 000 besökare i månaden och en baslinje på 3 % kan en förbättring på 50 % läsas av på ungefär en månad, medan en förbättring på 10 % tar nästan två år. Ingen låter en sida vara oförändrad i två år, så det andra testet kommer att avbrytas i förtid och tolkas som om det betydde något.

Det de flesta team gör fel
- Att använda trafiken för hela webbplatsen i tidsuppskattningen. Bara besökare som når det testade elementet räknas. Ett test på prissidan på en webbplats med 20 000 besökare kanske bara får 2 000 berättigade besökare i månaden.
- Att välja MDE efter testet. Om du satte MDE till 30 % före lansering och testet visar 12 % har du ingen vinnare på 12 %. Du har ett test utan entydigt resultat.
- Att kika och stoppa vid första gröna markeringen. Evan Millers analys, How Not To Run an A/B Test, visar att upprepade signifikanstester alltid ökar andelen falska positiva. I hans exempel (en baslinje på 50 %, en ändring som inte gör något, stopp så snart resultatet når 5 % signifikans eller efter 150 observationer) är andelen falska positiva 26,1 % i stället för de nominella 5 %.
När siffrorna säger månader: sju alternativ
1. Testa större ändringar
Det billigaste sättet att minska urvalsstorleken är att höja MDE på ett ärligt sätt, vilket innebär att testa ändringar som är stora nog att rimligen ge den effekten: ett nytt värdeerbjudande, ett annat erbjudande (direktbokning i stället för ett kontaktformulär), en sida anpassad efter en bransch i stället för en generisk. Vår guide till konverteringsoptimering för B2B beskriver hur du rangordnar testidéer efter förväntad effektstorlek.
2. Testa på sidor med mer trafik
Startsidan, de mest lästa blogginläggen och landningssidor med hög volym ger dig fler besökare per månad (se våra anteckningar om optimering av B2B-landningssidor för vilka sidor som brukar ha mest trafik i beslutsfasen). Ett test på en mall som delas av många sidor (alla lösningssidor, alla blogginlägg) samlar deras trafik i ett enda experiment.
3. Använd mikrokonverteringar varsamt
Mikrokonverteringar som CTA-klick eller påbörjade formulär har högre baslinjer, så raden för 10 % i tabellen gäller i stället för raden för 2 %. Haken: en variant kan öka klicken och minska kvalificerade demos. Använd mikrokonverteringen som beslutsmått bara när du har belägg för att den rör sig i takt med makromålet, och rapportera alltid makrokonverteringen bredvid som skyddsräcke.
4. Slå ihop segment och dela upp dem senare
Att köra separata tester per segment delar upp din trafik. Kör ett test över alla segment och se sedan resultaten på segmentnivå enbart som indikationer. Om du behöver ett segmentspecifikt svar måste testet dimensioneras för enbart det segmentets trafik. Färdplanen för personaliseringstester på 90 dagar visar hur du ordnar segmenttester så att vart och ett får tillräckligt med trafik.
5. Använd sekventiell testning
Sekventiella designer (gruppsekventiella tester med förplanerade delavläsningar, eller alltid giltiga metoder som finns inbyggda i vissa testverktyg) låter dig kontrollera resultaten under testet och avbryta tidigt när effekten är stor, utan att öka antalet falska positiva. Avvägningen är ett något större maximalt urval om testet körs till slutet. Det här är den legitima versionen av att tjuvkika. Om ett test skulle ta månader, lägg först budgeten på diagnostiska CRO-verktyg som sessionsinspelningar och formuläranalys.
6. Överväg ett bayesianskt angreppssätt, med tydliga förväntningar
Bayesiansk A/B-testning rapporterar en sannolikhet för att B slår A och en förväntad förlust om du väljer fel. Det är lättare att agera på än ett p-värde, och det låter dig fatta uttryckliga beslut som ”lansera om sannolikheten för att vara bättre är över 90 % och den förväntade förlusten är under 0,1 procentenheter”. För ändringar som går att backa är det ofta rationellt att acceptera den risken.
Vad bayesianska metoder inte gör är att skapa information. Med svaga priorer är den data som krävs för att vara säker på en förbättring på 20 % ungefär densamma som i den frekventistiska tabellen. En ”sannolikhet att slå” på 90 % i ett litet urval är fortfarande bräcklig, och att kontrollera den dagligen med en stoppregel ökar fortfarande felfrekvensen i praktiken. Bayesianska tester ändrar hur du uttrycker osäkerhet och fattar beslut. De minskar inte osäkerheten.
7. Kika inte, eller planera dina tittar
Bestäm urvalsstorleken före lanseringen, skriv in den i testbriefen och avgör inte testet förrän du når den. Om intressenter behöver delrapporter, använd en sekventiell design från början i stället för spontana kontroller. Vår mall för experimentplan har ett fält för vart och ett av dessa beslut.
En checklista före lansering
- Ta fram baslinjen och antalet relevanta besökare per månad för exakt den sidan och konverteringen (de senaste 4–8 veckorna).
- Välj MDE utifrån hur stor ändringen är, och skriv ner den.
- Räkna ut n per variant med formeln eller tabellen ovan, och sedan testlängden.
- Om tiden överstiger ungefär tre månader, gör om testet (större ändring, sida med mer trafik eller ett mått med högre baslinje plus ett skyddsräcke).
- Bestäm stoppregeln: fast urval, eller en sekventiell plan med förplanerade avläsningar.
För B2B-team kommer de största effekterna oftast av att visa olika besökare olika innehåll snarare än att finslipa en sida för alla, eftersom ett budskap skrivet för ett segment är en större förändring än en ny knappfärg. Om du väljer mellan ett enkelt split-test och ett test med flera varianter eller faktorer, läs vår jämförelse av A/B-testning och multivariat testning, som tillämpar samma beräkning av urvalsstorlek på A/B/n- och multivariata upplägg.
När du är redo att testa segmentspecifika upplevelser låter Markettailors A/B-testning för personaliserade sidor dig ställa varje segment mot en kontrollgrupp och följa resultatet per segment, så att du får den urvalsstorlek du planerade.
Vanliga frågor
Vad är formeln för urvalsstorlek i A/B-tester?
För två konverteringsgrader gäller n per variant = [1,96 × √(2p̄(1−p̄)) + 0,8416 × √(p1(1−p1) + p2(1−p2))]² / (p2 − p1)², där p1 är utgångsnivån, p2 målnivån och p̄ deras medelvärde. Detta förutsätter 95 % konfidens (tvåsidigt) och 80 % styrka.
Hur många besökare behöver jag för ett A/B-test med 2 % konverteringsgrad?
Cirka 21 100 besökare per variant för att upptäcka en relativ ökning på 20 %, cirka 9 800 för en ökning på 30 % och cirka 3 800 för en ökning på 50 %, vid 95 % konfidens och 80 % styrka. Dubbla siffrorna för testets totala trafik.
Kräver bayesiansk A/B-testning en mindre urvalsstorlek?
Inte nämnvärt, om du inte har en stark och välgrundad prior. Bayesianska tester ger mer intuitiva resultat (sannolikhet att slå kontrollen, förväntad förlust) och stöder riskbaserade beslut, men den datamängd som krävs för att vara säker på en viss förbättring är ungefär densamma som i den frekventistiska beräkningen.
Vilken minsta detekterbara effekt bör en B2B-webbplats använda?
Välj MDE utifrån din trafik, inte utifrån önsketänkande. Räkna ut vad som går att upptäcka på sex till åtta veckor med sidans trafik, och testa sedan bara ändringar som är tillräckligt stora för att rimligen ge den ökningen. I tabellen över testlängd ovan kan en sida med 5 000 besökare i månaden och en utgångsnivå på 3 % bara läsa av ökningar på omkring 30 % eller mer inom tre månader.
Kan jag avbryta ett A/B-test i förtid om det redan är signifikant?
Inte med ett vanligt test med fast urvalsstorlek, eftersom upprepade kontroller ökar antalet falska positiva. Om du behöver kunna avbryta tidigt, använd en sekventiell testdesign med delanalyser som planeras före lansering.