How to A/B test your pricing
How to A/B test pricing for SaaS and e-commerce: what to test, what is fair and legal to vary, the guardrails to set, and how to judge the result on revenue.
Updated 28 September 2026 · 7 min read
Split new visitors at random between two prices or two pricing pages, keep each person on one version, and judge on revenue per visitor over at least 30 days, checking again at 90 days for subscriptions. Testing packaging, plan order, anchors and annual discounts carries less risk than showing different prices for the same product. If you do test the price itself, test on new visitors only, honor the lower price for anyone who asks, and check local rules, since the EU requires traders to disclose prices personalised by automated decision-making.
To A/B test pricing, split new visitors at random between two versions of your price or pricing page, keep each person on the same version every time they come back, and judge the result on revenue per visitor over a fixed window, at least 30 days and ideally 90 for subscriptions. Conversion rate alone will mislead you, because a lower price almost always wins more buyers and can still earn less.
What you vary matters as much as how you measure it. Changing how plans are packaged, ordered and presented is low risk. Charging two people different prices for the same product is where the legal and trust problems sit. If you test the price itself, test on new visitors only, honor the lower price for anyone who asks, and read the rules for your market first.
What you can test, from lowest to highest risk
| Test | Example | Risk | Main metric |
|---|---|---|---|
| Presentation | $49 vs $49.00, per month vs per day, annual total vs monthly equivalent | Low | Revenue per visitor |
| Plan order and highlighting | Most expensive plan first, "most popular" badge on a different plan | Low | Revenue per visitor, plan mix |
| Annual discount display | 2 months free vs 20% off, annual selected by default | Low | Revenue per visitor at 30 and 90 days |
| Packaging | Move a feature between tiers, change seat or usage limits, 2 tiers vs 3 | Medium | Revenue per visitor, plan mix, upgrades |
| Trial and free plan | Free plan vs trial vs no trial | Medium | Revenue per visitor after the trial ends |
| Offers | Launch discount, bundle, free shipping threshold | Medium | Revenue per visitor, margin |
| Price level | $39 vs $49 for the same plan | High | Revenue per visitor, 90-day churn, refunds |
For most businesses, the first three rows are where to start. They can move revenue by changing which plan people choose, and nobody pays a different price for the same thing.
Fairness and the law
This section is general information, not legal advice. Rules differ by country and change often, so check with a lawyer before you test the price of the same product.
Customers notice. In September 2000, Amazon ran a random price test that gave different discounts, from 20 to 40%, on 68 DVD titles for five days. Shoppers compared notes, and Amazon's statement says it refunded 6,896 customers an average of $3.10 and promised that any future test buyer would automatically get the lowest test price. The test was random, and it still cost trust.
The rules to know about:
- EU personalised prices. The Omnibus Directive added a requirement to the Consumer Rights Directive. Before a distance contract, traders must tell the consumer, where applicable, that the price was personalised on the basis of automated decision-making. A 2022 study for the European Parliament quotes the text and notes open questions about its scope. Whether a purely random test counts is not settled.
- EU discount claims. When you announce a price reduction in the EU, the reference price must be the lowest price you charged in at least the previous 30 days. The EU Court of Justice confirmed this in September 2024. A "was $99, now $79" test needs a real price history behind it.
- UK total price. The CMA's price transparency guidance says the total price should normally include mandatory charges. A test that moves a mandatory fee out of the headline price is a test of breaking the rules.
- US scrutiny of personal data pricing. In January 2025 the FTC published early findings from its surveillance pricing study, on prices set from data such as location and browsing history. Random assignment keeps your test clear of that pattern. Pricing by who someone is does not.
Guardrails for a price test
- Randomize by visitor, never by a trait. Location, device, browser and past purchases are all traits. A coin flip is not.
- Keep assignment sticky. One person sees one price on every visit, and on every device once they log in.
- Test on new visitors only. Existing customers keep what they pay.
- Honor the lowest price for anyone who asks, and brief support with a short script before launch.
- Start small. Send 10 to 20% of traffic to the new price for the first few days, check payments and receipts work, then move to an even split.
- Watch guardrail metrics: refunds, chargebacks, support tickets that mention price and cancellations in the first 30 days.
- Write stop rules before launch, for example "stop if refunds on the new price exceed twice the normal rate".
- Don't run a price test during a sale or a launch. Sale shoppers behave differently.
Outtest treats pricing as a change that needs a person. A pricing test never goes live without the owner's approval, even on autopilot, and its Builder agent never invents discounts.
Price anchoring
The first number someone sees changes how they judge the next one. In a classic experiment by Ariely, Loewenstein and Prelec, students wrote down the last two digits of their social security number before bidding on products. Students with above-median numbers stated values 57 to 107% higher. The top fifth offered $56 on average for a cordless keyboard, against $16 for the bottom fifth.
On a pricing page, the anchor is usually the most expensive plan or the first price in view. Anchoring tests to try:
- Show plans from most to least expensive instead of the reverse.
- Add a high tier (such as "Business" or "Enterprise, from $X") that few people buy but that frames the middle plan.
- Show the annual total next to the monthly price, or the monthly equivalent next to the annual total.
- For e-commerce, show a bundle price next to the single item price.
Only use real prices. A made-up "original price" is misleading and, in the EU, fails the 30-day rule above.
Annual vs monthly
Which billing period you show first is its own test, because it shifts cash forward and changes churn at the same time. The annual vs monthly guide covers how to run it and how long to wait for an answer.
A worked example with a price increase
This is a made-up example. A SaaS company tests $39 a month (A) against $49 a month (B) for the same plan, with 8,000 new visitors per version over four weeks.
| A: $39 a month | B: $49 a month | |
|---|---|---|
| Customers | 200 (2.5%) | 168 (2.1%) |
| Still paying in month 2 | 170 | 139 |
| Still paying in month 3 | 150 | 118 |
| First-month revenue per visitor | $0.98 | $1.03 |
| 90-day revenue per visitor | $2.54 | $2.60 |
Here is the maths. In the first month, A earns 200 × $39 = $7,800 and B earns 168 × $49 = $8,232. Divided by 8,000 visitors, B is 5.5% ahead. Over 90 days, A collects 200 + 170 + 150 = 520 payments × $39 = $20,280, and B collects 168 + 139 + 118 = 425 × $49 = $20,825. B's lead shrinks to 2.7%, because its customers leave a little faster.
Is 2.7% real? Using the variance method from the revenue per visitor guide, 90-day revenue per visitor here has a variance of about 271. The standard error of the difference is the square root of (2 × 271 ÷ 8,000), about $0.26. The observed gap is $0.07, so B has roughly a 60% chance of being better. That is close to a coin flip. At this traffic, the test can only reliably detect a lift of about 29%.
The lesson is common to most price tests. Price changes shift conversion and churn in opposite directions, the net effect is usually small, and small effects need a lot of traffic. Either run the test for longer, test a bigger change, or accept that a draw means "the price doesn't matter much at this range", which is useful to know. The sample size guide shows how to plan for it.
Tests to try, and what to measure
For SaaS:
- Highlight a different plan as "most popular". Measure revenue per visitor and plan mix.
- Three tiers vs two. Measure revenue per visitor and the share choosing the top tier.
- Move one popular feature up a tier. Measure revenue per visitor, plan mix and upgrade rate at 90 days.
- Per-seat vs flat pricing display. Measure revenue per visitor and seats per purchase.
- Annual selected by default. Measure revenue per visitor at 30 and 90 days.
- A higher price for new visitors. Measure revenue per visitor at 30 and 90 days, refunds and churn.
For e-commerce:
- Free shipping threshold at $50 vs $75. Measure revenue per visitor and average order value.
- A 3-pack bundle price. Measure revenue per visitor and units per order.
- Shipping included in the product price vs charged at checkout. Measure revenue per visitor and checkout completion. In the UK, check the CMA rules on mandatory charges first.
- Subscribe and save discount at 10% vs 15%. Measure revenue per visitor and repeat orders at 90 days.
- Price endings, such as $40 vs $39. Measure revenue per visitor. Expect a small effect.
For Stripe and Shopify setup details, see the guides on testing with Stripe and testing on Shopify. After a new price wins, keep a small holdout group on the old price for a few months to confirm it kept paying off.
Questions people ask
Is it legal to A/B test prices?+
Price testing is common and generally allowed, but consumer protection law still applies. In the EU, traders must tell consumers when a price was personalised on the basis of automated decision-making, and it is not settled whether a random test counts. Discount claims, total price display and fair treatment rules also apply. This is general information, so get advice for your market.
How long should a pricing test run?+
At least two full weeks, and for subscriptions at least one full billing cycle, so you see first renewals. Judge on revenue per visitor at 30 days and check again at 90 days, because a higher price can change how long customers stay.
Should I test new prices on existing customers?+
No. Changing what a current subscriber pays is a contract change, not a test, and it mixes price effects with churn from the change itself. Test on new visitors only and keep existing customers on their price.
What should I measure in a pricing test?+
Revenue per visitor is the main number, because it captures both conversion rate and what each buyer pays. Also watch plan mix, refunds, chargebacks, support tickets about price and cancellations within 90 days.
Read next
Let Outtest run your split tests
AI agents read your analytics and payments, find where you lose the most money, build the fix and test it. Every test is judged on revenue, not clicks. Plans from $29 a month.