Enter the visitors each variant actually received and the split you intended. The calculator runs a chi-square test to tell you whether your traffic split is broken.
Sample ratio mismatch (SRM) means the share of visitors each variant actually received does not match the split you configured. If you set up a 50/50 test and after two weeks variant A has 52,000 visitors while variant B has 48,000, that gap is far too large to be random chance. Something in the test setup is assigning or counting traffic unevenly.
SRM matters because the missing visitors are almost never missing at random. A redirect variant that loses visitors on slow connections is quietly removing your most impatient users from one arm. Whatever caused the imbalance also biased the sample, so the conversion rates you are comparing come from two different populations. A test with SRM cannot be trusted, no matter how significant the result looks.
The calculator runs a chi-square goodness-of-fit test: it compares the visitors each variant actually received against the number it should have received under your intended split, and asks how likely a gap this large would be if the split were working correctly.
χ² = Σ (observed − expected)² / expected
p = P(χ²k−1 > χ²) k = number of variants
SRM flagged when p < 0.001, borderline when p < 0.01
The 0.001 threshold is deliberately much stricter than the usual 0.05. An SRM check runs on every test you ever look at, so a looser bar would cry wolf constantly. When p does fall below 0.001, a split that uneven happens by chance less than once in a thousand healthy tests. Treat it as a bug until proven otherwise.
Redirect tests losing traffic. Split-URL tests redirect one arm to a different page. Visitors on slow connections abandon during the redirect, so the variant page silently receives and records fewer people.
Variant code failing on some browsers. If the variant JavaScript throws on older browsers, those visitors may never be counted in that arm, while the control counts everyone.
Asymmetric bot filtering. Bots often land on the control URL. If filtering removes them after assignment, the control loses more visitors than the variant.
Caching and CDN layers. A cached page can serve one variant to visitors who were assigned the other, or bypass assignment entirely for repeat visitors.
Mid-test changes. Editing traffic allocation, audiences, or variants while a test is running reassigns future visitors without correcting past counts. If you must change a running test, restart it instead.
Stop reading the results. Find the cause first: check the redirect timing, test the variant on the browsers your audience uses, review bot filtering, and confirm nobody edited the test mid-flight. Once fixed, restart the test from zero. Continuing a test that had SRM keeps the biased sample in your data forever, and no amount of extra traffic dilutes it back to fair.
More free A/B testing calculators:
Mida is 10X faster than anything you have ever considered. Try it yourself.
Still deciding?
A quick screen share on your actual site — no slides, no generic tour. Just your questions answered.
30 min · no commitment · no sales pressure