The short version
- Hypothesis: one change, the reason you expect it to help, and one primary metric that decides it.
- Sample size: your baseline rate and the smallest lift worth having give the visitors you need; divide by daily traffic for the days.
- Build: change only what the hypothesis says.
- QA: preview every version on mobile and desktop and place a test order.
- Launch: split at random, start small, check the split is even.
- Run: whole weeks, at least 7 days, until the planned sample is reached. Don't stop early because it looks good.
- Read: the lift, its interval and the verdict on the primary metric, then the guardrails.
- Roll out: ship the winner, write down what you learned, and plan the next test.
What should an A/B test hypothesis on Shopify include?
A good hypothesis names one change, the page it runs on, why you expect it to help, and the one metric that will decide it. Write it before you build anything, so the result can't be reinterpreted afterwards.
A useful shape: "On product pages, showing delivery dates next to the add to cart button will raise orders per visitor, because shoppers can't currently see when an order arrives." The reason matters: if the test loses, it tells you which belief was wrong.
- Pick one primary metric. For most shop tests it's conversion rate (orders per visitor) or revenue per visitor. Everything else is a supporting or guardrail metric.
- Find your baseline. Shopify's behaviour reports show conversion rate over time, which Shopify defines as the percentage of online store visitors that make a purchase. Use the last four to eight weeks, outside a sale.
- Measure the page you're testing. If the test runs only on product pages, the baseline is the conversion rate of visitors who reach a product page, which is usually higher than the store-wide figure.
How many visitors does a Shopify A/B test need?
It depends on your baseline conversion rate and the smallest lift you want to detect: the smaller the lift, the more visitors you need. At 95% confidence and 80% power, a 3% baseline needs 24,193 visitors per version to detect a 15% lift.
- Baseline conversion rate
- 3.0%
- Smallest lift worth detecting
- 15%
- Visitors needed per version
- 24,193
- Visitors needed in total (two versions)
- 48,386
- Days at 100% of product page traffic
- 20 days
- Planned run, in whole weeks
- 21 days (3 weeks)
Illustrative store. Visitors per version from Benchmyrk's planning code (the statistics engine's sample-size function), 95% confidence, 80% power, two versions split 50/50.
If the plan comes out at months, don't start and hope. Test a bolder change, include more pages, or pick a metric closer to the change; the sample size and test duration guide shows how each choice moves the number, and the sample size calculator runs it for your store.
How do you build the variant?
Build the variant so it differs from the control only in what the hypothesis describes. If you also change the image, the price and the button colour, a win can't tell you which change did it.
- Copy and layout changes (headlines, badges, delivery messages, the order of sections) can be made with a testing app's visual editor or a theme section, without changing the live theme.
- A whole new page layout is a template test: shoppers in the variant get a different template of the same theme.
- Price, discount and shipping tests must change what checkout charges as well as what the page shows; see the price testing guide and the free shipping threshold guide.
- Keep the control untouched. It's your measure of normal; don't tidy it up during the test.
How do you check an A/B test before launch?
Open every version on a phone and a desktop, on each page the test runs on, and place a test order in each. Most broken tests fail on something visible: a variant that doesn't load on mobile, a flash of the old page, or a button that no longer adds to cart.
- Check the page loads cleanly. No flash of the original before the variant appears, no layout jump.
- Check the cart and checkout. The price, discount or shipping the page promised is what checkout charges.
- Check tracking. A test order should show up once, credited to the version you saw.
- Leave your own visits out. Your team's visits and test orders shouldn't count in the results.
- If in doubt, run an [A/A test](/glossary/a-a-test) first: two identical versions should show no difference. If they do, the setup is wrong.
How do you launch a test safely?
Start with a small share of traffic for a day, check that orders arrive and the split matches what you set, then widen it to the planned share. A split that is uneven by more than chance allows, a sample ratio mismatch, means something is dropping visitors from one version.
- Split at random, per visitor. The same shopper should see the same version on every visit.
- Set a [guardrail](/glossary/guardrail-metric) on what must not get worse (errors, add to cart, refunds) and stop if it does.
- Don't change the test while it runs. No new copy, no new traffic split, no sitewide sale halfway through.
- Avoid two tests on the same element at once; if they must overlap, keep their shoppers apart.
How long should a Shopify A/B test run?
Run it until the planned sample size is reached, in whole weeks so every weekday and weekend is counted, and never less than 7 days. Stopping the first time the result looks good inflates false winners, because random swings look like wins early on.
- Decide the end before you start: the run length from your plan, rounded up to whole weeks.
- Look, but don't act on early numbers. Checking repeatedly and stopping at the first good-looking result is called peeking; the peeking simulation shows how much it inflates false winners.
- Watch for the first-week bump. Regular shoppers react to anything new; the novelty effect guide explains how to tell it from a lasting lift.
- Don't run across a sale you didn't plan for. Shoppers behave differently in a promotion, and the result may not hold afterwards.
There's more on this in how long a Shopify A/B test should run.
How do you read the result?
Look at the lift on the primary metric, its interval and the verdict together, then check the guardrails. A winner is a lift whose interval stays above zero on the primary metric, after the planned run, with no guardrail harmed.
- Control
- 26,250 visitors, 788 orders (3.00%)
- Variant
- 26,250 visitors, 919 orders (3.50%)
- Lift and 95% interval
- +16.6% (+6.2% to +28.1%)
- Chance to beat control
- 99.9%
- Verdict
- Winner found
Illustrative numbers. Readout from Benchmyrk's statistics engine for these visitor and order counts.
The best estimate is a +16.6% lift, but the interval says anything from +6.2% to +28.1% fits the data. Plan with the low end, not the headline. The guide to reading an A/B test result covers each number, and what to do when the verdict is no meaningful difference.
Be sceptical of a surprising win on a small test. Kohavi, Deng and Vermeer show that a statistically significant result from an underpowered test is likely to exaggerate the size of the effect, and recommend replicating surprising results before you rely on them.
What do you do after a winner is found?
Ship the winner to everyone, keep watching the primary metric for a few weeks, and write down what you tested, what happened and why you think it happened. The written record is what stops your team re-running the same idea next year.
- Make it permanent. Move the winning change into your theme or settings, then end the test.
- Roll out in stages if the change is risky, such as a price or checkout change, so a problem shows up on a small share first.
- Measure the total, not just the test. If you run many tests in a season, a holdout group shows what they added up to.
- Record losers too. A test that didn't win still rules out an idea, which is worth knowing.
How does each step work in Benchmyrk?
Benchmyrk runs every step above on Shopify through its theme app extension and web pixel, with the statistics checks built in. The table maps each step to what the app does.
| Step | In Benchmyrk |
|---|---|
| Hypothesis and metric | AI suggests hypotheses from page audits; you choose the primary goal. Revenue comes from the orders Shopify confirms by webhook. |
| Sample size | The setup estimates visitors and days from your traffic, and warns when a plan needs more than 28 days. |
| Build | Edit on your live store without an extension, or in the in-app editor; or start from a reviewed template such as trust badges or a sticky add to cart. |
| QA | Signed preview links open each version on your store and are never counted; a bar switches versions and shows a QR code for your phone. |
| Launch | Schedule a start and end; a guardrail can pause the test by itself; an uneven split is flagged. |
| Run | No verdict before 7 days, 100 visitors and 5 conversions per version; before the planned sample, a winner needs an always-valid p-value, so checking early doesn't inflate false winners. |
| Read | One verdict per goal (Winner found, No meaningful difference, Still collecting evidence) with the lift, its interval and the chance to beat control. |
| Roll out | Ship the winner to every visitor, or roll it out in stages; record the decision in the Learning library. |