Contents · 9 sections
01Peeking
They start a test and check the p-value every day. As soon as it drops below 0.05, they declare a win.
Decide in advance when to look. Either a fixed duration with one check at the end, or a sequential test with a stopping rule: group boundaries or the simple rule.
02Stopping at the first significance
On day six the test showed significance, so they stop it and ship B.
Significance in the middle of a test is not a result. Wait for the sample calculated in advance; if you need to stop earlier, use a sequential test.
03A partial week
They start the test on Monday and sum up on Friday: “it's obvious already”.
Keep a test to whole weeks: 7, 14 or 28 days. The duration calculator rounds up to weeks by itself.
04An unfair traffic split (SRM)
They look only at conversions and do not check whether traffic split evenly.
Check SRM in the first days and at the end. At p < 0.001 look for the cause (a redirect, a cache, bots) and do not use the result.
05Many metrics without a correction
They watch 20 metrics and celebrate the one that lit up.
One primary metric, chosen in advance. For the rest, a multiple comparisons correction (Holm or Benjamini–Hochberg).
06Effect dilution
They change the payment page but analyse everyone in the test, even those who never reached payment.
Analyse only those who saw the change: “triggered analysis”. The condition: “saw it” is defined the same way in A and B.
07A small test for a small effect
They run a test on modest traffic “for a month” and expect to find +5%.
Calculate the minimum detectable effect first. If it exceeds a realistic one, test bolder changes or do not test at all.
08Significant but useless
They see p < 0.05 and ship without looking at the effect size.
Decide in advance which effect pays for the change, and compare the whole interval with it, not just the p-value.
09Checklist
Before launch
During
After
Idea: Evan Miller, “How Not To Run An A/B Test” (evanmiller.org). The text, examples and mistakes 3–8 are our own.