Key takeaways
- Test one variable: the SKU, the trigger, or the cap — not all three. A "new popup" vs "old popup" test teaches you nothing.
- Primary metric is attach rate of the offered SKU, plus checkout initiation, so you catch tests that add items and lose checkouts.
- Do not call a winner on 200 sessions. Overlay tests are noisy; wait for a sample you would defend in a meeting.
- Stop tests that hurt add-to-cart-to-checkout even if attach rate is up. A bigger basket that does not pay is not a win.
Popup tests fail in a particular way: the overlay gets more clicks, AOV ticks up in the test group, checkout initiation quietly drops, and someone ships the winner. Two weeks later revenue is flat and nobody connects it.
You have to measure the thing you wanted (they added the SKU) and the thing you cannot afford to lose (they still paid).
One variable
Good tests:
- This complementary SKU vs that one, same trigger
- Add-to-cart trigger vs exit-intent, same SKU
- Session cap of one vs two, same SKU and trigger
Bad tests:
- New design + new SKU + new trigger vs the old everything
- Button colour before the offer is even the right product
Metrics
Must-haves:
- Offer impressions
- Offer adds (attach)
- Checkout initiation rate
- Conversion rate to paid order
- Revenue per session
If attach is up and checkout initiation is down, you did not find a better upsell. You found a speed bump.
Sample size
Overlays fire on a subset of sessions. Your real n is impressions, not store sessions. A week of a small store can be hundreds of impressions, not thousands. Do not declare a 12% lift on 180 views.
If you cannot power the test, do not run it. Make a merchandising decision and watch revenue per session for two weeks.
Guardrails
Hard-stop the test if checkout initiation drops beyond a threshold you set in advance. Pre-commitment is the only thing that stops a team from "giving it another day" on a losing overlay.
A/B testing is not a personality. It is a way to stop arguing. Use it when you have enough traffic to be wrong in public. Use judgement when you do not.
Frequently asked questions
Should I test popup vs no popup first?
Yes, if you do not already know the overlay is net-positive. Many stores skip this and optimise a thing that should not exist.
Can I use Shopify's reports for this?
Not for overlay-level attach. You need the app's offer analytics or a custom event (offer_shown, offer_added) in your pixel. Order value alone hides whether the popup did the work.
How long should a test run?
Through at least one weekly cycle (weekday vs weekend mix). Stopping on a Tuesday because it "looks good" is how you ship noise.
What if traffic is low?
Run fewer tests. Sequential changes with a long observation window beat a 12-variant experiment you cannot power.



