Experiment Engine
Plan a test: versions, goal and schedule
Pick a test type, then set versions, the audience, the main goal and the schedule. Preview every version before you launch.
- Select Create test and pick a type. The gallery groups them as Earn more per order (discounts, free shipping and delivery, offers) and Improve a page (page content, two pages).
- On Setup, name the test and add what you expect to happen in What do you expect?. A hypothesis helps you read the result.
- On Versions, set up the Original and up to 5 versions in total. Exactly one is the Original. Each version needs at least 5% of traffic, and traffic must add up to 100%.
- On Audience, choose Everyone or Only some shoppers: device, new or returning, country, page URL, traffic source or customer tags. Use less than 100% inclusion to try a risky change on fewer shoppers; results take longer.
- On Goal, pick the Main goal: Profit per visitor, Revenue per visitor, Conversion rate or Average order value. It is chosen before the test so the result is fair.
- On Schedule, choose when it starts and ends. Run whole weeks, with an end at least 7 days after the start. The estimate shows how many days a 5%, 10% or 20% change needs at your traffic.
- Open Preview test, check each version on your store, then Review and Launch test.
Good to know
- Preview links expire after 24 hours, and orders placed in preview are marked as test orders and not counted.
- A running test is locked. To change a version, duplicate the test; a changed version needs its own test to be measured.
- Members can build a draft but must ask an admin to launch it.
- If another test affects the same shoppers, choose Run one at a time or Launch anyway.
Use your own event as the goal
A custom event counts something your store does that is not an order, such as a newsletter signup or a wishlist add. The version that gets more visitors to trigger it wins.
- Open Settings, go to Custom events and select Add event. Give it a name (lower-case letters, digits and underscores) and a display name, then select Save events.
- Add this line to your theme or app where the action happens, with your event name: Shopify.analytics.publish("ml_testing:event", { name: "newsletter_signup", value: 0 }). The value is optional.
- In a test, open Goal, choose Custom event and pick the event. Visitors who trigger it count once, however many times they do.