You will learn

Learn how to A/B test different types of promotions in sign-up forms, so you can determine which type performs best and deliver that offer to new subscribers. Offering a perk, like a discount or free item, can motivate site visitors to subscribe and learn more about your brand; however, it can be hard to tell whether your perk is working, or if there’s an alternative that would be more effective.

This guide will cover how to A/B test a sign-up form with 2 different types of offers, and how to deliver the correct promotion to those who subscribe to each one.

Test offers using a form

You can use an A/B test on a sign-up form to experiment with different offers. This will help you understand which ones perform best and are most compelling for your specific audience. For example, you can compare a 10% discount with a free shipping coupon.

Publishing the A/B test does not send the offers. Complete the flow setup below and set its messages live to deliver the offers automatically to new subscribers.

To create an A/B test for 2 different offers:

  1. Create a new sign-up form or open an existing one.
  2. Edit the design and content of the sign-up form so it includes 1 of the offers that you'd like to test. This will be variation A in your test. Keep both variations connected to the same list for the flow setup below.
  3. In the editor’s left sidebar, click the Create A/B test icon, then click Create A/B test in the panel that opens.
  4. Adjust the names of the 2 variations that you plan to test so that you can easily distinguish between the 2 of them. Then, click Create test.
  5. Select B in the Variation control at the top of the editor. Here, edit the form’s copy to indicate the new offer you plan to test in this version.
  1. Add a hidden property indicating this form version's respective offer. You’ll use this later when you set up the flow to deliver the correct offers to your new subscribers.
    • To add a hidden property, click the submit button in the form editor. Under Submit hidden fields, click Add a property. Set Profile property to Offer, creating it if needed, and set Value to match the offer in this variation. For example, if variation B offers free shipping, set the value to free shipping.
  1. Select A in the Variation control, then add the same Offer property to its submit button. Use a different value that matches this variation’s offer, such as 15% off.
  2. Once you’ve built both versions of your form and set a different Offer value for each, click Continue to test settings.
  3. Customize the traffic and winner selection settings for your A/B test.
  4. When you're ready to set both variations of your sign-up form live, click Publish A/B test, review the publishing checks, then click Publish.
  5. Finally, test your form by filling it out.
    • Navigate to your site and trigger the form to appear. Make sure you meet the conditions for the form set in the Targeting & display behavior section, or it may not appear for you. Once you fill out the form, the new hidden property will be added to your profile in Klaviyo, which is important for the next step: creating your flow.

Deliver the right offer to subscribers

After building your 2 form versions and setting them live, you’ll need to deliver the correct offers to those who subscribed to each one. To do so, create a flow and use a profile filter and a split. The steps below cover both Split and Conditional split, depending on which option appears in your flow builder.

  1. Navigate to Flows > Create flow, then click Build your own.
  2. Enter a name, then click Create manually. If the dialog shows Create flow instead, click that option.
  3. In the flow builder, select All triggers > Added to list.
  4. Select the list connected to both variations of your sign-up form. If you need to double-check the list, navigate to Sign-up forms and look below your form’s name for its connected list.
  5. Under Profile filters, click Add, then Add profile filter.
  6. Set the following definition: Properties about someone > $consent_form_id, and select your form’s ID as the Dimension value.
Flow filter with the definition set to properties about someone, and the dimention set to equal the form ID.
Flow filter with the definition set to properties about someone, and the dimention set to equal the form ID.
  1. To locate your form’s ID, open the form editor and view its URL. Copy the 6-character code immediately after /forms/ and before the next slash or question mark, if present. In a variation editor URL, the form ID comes before /variations/.
The unique form id of a form circled within the page URL.
The unique form id of a form circled within the page URL.

If you have any other welcome flows triggered by the same list, make sure to exclude these new subscribers from that welcome flow. You can exclude them by entering the flow builder for the welcome flow, then adding this profile filter: Properties about someone > $consent_form_id > doesn’t equal > [your form ID] (with the ID representing your offers form ID).

  1. Click Save to save the profile filter. Back in the trigger setup, click Save, then Confirm and save.
  2. Drag a Split block into the flow, then click Add path criteria under Path #1. If your sidebar shows Conditional split instead, drag that block into the flow and open its settings. Select Properties about someone.
  3. Under Dimension, select Offer (or whichever name you used for the hidden property). Set the comparison to equals, then select 1 of the 2 offers under Dimension value. For the example below, select 15% off.
    • Don’t see the dimension or dimension value available in your split’s filter dropdown? Make sure you’ve tested your form by filling it out. When you fill out the form, the property and value will be added to your profile properties in Klaviyo, as well as the split’s filter dropdown.
A conditional split with the dimension set to offer and the value set to one of your two offers.
A conditional split with the dimension set to offer and the value set to one of your two offers.
  1. When the split is set, click Save.
  2. Beneath Path #1 (the Yes path for a Conditional split), drag and drop a welcome message (email or SMS, depending on your form) that includes the appropriate offer. In this case, an email with a coupon code for 15% off.
  3. Add another message under Everyone else (the No path for a Conditional split) with the second offer you’re testing in your A/B test. This path includes anyone whose Offer value does not match the condition, so check that both variations submit the correct value.
Two welcome messages added under the yes and no path of the split, each with one of the offers you're testing.
Two welcome messages added under the yes and no path of the split, each with one of the offers you're testing.
  1. Once the messages are ready, click Review and turn on. Under Flow status, select Live, then click Save. New subscribers will be directed down the correct path based on the offer they saw in their sign-up form.

Next steps

Use the A/B test results page to analyze metrics on the ongoing test, or to measure results once it's complete. To find this page:

  1. Navigate to Sign-up forms.
  2. Click the 3 dot menu next to the form you ran the A/B test on.
  3. Select Analytics from the dropdown.
  4. Toggle to the A/B test results tab, and head to reviewing A/B test results for guidance on analyzing your form's metrics.
The Overview section on the A/B test results tab for an example form with an ongoing A/B test, where you can measure engagement metrics for the form variations.
The Overview section on the A/B test results tab for an example form with an ongoing A/B test, where you can measure engagement metrics for the form variations.
Was this article helpful?
Use this form only for article feedback. Learn how to contact support.

Explore more from Klaviyo

Community
Connect with peers, partners, and Klaviyo experts to find inspiration, share insights, and get answers to all of your questions.
Partners
Hire a Klaviyo-certified expert to help you with a specific task, or for ongoing marketing management.
Support

Access support through your account.

Email support (free trial and paid accounts) Available 24/7

Chat/virtual assistance
Availability varies by location and plan type