Guide

A/B testing

An A/B test is a randomised experiment: visitors are split between two versions and the difference is measured. Microsoft reports that about 6 percent of its own tests fail the check that the split happened as configured, and gates every test on it. Read a result only after the test is shown to be valid.

By the Addition team Updated 7 September 2026 13 min read

What an A/B test compares

Split your visitors at random, show one group the current version and the other a change, then compare. That definition is settled and it is not the hard part.

The definition is not where tests fail.

store.example/products/linen-blazer

NORTHAM

Daily Greens, 30 servings

$50

★★★★☆1,204 reviews

Purchase options

  • Cancel any time
  • Free returns within 30 days
One change, held against everything else. That is what makes this a test, not a redesign.

That is what a test is for. Every line in that box is a decision somebody made. The one above is the kind nobody in the room can call in advance. Taking the one-time option away might lift subscriptions, or it might cost you the people who wanted one box.

Tests fail in execution. The split does not come out the way it was configured. The tool measures something other than what you think. The result gets read before the test finished. Or the thing that moved was the novelty, not the change. Those failures do not announce themselves. A broken test produces a number that looks exactly like a working test’s number.

Which failures each guide covers

What a guide explainsHow many guides explain it
What an A/B test isAll six
How to split the trafficAll six
How to check the split came out rightOne of them, Kameleoon
What an A/A test is forOne of them, Kameleoon
Whether reading a result early invalidates itNone of them
When not to run a test at allNone of them
The first two rows are what this question is usually taken to mean. The last four decide whether a result means anything, and one guide out of six reaches any of them.

The vendors selling testing tools answer "what is an A/B test". Far fewer answer "how do I run one without fooling myself".

That second question is the harder one, and it is where most of this goes. Whether to test at all, how many of your ideas will win and what the programme costs is a different one, answered in our guide to conversion rate optimization.

What you split on decides what you can measure

Before anything else comes the unit of randomisation. You can split by session, by browser cookie or by logged-in user, and the choice changes what the result can mean.

The split unit and the metric denominator have to match.

If you split by session, a returning shopper can see version A on Monday and version B on Tuesday. Their behaviour is then a mixture of both, and the comparison is diluted. If you split by cookie, the same person on a phone and a laptop counts as two people. If you split by logged-in user, you only cover the ones who log in.

Split unitWhat one unit isWhere it breaks
SessionOne visitA returning visitor sees both versions
Cookie or deviceOne browserOne person on two devices counts twice
Logged-in userOne accountOnly covers signed-in traffic
None of these is right in general. The rule is that whatever you split on has to be the same thing your metric divides by.

That rule is the same one behind what a conversion rate is: before two people can compare a rate they have to agree on what it divides. The consequence is the same here, because two teams using the same word can be measuring different populations.

This is the part of the setup that cannot be fixed afterwards. Sample size can be extended, a metric can be recalculated, but a test that split on the wrong unit has to be re-run.

Two checks before the result

Splitting on the right unit is necessary and it is not enough. A test result answers the question you asked only if the test itself worked. There are two cheap ways to find out. Use both checks before reading a result. What remains unanswered is how often these checks fail in small ecommerce programmes, and what each one cannot catch.

First: did the split come out the size you asked for.

Microsoft Research, read 2 September 2026How often the split itself is broken in serious programmes

Microsoft states it as a rule: every A/B test must pass the sample ratio mismatch check before it is analysed for its effects. A store without that gate is not running fewer broken tests, it is finding out about fewer of them.

How often the split itself is broken in serious programmes

The check, stated as a gate by the people who run it

Microsoft Research stating that every analysis in an ongoing A/B test must pass the sample ratio mismatch check before results are revealed
  1. 1Microsoft does not treat this as advice. No result is revealed until the split passes the check.
  2. 2The threshold is published too: a p-value under 0.0005, set deliberately low so the gate does not cry wolf.
Microsoft Research, Diagnosing Sample Ratio Mismatch in A/B Testing, read 7 September 2026.

The check is arithmetic you can do yourself. Take the number of visitors in each group, compare against the split you configured, and ask how likely that difference is by chance.

The two tests are imbalanced by exactly the same proportion. Only the larger one produces evidence of it. That is worth knowing before a clean-looking check is read as a clean bill of health on a small test.
The sample ratio check on two configured 50/50 splits

When the check fires

When the check fires, the fix is not to rebalance the numbers. Microsoft’s account of an MSN experiment shows why.

Microsoft Research, read 2 September 2026What a broken split can do to a result

Microsoft draws the general lesson themselves: missing users are rarely just some users, they are often the ones most affected by what was being tested. Microsoft records that this test had enough power to detect very small changes, and the direction was still wrong. Their instruction is precise: do not trust the results of a test with a mismatch until you diagnose the root cause. In this case the diagnosis found the cause and the corrected result reversed.

What a broken split can do to a result
This is what a 95 percent threshold means, not a measurement of any tool. It is here because the useful thing an A/A test does is smaller than it is usually sold as: it catches gross setup errors, such as a broken split or a metric wired to the wrong event. Measuring a tool’s actual false positive rate would take far more than twenty runs, so do not treat a clean A/A as a certificate.
What a correctly calibrated tool should do on tests where nothing changed

Second check: run an A/A test

Second: run an A/A test. Show both groups the same thing and see what your tool reports. Since nothing differs, any significant result it produces is a false positive. An A/A test catches a broken split or a metric wired to the wrong event. It does not measure your tool’s error rate. As the calculator above shows, twenty runs at a 95 percent threshold are expected to produce about one significant result on their own.

Four ways a valid test still misleads you

A test can pass both of those checks and still report something untrue. These failure modes come from LinkedIn’s published research on the automatic detection it built for its own experimentation platform. That is evidence they are worth catching, not evidence of how often they happen. That research does not publish an incidence rate.

Stopping early is the one with a paper written about it.

Watching a test and stopping when it looks significant is not impatience, it is a different statistical procedure from the one the p-value assumes. Johari, Koomen, Pekelis and Walsh put it directly: frequentist p-values and confidence intervals are "wholly unreliable if users endogenously choose samples sizes by continuously monitoring their tests". Their answer was always-valid p-values, built for exactly this, and the paper reports the method implemented in a large-scale commercial A/B testing platform.

So the choice is a real one, not a scolding. Either fix the horizon before launch and do not look, or use a tool whose statistics are designed to be looked at. What you cannot do is use fixed-horizon statistics and peek anyway.

FailureWhy it happensWhat it does to the result
Design-imposed biasThe setup itself treats the groups differentlyA difference that is not the change
Self-selection biasWho enters the test is not randomThe groups are not comparable
Novelty effectPeople react to the change being newAn effect that fades after the test
Trigger-day effectUsers enter the experiment on different daysGroups measured over different periods
These four are named in LinkedIn’s account of building automatic bias detection into their platform. The reason they built detection is the reason to know the names: at scale they were worth catching automatically, and the research does not say how often they occur.

Contentsquare read its 2026 digital experience panel and found conversion rate down 5.1 percent year over year while frustration signals fell 4.3 percent. Measured frustration signals fell while the conversion rate fell too.

Borrowing somebody else's benchmark instead has the same problem one level up. Ecommerce conversion benchmarks mislead because traffic source, business model and calculation method all differ between stores.

Fix the metric you will judge on before launch, not after you have seen which way it went.

None of these is caught by significance. A test can be perfectly powered, correctly split and stopped on schedule, and still be measuring novelty. Which is why some things are better fixed than tested.

How to run an A/B test in order

Everything above collapses into a sequence, and the order decides whether the result means anything. Four steps happen before a single visitor sees the change. The other two can wait, because nothing in the first four can be reconstructed once the data has arrived.

Six steps, and four of them happen before launch.

  1. Write down what would disprove the idea

    Not what would confirm it. If no result would change your mind, you are not running a test, you are running a demonstration.

  2. Pick the split unit and the metric together

    They have to be the same thing. This is the decision that cannot be fixed later.

  3. Compute the sample and the stop date

    Before launch, in writing. The arithmetic and why underpowered tests produce false winners are in the CRO method.

  4. Run an A/A test if you have never sanity-checked the tool

    Once per tool, not once per test. It catches a broken split or a miswired metric, which is a smaller claim than validating the statistics.

  5. Check the sample ratio before you look at the outcome

    The split first, the result second. Microsoft’s rule is not to trust the result of a test with a mismatch until you have diagnosed the cause, which is a diagnosis, not a discard.

  6. Read the result at the horizon you set

    Or use always-valid statistics, and know which one your tool gives you.

The first step is the cheapest of the four and the easiest to leave out, because nothing downstream refuses to run without it. A hypothesis that cannot be wrong will always be confirmed by something.

Step three is the one that decides whether the rest is worth doing at all, and it is arithmetic, not judgment. The CRO method works through what a given baseline and effect size demand, and what happens to your results when you launch below that number anyway.

What A/B testing costs

That sequence needs somewhere to run, and one major free option ended on a known date. Know this before you price the work, because it retired Google’s free first-party testing tool.

Google Optimize was retired on 30 September 2023.

Google’s own notice states it plainly: Optimize and Optimize 360 are no longer available as of that date, and any experiments still active on it ended. Google’s stated reason was that the product "did not have many of the features and services that our customers request and need for experimentation testing", and that it would invest in third-party integrations for Google Analytics instead.

What that establishes is narrow: one widely used free first-party tool ended without a first-party successor. This is not a survey of what free or open-source alternatives exist today. It says nothing about what testing costs in general, or about who can still test.

We are not publishing a price table here. Vendor pricing for this category is mostly quote-based and we found no independent published range, and an invented one would be worse than none. What is stable enough to say is the shape: the statistics engine differs between vendors, and which engine you are on decides whether the peeking question above applies to you. Optimizely and VWO each publish an engine built to be watched while it runs. Check which engine your own tool uses before you decide whether you are allowed to look.

Your traffic decides the rest. If you sell to other businesses, the same sample requirement takes longer to reach, because it is a count of visitors and you have fewer of them.

B2B and SaaS CRO starts by asking whether your traffic can carry a test at all.

If your traffic does carry one, the page changes that follow are our landing page optimization service.

When not to run an A/B test

With the cost question bounded, the harder question is whether to run one at all. People keep asking it and rarely get an answer. It has one, and it is arithmetic, not opinion.

If you cannot reach the sample the effect requires, the test does not become a smaller test.

The scale is worth holding in mind. IRP Commerce’s July 2026 figures put the all-markets conversion rate at 2.26 percent. Detecting a small relative change on a baseline that size takes tens of thousands of visitors per variant. The exact number depends on the effect you want to detect and the power you want. That arithmetic, and what it does to your results when you launch below it, is worked through in the CRO guide.

SituationWhat to do instead of an A/B test
Not enough traffic for the sample the effect needsShip the change if it is unambiguously better; otherwise leave it
The change is a bug fix or a broken flowFix it. There is no hypothesis to test
The change is required by law or a payment ruleImplement it. The alternative is not a variant
You want to know why, not whetherSession replay, support tickets and asking people
The change is irreversible or affects priceTest it, and read the CRO sample size question first
The first row is the common one and the hardest to accept. A store far below the sample its effect requires is not being careful by testing. That store is spending weeks to get a number whose reliability it has not established, and the CRO guide shows what low power does to the share of winners that are real.

When a change is worth making without a test, look first at the form people are trying to finish. That is the subject of our guide to checkout optimization.

One check settles more arguments than any of the above: take your last completed test, count the visitors in each group, and check the split against what you configured. If the two numbers are further apart than chance explains, that result needs a cause found before it can be trusted, and finding that out costs one calculation.

Sources

  1. Microsoft Research Sample ratio mismatch in A/B testing: about 6 percent of Microsoft tests, about 10 percent of LinkedIn zoomed-in tests, and the MSN carousel result that reversed 14 September 2020, read 2 September 2026
  2. Johari, Koomen, Pekelis and Walsh Always valid inference: p-values are "wholly unreliable if users endogenously choose samples sizes by continuously monitoring their tests" arXiv 1512.04922, read 2 September 2026
  3. Liu and colleagues, LinkedIn Automatic detection and diagnosis of biased experiments: design-imposed bias, self-selection bias, novelty effect and trigger-day effect arXiv 1808.00114, read 2 September 2026
  4. Google Google Optimize and Optimize 360 are no longer available as of 30 September 2023, and active experiments ended on that date read 2 September 2026
  5. Kohavi, Deng and Vermeer A/B testing intuition busters, KDD 2022: the sample arithmetic and the false-positive consequences of low power 2022, read 1 September 2026
  6. Optimizely A/B testing glossary entry and statistics engine documentation, including sequential testing read 2 September 2026
  7. Kameleoon A/B testing guide: the only one covering sample ratio mismatch and A/A testing, and the one that says an unbalanced ratio means results will not be significant read 2 September 2026
  8. FullStory A/B testing guide, sixth organic result: covers sample size and significance, not validity read 2 September 2026
  9. Salesforce What is A/B testing: definition and process, second organic result read 2 September 2026
  10. Oracle What is A/B testing: definition and examples, fifth organic result read 2 September 2026
  11. VWO Bayesian sequential testing with Bonferroni correction in a commercial testing platform 4 December 2024, read 1 September 2026
  12. IRP Commerce Ecommerce market data July 2026: all-markets conversion rate 2.26 percent July 2026, read 2 September 2026
  13. Google Analytics Data API schema: sessionKeyEventRate and userKeyEventRate as separate metrics with different denominators read 2 September 2026
  14. Hoenig and Heisey The abuse of power: the pervasive fallacy of power calculations for data analysis 2001, read 1 September 2026
  15. Contentsquare 2026 digital experience benchmark: conversion rate fell 5.1 percent year over year while frustration signals fell 4.3 percent read 2 September 2026
  16. The Good Why ecommerce benchmarks mislead: traffic source, business model and calculation method differ between stores 3 December 2024, read 2 September 2026

Questions people ask

What is an A/A test versus an A/B test?

An A/A test shows both groups the same thing. Since nothing differs, any significant result it reports is a false positive, not a finding. Run one when you adopt a tool, not before every test. Treat it as a sanity check on the plumbing, not a verdict on the statistics. At a 95 percent threshold you would expect roughly one significant result in twenty A/A runs even from a perfect tool.

When not to use A/B testing?

Skip the test in four cases. You cannot reach the sample size the effect requires. The change fixes something broken. Law or a payment rule requires it. Or the question is why, not whether. The first is the common case. On a 2 percent conversion rate, detecting a small change takes tens of thousands of visitors per variant. A test that cannot get there does not produce a weaker answer, it produces one whose reliability you have not established.

Is A/B testing the same as hypothesis testing?

An A/B test is an application of hypothesis testing, with two complications that the textbook version does not have. You usually watch the result arrive, which invalidates a fixed-horizon p-value unless the tool is built for it. And you usually look at several metrics, which raises the chance that one of them clears the threshold by luck.

Who uses A/B testing?

Microsoft and LinkedIn both run it as infrastructure, not as a project. Microsoft gates every experiment on a sample ratio check before analysis. LinkedIn built automatic detection for four common biases. One gap between that and a small store is traffic, since those programmes can detect effects a small store cannot. Another is that Microsoft reports a measured mismatch rate for its own experiments at all, which is not a figure most organisations publish.