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.

  1. 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).
  2. On Setup, name the test and add what you expect to happen in What do you expect?. A hypothesis helps you read the result.
  3. 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%.
  4. 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.
  5. 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.
  6. 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.
  7. 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.

Still stuck? We reply within one business day.