Skip to contentSkip to navigationSkip to topbar
Page tools
Useful for sharing or LLM

On this page
Looking for more inspiration?Visit the

Journeys Step Types


FREE x
TEAM x
BUSINESS
ADDON

Journeys steps are the building blocks you add to a Journey to control how and when users move through it. This page describes the condition, delay, flow control, and action steps available in Journeys.


Conditions and delays

conditions-and-delays page anchor

Journeys has two steps that you can use to determine how and when users move to the following step.

Add a condition

add-a-condition page anchor

The Add a condition step defines the conditions that a user must satisfy to move from one step to the next. You can define new conditions or import conditions from an existing audience.

The Add a delay step defines the length of time in minutes, hours, days, or weeks that a user must wait before moving to the next step.


Journeys offers four steps that help you control how users flow through your Journey.

True/false splits

truefalse-splits page anchor

A true/false split divides the previous step's user group into two branches, based on Boolean logic against a defined condition. Users who satisfy the condition(s) move to the True branch. Otherwise, they move to the False branch. To enforce mutual exclusivity, Journeys evaluates true/false conditions when a user reaches the relevant step.

You can add Step Names to describe the users who end up in both the True and False branches.

Multi-branch split divides the group of users from a previous step into two or more branches based on each branch's defined conditions.

Define the number of branches you want to create, then add an Add a condition step to define each branch's condition.

(information)

Info

Journeys doesn't enforce mutual exclusivity in branch conditions. For more information about ensuring branch exclusivity, see Best Practices.

A randomized split lets you experiment with and test the performance of a Journey's branches. When you create a randomized split, you add up to five Journey branches, each with a different step. Journeys then sends eligible users down one of the branches at random. Each branch receives a portion of the eligible users based on percentages that you assign to the branches.

(information)

Info

If the Journey has a re-entry condition, users will join the same split branches upon re-entry.

To test your messaging channels, for example, you might create a randomized split with three different branches, assigning 40% of users to an email campaign, 40% to an SMS campaign, and 20% to a control group. Once users flow through the split, you can determine the success of the email and SMS campaigns compared to each other and the control group.

Follow these steps to add a randomized split to a Journey:

  1. Create a new Journey, and add an entry condition.
  2. Select the + icon to add a step, then select Create a randomized split.
  3. Name the randomized split step, then add up to five branches.
  4. Set the distribution percentage for each branch, then select Save.
  5. For each branch in the split, select the child + icon and add a step.
  6. Save and publish your Journey.

Users who meet the Journey's entry condition will then enter the Journey and flow through the randomized split.

Act on the split's results

act-on-the-splits-results page anchor

Once users complete your Journey's randomized split step, you'll have insight into how each split performed. You can take action on the results by cloning the Journey and sending a new set of users through the highest performing branch.

Connecting to existing steps

connecting-to-existing-steps page anchor

You can merge split Journey branches by using the Connect to existing steps option. Connecting to existing steps lets you apply a single step to more than one group. For example, you may want to target some Journey group members with email campaigns while targeting others with ad campaigns. Instead of duplicating steps, you can connect these steps to steps that already exist.

Keep the following in mind when connecting to existing steps:

  • You can only connect the end of a branch to another branch.
  • You cannot link back or loop back to previous steps.
  • If you connect multiple non-exclusive branches, the user will only be sent to a Destination the first time they reach it.

Follow the instructions below to connect branches to an existing step:

  1. Within an existing Journey, click the Edit button.
  2. Click the + icon below an existing step to add a new step.
  3. From the Select a Step window, select Connect to existing step.
  4. Choose the existing step you want to connect.
  5. Click Save to confirm.

With Journey actions steps, you can send marketing campaigns to groups of users and deliver Journey information to downstream tools.

The Show an ad step lets you send users to an advertising destination. You can also configure exit settings that remove users from the ad step after specific periods of time.

For example, you may want to show an ad for only one week to users who abandoned a cart during a purchase. With the Show an ad step, you can remove users from the ad destination seven days after they enter it.

(information)

Ad-based exit settings

Ad step exit settings don't impact other Journey steps. A user can exit an ad step but remain in the overall Journey. For more on Journeys exit settings, view Journey exit and re-entry times.

Follow these steps to add a Show an ad step to a Journey:

  1. From the Journey builder, select the + icon to add a step, then select Show an ad.
  2. Name the step, then select + Add destination.
  3. Choose the ad destination that Segment will sync to.
  4. To specify how long users will remain in the step, choose one of the following options:
    1. If you want users to exit the destination, select the checkbox next to Remove users from the destination after. Set a time frame in minutes, hours, days, or weeks.
    2. If you want users to stay in the ad destination indefinitely, leave the checkbox empty.
  5. Select Save to finish creating the step.

When you send data to destinations, you send a series of events or user lists, depending on the destination type.

Ensure you have connected and enabled destinations in your Space.

Send data to destinations

send-data-to-destinations page anchor
  1. Add a Send to destinations step to the journey.
  2. Enter a Step name. This name should be descriptive of the users you send to the destination. For example, New subscribed users. Journeys generates a key based on the step name you enter. Destinations use this key to reference the users that Journeys sends to it. For track events, the property name uses this key. For Identify events, the trait name uses the key.
  3. Click Connect destinations to select the destination you'll send the data to.
  4. Click Save.

To include an advertising destination in a Journey, ensure you have connected and enabled the destination within your Space, then utilize the Show an Ad step.

With the Engage event tester, you can send a test event payload to a Destination. As a result, you can confirm that you've correctly configured Journey Audiences before you publish your Journey.

Follow these steps to send a test event:

  1. From the Send to destinations window, select + Add destination.
  2. Choose the Destination that you want to connect.
  3. In the Destination pane, select Event tester. This is only available for Event Destinations.
  4. From the Event Type drop-down, select the event you want to test. Segment generates a test user ID.
  5. Select Send Event, then view the test event results in the Event lifecycle section.

If your Destination successfully handled the event, Segment displays a 200 OK HTTP status code along with the full response. If an error occurred, Segment displays any available details in the Event lifecyle section.

Use Trait Activation with Journeys

use-trait-activation-with-journeys page anchor

Use Trait Enrichment and ID Sync to configure sync payloads that you send from Journeys to your destination.

  • With Trait Enrichment, use custom, SQL, computed, and predictive traits to enrich the data you map to your destinations.
  • Use ID Sync to select identifiers and a sync strategy for the data you send to your destination.

To use Trait Activation with Journeys:

  1. Go to the Journeys builder of a new or existing Journey.
  2. Select a supported destination from a journey step.
  3. Select Customized Setup, then add identifier and trait mappings to customize the way you send data to your destination. For more, visit the Trait Enrichment and ID Sync setup docs.
(success)

Success!

Use Segment's Duplicate mappings feature to create an exact copy of an existing mapping. The copied mapping has the same configurations and enrichments as your original mapping.

What events are sent to destinations?

what-events-are-sent-to-destinations page anchor

The data type you send to a destination depends on whether the destination is an Event destination or a List destination.

To view the events that get generated by an Engage Space's Journeys, go to Unify settings > Debugger to view the list of sources that are configured to generate events for each destination instance. Each source generates events only to its connected destinations. Under the source's Debugger tab, you'll find the most recent events generated by that source according to the connected destinations' audiences and computed traits.

The full JSON body of a journey event will have the journey's specific details found under the context.personas object. These fields can be useful when building out Destination Filters, Actions destination mappings, and Functions.

The integrations object in these payloads will appear as {"All": false} and only list some destinations. This is due to the fact that each source has multiple destinations connected, while each journey may only have a subset of destinations connected to it. See Filtering with the Integrations Object for more information. The integrations object routing specific events to its specified destinations is also why a destination's Delivery Overview tab will show a large number of events under the Filtered at destination box, as that destination will only receive the events intended to be sent to it according to the journeys that are connected to that specific destination.

The format in which the destination receives updates depends on the call type.

When the user enters the step:

1
{
2
"context": {
3
"personas": {
4
"computation_class": "audience", // the type of computation
5
"computation_id": "aud_###", // the audience's ID, found in the URL
6
"computation_key": "j_o_###", // the configured journey key that appears on user profile
7
"namespace": "spa_###", // the Engage Space's ID
8
"space_id": "spa_###" // the Engage Space's ID
9
}
10
},
11
"type": "track",
12
"event": "Audience Entered",
13
"properties": {
14
"j_o_first_purchase__opened_email_dje83h": "true"
15
}
16
}

When the user enters the step:

1
{
2
"context": {
3
"personas": {
4
"computation_class": "audience", // the type of computation
5
"computation_id": "aud_###", // the audience's ID found in the URL
6
"computation_key": "j_o_###", // the configured journey key that appears on user profile
7
"namespace": "spa_###", // the Engage Space's ID
8
"space_id": "spa_###" // the Engage Space's ID
9
}
10
},
11
"type": "identify",
12
"traits": {
13
"j_o_first_purchase__opened_email_dje83h": "true"
14
}
15
}

The destination receives a list of users who qualify for the associated journey step. Unlike lists associated with Engage Audiences, users who are added to a journey list cannot be subsequently removed. See best practices for techniques to suppress targeting with journey lists. List destinations do not have access to the Event tester.

For more information, see Using Engage Data.