Tools A/B test significance calculator

A/B test significance calculator — and the checks behind the verdict

The maths matches ABTestGuide's published formulas, credited below; every figure was computed in Node that day and cross-checked against an independent implementation.

A/B test significance

No email, no sign-in. Recalculates as you type.

A control

3.00% conversion rate

B variant

3.45% conversion rate

Hypothesis

One-sided reaches significance sooner by giving up detecting that B made things worse.

How often you'd accept calling a difference real when there isn't one: 5% at 95.

Drives the sample-ratio-mismatch check. Leave at 50 unless you deliberately allocated differently.

Not significant at 95% confidence. B leads 3.45% to 3.00%, but a difference this size would appear 7.2% of the time with no real effect (p = 0.0717). You can't call it yet — the interval on the difference runs −0.04 to +0.94 points and crosses zero.

95% interval on the difference −0.04 to +0.94 pp

Difference in conversion rate, percentage points (B − A). The bright line is 0 — no difference.

The interval crosses zero — “no difference at all” is one of the outcomes this data is consistent with.

Difference absolute
+0.45 pp
Uplift relative
+15.0%
z-score needs 1.960
1.80
p-value two-sided
0.0717

Split check passed — 10,000 / 10,000 against an intended 50/50, chi-square p = 1.0000.

Unpooled two-proportion z-test, fixed-horizon frequentist — the formulas ABTestGuide publishes, credited below. The verdict is decided from z against the critical value, so it always agrees with whether the interval contains zero. Two checks ride along: a chi-square sample-ratio-mismatch test on your split, alerting below p = 0.01, and a low-data guard at 20 conversions.

The short answer

You ran the test. Four numbers — visitors and conversions for each arm — tell you whether the difference is bigger than chance would produce: rates, z-score, p-value, confidence interval, verdict. Two integrity checks ride along that most calculators skip: a sample-ratio-mismatch test on your split and a low-data guard (ABTestGuide is the exception, credited below). What no calculator can tell you: a p-value is not the probability you're right, and significant is not the same as worth shipping.

The calculator

The defaults are the genre's: two-sided, 95% confidence — the same defaults Evan Miller's defaults.js publishes and ABTestGuide offers (both read 26 July 2026). The intended-split control feeds the mismatch check; leave it at 50/50 unless you allocated differently.

How it's calculated

ABTestGuide publishes its maths on the page — rare in this genre — so this calculator implements the same unpooled two-proportion z-test, quoted from abtestguide.com/calc (read 26 July 2026):

“Standard error A = ( CR A * (1-CR A ) / Visitors A )^1/2”

“Std. Error of difference = ( SE A² + SE B² )^1/2”

“Z-score = ( CR B - CR A ) / SE difference”

“Relative uplift in Conversion Rate = CR B - CR A / CR A”

The p-value reads that z off the normal curve — two-sided p = 2·(1 − Φ(|z|)) — and the interval on the difference is (CR B − CR A) ± z·SE of difference. Units, once and everywhere: the interval is absolute, in percentage points; the uplift is relative and labelled relative.

Worked example, computed in Node, 28 July 2026 — also the calculator's default state:

Worked example: 10,000 visitors and 300 conversions in the control against 10,000 and 345 in the variant
A (control) B (variant)
Visitors 10,000 10,000
Conversions 300 345
Conversion rate 3.00% 3.45%

Relative uplift +15.0%. Standard error of the difference 0.0025. z = 1.80, two-sided p = 0.0717 — not significant at 95%. The 95% interval runs −0.04 to +0.94 percentage points: it crosses zero, so “B is 15% better” is on the table and so is “B does nothing.” The same data under other settings:

The same data read three ways: the threshold each setting requires, and the verdict it returns
Read as z needed This data, z = 1.80
Two-sided, 95% — the default 1.96 Not significant (p = 0.0717)
Two-sided, 90% 1.645 Significant
One-sided, 95% 1.645 Significant (p = 0.0358)

A verdict that flips with the settings is a p-value near the line; the honest reading is: keep collecting. One-sided gets there faster by giving up detecting that B made things worse — that trade, and everything else you decide before a test starts, lives on the sample size calculator.

What significance doesn't mean

Statistical significance says the difference probably isn't luck — nothing about whether it matters. Give a 3.00%-versus-3.02% test 5.6 million visitors an arm and it turns green (computed with the same script); nothing about the green makes 0.02 points worth a redesign. And p = 0.0018 is not a 99.8% chance that B is better — it's how often data this extreme appears when the variants convert identically.

So decide on the interval. With 380 conversions for B instead of 345: z = 3.12, p = 0.0018, 95% interval +0.30 to +1.30 points. The worst plausible case is a tenth of your conversion rate — shippable not because it's significant, but because its floor is worth having.

When you can trust a green result

Three checks, in order.

1. The planned sample was reached. A fixed-horizon test assumes the sample size was set in advance; check repeatedly and stop on the first green and the nominal 5% false-positive rate becomes a measured 26.1% (Evan Miller's simulation in How Not To Run an A/B Test, read 26 July 2026). Plan the number on the sample size calculator — that page owns the argument — and run to it.

2. The split matches what you intended. Kohavi, Deng, Longbotham and Xu list “the sample ratios matched the expected ratios” among their own preconditions (Seven Rules of Thumb for Web Site Experimenters, KDD 2014). A 50/50 test that produced 10,000 and 11,000 visitors did not have bad luck — the check here returns p ≈ 5×10⁻¹² on that split. It has a bug: a redirect, a bot filter or a broken variant dropped sessions from one arm, and rarely at random. ABTestGuide's alert says a mismatch “indicates there might be a problem with your distribution” (read 26 July 2026); this one tests your split with a chi-square and alerts below p = 0.01. A failed check doesn't shade the verdict. It voids it.

3. Enough conversions. ABTestGuide again, verbatim: “This is a significant result based on your thresholds, but the actual weighted difference is 20 conversions or less - please be careful interpreting these results - gathering more data is advised” (read 26 July 2026). This calculator carries the same guard at the same threshold.

The report that never sends you to a calculator

This page is fixed-horizon frequentist — the z-test the keyword asks for, with the rule attached: fix the sample, wait, then look. Mtrix experiment reports don't make you live that way: probability-to-be-best is computed with a sequential method designed to be monitored while the test runs — the same class of statistics as Optimizely's Stats Engine and VWO's SmartStats. Every experiment carries a completion trigger — visitor count, date or revenue — so stopping is a setup decision, not a judgement call. When a test concludes, session replay filters by experiment and by variant arm: open the sessions from the losing variant and watch why it lost. Scoped honestly: if you test on Optimizely or VWO, use their calculators — their engines are sequential, and a fixed-horizon number doesn't describe what they'll do with your data.

Frequently asked questions

How do you calculate statistical significance for an A/B test?
Each arm's standard error is √(CR·(1−CR)/visitors); combine them as √(SE A² + SE B²); divide the difference in conversion rates by the result — that's the z-score. The p-value reads it off the normal distribution; at 95% confidence, two-sided, significant means |z| ≥ 1.96. Formulas above, credited to ABTestGuide.
What does 95% confidence mean?
That's the false-positive rate you accept: at 95%, one in twenty tests where nothing really differs still comes back significant. Not a 95% probability that this result is right. Go to 99% when a false winner is expensive — pricing, checkout; 90% only for cheap, reversible changes.
What is a p-value?
How often a difference at least this large would appear if the variants truly converted at the same rate — p = 0.03 is three times in a hundred by chance. Not the probability that B is better, and silent on size; the confidence interval carries that.
How many conversions do I need?
Decide it before the test — the sample size calculator computes visitors per arm from your baseline and the smallest lift you'd act on. After the fact, this page flags any significant result sitting on a difference of 20 conversions or fewer.
Can I stop the test as soon as it turns significant?
Not on a fixed-horizon test like this one — stopping on the first green is how false-positive rates quintuple, and the sample size calculator runs those numbers. Sequential and Bayesian engines are built to be watched: Optimizely's Stats Engine, VWO's SmartStats, and Mtrix's probability-to-be-best reports are in that class.
What is sample ratio mismatch?
A traffic split further from what you configured than chance plausibly produces. Something removed sessions from one arm — a redirect, a bot filter, a broken variant — and whatever it removed, it rarely removed at random, so every downstream number is suspect. This page checks your split with a chi-square and alerts below p = 0.01.

Read the verdict, then watch the sessions behind it

Set the finish line when you create the experiment, let the report carry the statistics, and open the sessions behind whichever arm loses.

Ada Kern Experimentation & analytics Writes about experimentation and analytics at Mtrix, and about what a test result does and does not justify.
Build with Mtrix