Automation goals & conversion criteria

Updated

How goals work

A goal is what you want your audience to accomplish during your automation, like purchase a product, sign up, or subscribe. When you set up a goal, you define conversion criteria, which are the rules that determine when we mark a message or journey as “converted.”

The automation goal is set. The conversion criteria is profiles leave a segment. The conversion window is within 1 week of being sent any delivery from this automation.
The automation goal is set. The conversion criteria is profiles leave a segment. The conversion window is within 1 week of being sent any delivery from this automation.

The conversion criteria can be one of (and only one of) the following things:

When you set conversion criteria, you also set a conversion window (up to 90 days) that your customers can match the conversion criteria after they are sent, open, or click a tracked link in a message. If a profile matches your conversion criteria within the time frame, we’ll record a conversion and attribute it to your automation. If a profile does not match the conversion criteria, or they match it outside the time frame you set, we won’t record a conversion.

 Multiple automations can convert on the same criteria

We count conversions independently for each automation. If you use the same conversion criteria across multiple automations, a profile that goes through both automations and reaches the goal will achieve a conversion for each automation.

Conversion metrics

You can check the converted metric to determine the percentage and number of journeysTypically, a person’s path through your automation. If the automation is triggered by a webhook, then a journey captures the webhook’s path, not a person’s. and delivered messagesThe instance of a message sent to a person. When you set up a message, you determine an audience for your message. Each individual “send”—the version of a message sent to a single member of your audience—is a delivery. that achieved your goal—and the number that haven’t. Use your conversion metrics to figure out how well your messages perform and develop strategies to increase the value of your messages over time.

Example of converted metrics on the Overview tab of a running campaign
Example of converted metrics on the Overview tab of a running campaign
Example of converted metrics on the Overview tab of a running campaign
flowchart LR a[Profile receives
message]-->b{Do they match
conversion criteria?} b-->|yes|c{Are they within
the time frame?} c-->|yes|d[message/journey is
converted] c-.->|no|e[message/journey is
not converted] b-.->|no|f[message/journey is
not converted]

 We do not retroactively count conversions

If you edit or change your conversion criteria after you start an automation, we won’t retroactively apply your conversion criteria. Updating conversion criteria will not update your conversion metrics for messages that were previously marked as converted or not converted; your updated conversion criteria and metrics will only apply to new conversions.

Types of messages or actions that can record conversions

We track conversions for the following message/delivery types:

Conversions attributedConversions not attributed
EmailSlack Message
SMSCreate or update profile action
Customer.io Push Notifications
Customer.io In-app Messages
Webhooks1

Slack and Create or update profile actions are often internal or used for analytics purposes; they don’t always send messages to end-users. For that reason, we don’t attach conversions to them. You can enable webhook conversions on individual webhook actions.

Set up conversion criteria

You can set a goal when you create an automation or add it to automations you’ve already created. However, if you set conversion criteria for a live automation, it will only apply to profiles that enter the automation after you set the goal. You cannot apply a goal retroactively to profiles that’ve already entered or completed the automation.

Click the upper-left menu while editing an automation. Then click Manage under Goal:

  1. Click Set goal.
    The automation goal is set. The conversion criteria is profiles leave a segment. The conversion window is within 1 week of being sent any delivery from this automation.
    The automation goal is set. The conversion criteria is profiles leave a segment. The conversion window is within 1 week of being sent any delivery from this automation.
  2. Select the type of conversion criteria—performs event, enters segment, or leaves segment.
    1. (Optional) If your conversion criteria is an event, click Add event data filter to ensure that your event contains (or doesn’t contain) specific properties or values before counting a conversion.
  3. Under Conversion, set the maximum time (up to 90 days) after a delivery that you’ll count a conversion.
  4. Select whether to count a conversion after a profile:
    • Is sent any deliveryThe instance of a message sent to a person. When you set up a message, you determine an audience for your message. Each individual “send”—the version of a message sent to a single member of your audience—is a delivery. (i.e. not attempted or failed) from this automation
    • Opens any delivery from this campaign

      Message opens may not be reliable for certain message types, like SMS or email, with some clients. You might want to use the receiving or clicking a tracked link in options to ensure more accurate reporting with these message types.

    • Clicks a tracked link in any delivery from this campaign

      If a link isn’t tracked, Customer.io can’t know whether or not a profile clicks it, and therefore cannot record a conversion. See our page on link tracking for more information.

  5. Save your changes.
  6. Next, decide whether you want profiles to exit your automation when they match the conversion criteria.

Event-based goals

Events let you track the things that your audience does. You can use an event as an automation goal. For example, if your automation is focused on abandoned carts, your goal event might be a purchase event.

You can only use a single event as the goal for any given automation.

 Event names in conversion criteria are case sensitive

While event names are generally not case sensitive in Customer.io, event names used in conversion criteria are case sensitive. This means purchase and Purchase are treated as distinct events when you set up conversion criteria. Make sure the event name in your conversion criteria exactly matches the event name you send to Customer.io.

Event-based filters

You can also set up a filter to limit a conversion based on an event’s properties. This lets you make sure that your conversion event contains (or does not contain) specific properties before you count it as a conversion.

Using our purchase example above, imagine that you want to record a conversion when your audience uses a specific coupon code or makes a purchase over a certain dollar amount. You could set a filter for that!

a goal event set to purchase and filters looking for purchases over 49.99 with the coupon code newuser20
a goal event set to purchase and filters looking for purchases over 49.99 with the coupon code newuser20

Click Add event data filter under the goal to begin. You can join multiple filter conditions (for a single event) depending on whether you select all or at least one in the dropdown:

  • All: all conditions need to be true to match the conversion criteria. Click Add event data filter to create another statement in an AND conditional, if you need.
  • At least one: only one condition must be true to match the conversion criteria. Click Add event data filter to create another statement in an OR conditional, if you need.
    add-event-data-filter-OR.png
    add-event-data-filter-OR.png

 Event-based conversions are based on processing time, not timestamps.

We mark a delivery associated with an event-based goal as converted when we receive the event. You cannot backdate an event (with a timestamp) so that it triggers a conversion. For example, if you send an event outside the conversion time window, but it has a timestamp that would’ve fallen within the window, we won’t count that conversion.

Why filter by event data

You can compare properties from the conversion event to a profile’s attributesA key-value pair that you associate with a person or an object—like a person’s name, the date they were created in your workspace, or a company’s billing date etc. Use attributes to target people and personalize messages. or even to properties from the incoming trigger event. This helps you make sure conversions are attributed to the exact data relevant to your automation and each profile’s journey.

For example, imagine you run online courses, and you want to start an automation when a profile begins one of your classes. Your objective is to help a profile finish the course they started, so you want to record a conversion when the profile finishes it. If your events use a course_id to differentiate between similar events for different classes, you can determine when someone has finished the course they started and mark a conversion!

conversion-compare-to-trigger.png
conversion-compare-to-trigger.png

In this example is an event-triggered automation with a frequency of “Every re-match.” This means a profile can enter this automation for each course they start. It’s helpful then to set the course_id of the event associated with the goal to the course_id of the event that triggered the automation because it ensures the conversion is consistent with each journey.

Segment-based goals

 If you capture events, try an event-based goal.

Segments let you track conversions based on profile attributes, which is useful if you don’t have an integration that sends events. You can add profiles to segments based on events, too, but if you already capture events, you may find it easier to simply set up an event-based conversion criteria.

You can set a goal based on whether someone “enters a segment” or “leaves a segment.” If you choose “enters segment,” we check whether a profile is IN the segment. If you choose “leaves segment,” we check whether a profile is NOT IN the segment.

Consider that a profile can be IN or NOT IN a segment before they enter your automation:

  • If a profile already matches your conversion-criteria segment when they enter your automation, and progress through the automation, then messages that you send to that profile won’t record a conversion.
  • If the automation has the exit criteria, “They match the conversion criteria,” profiles will enter the automation then exit before any action because they already meet the conversion criteria.
  • We calculate if someone is NOT IN a segment when they’ve never belonged to the segment as well as when they leave a segment; this means “exit segment” corresponds to profiles that have never belonged to the segment and who left the segment they belonged to.

 Add your conversion segment as a filter to your automation trigger.

If you use a segment as your conversion criteria, you might want to add your segment as a filter for your automation so only profiles that have not achieved the goal criteria enter the automation. For instance, if your goal is “leaves segment: Has not recently logged in” then you would add a segment filter of “IN: Has not recently logged in.” This way, only logged in users enter the automation.

Conversion timing

A profile can match the conversion criteria after being sent, opening, or clicking a tracked link in a delivery. Conversions based on a profile performing an event are counted when we receive the event, not when the event occurred.

 Holdout tests can show conversions

You can use holdout tests to test the impact of your messages. When you use a holdout test, we show conversions on the holdout group when profiles that don’t receive the message perform the expected action. This helps you measure the true impact of your messages by comparing conversion rates between profiles that received messages and profiles that didn’t.
flowchart LR z[1st message]-->b y[2nd message]-->b b{does profile match
conversion criteria?} b-->|yes|c{are they within
the time window?} c-->|yes|d{which message did
profile open last?} c-.->|no|e[message/journey is
not converted] b-.->|no|f[message/journey is
not converted] d-.->g[If profile opened 1st message
last, the 1st message converts.] d-.->h[If profile opened 2nd message
last, the 2nd message converts.]

If you allow conversions after being sent messages, conversions will occur in the order that you send messages. For example, if a profile receives two messages, and matches your conversion criteria within your time frame of both messages, we’ll attribute the conversion to the second message—the most recently received message.

If you set conversions to occur after opening or clicking a tracked link in messages, profiles will achieve your goal against the most recent message that they opened or clicked.

If a profile meets conversion criteria, like performing an event, immediately after an open or click, it’s possible a conversion isn’t logged:

  • For clicks, this can happen because it takes up to 10 seconds for us to screen out machine clicks.
  • For opens or clicks, this can happen if we process the open or click AFTER the conversion criteria is met.

For example, let’s say your conversion criteria is “performs event: subscription_activated” and the conversion window is based on clicking a tracked link:

  1. At 8:07:42 AM, a customer clicks a tracked link in a message.
  2. At 8:07:49 AM, the customer performs the conversion criteria event subscription_activated.
  3. At 8:07:53 AM, we finish processing out machine clicks, and the click clears the queue. Customer.io won’t log a conversion because the click was processed after the conversion event was performed.

Exit condition: match the conversion criteria

If you want profiles to exit your automation when they match your conversion criteria, include the criteria in your exit conditions.

By default, a profile continues through an automation until they stop matching the automation filter criteria—even if they perform your automation’s goal action. (For a legacy segment-triggered automation, profiles will exit when they stop matching the trigger or filter conditions by default.)

However, you might not want a profile to continue an automation if they match your conversion criteria. For example, if your goal is for someone to complete a purchase, you probably don’t want to continue reminding profiles about the items in their cart after they make a purchase!

To view or modify your exit criteria, open your automation and click . Then click Exit conditions.

campaign-exit-criteria-default.png
campaign-exit-criteria-default.png

Recreate your conversion criteria in the exit conditions panel: add the event or segment criteria.

Learn more about exit conditions and how we evaluate them during an active journey.

Copied to clipboard!