Experience Nodes are what make up an Experience. Without any further ado, let’s learn more about how each type of Node is used.

  • Event

  • Delay

  • Actions

  • Split

Event Node

This node can be added to additionally filter combinations of specific events for which you want to tailor the Experience. 

Events are organized into three categories:

  • Account Events

  • Campaign Events

  • Segment Entry/Exit Events

Before we move on to the elaboration of each event category, let’s have a look at the available event filters:

Time-Based

Using the Clock icon, you can select an amount of time within which the event must occur after the initial experience trigger event or any other prior event within the experience. Available time frames include hours, minutes, and days after an upstream event. 

Event Properties

Using the Filter icon, you can add additional criteria for the specific event as needed. The properties available to choose from for additional filtering come from the payload of the event selected.  In the example below, we are restricting this node to purchased events that had a source_lib of a certain value.

We can either type a value into this property value field for source_lib, or we can use the dropdown arrow to pick another upstream event's property to match. The latter option is specifically useful when matching based on some kind of ID or SKU in the case where a user may have multiple or one type of event. 

For example, if a user has 5 purchases and 2 returns, we could use a consistent order_id across these events to properly tie up the 2 return events to the respective 2 purchased events.

Coming back to the event categories:

Account and Campaign Events

The Account and Campaign Event nodes allow you to determine whether a user did or did not or did or did not perform a specific event. The last option did or did not allows you to split the experience flow into a fork and send users down either side according to whether they did or did not do the selected event. 

Zeta Marketing Platform Events

Campaign Event

Segment Events

Segment Events are based on the entry or exit of a specific segment. Clicking on the Add time filter, you can select an amount of time within which the entry/exit must occur after the initial experience trigger event or any other prior event within the experience. Time frames available include hours, minutes, and days


Delay Node

Delays can be used to tailor the timing and ultimately the feel of the overall experience for the end-user.

There are three types of Delay Nodes available:

  • Delay for a set amount of time

  • Delay based on a previous event in experience

  • Delay until a specific time

Delay For a Set Amount of Time

This type of delay allows you to set an amount of time the experience should hold users at that step until it pushes members to the next node. This node can help prevent the experience from executing all at once.

Delay Based on a Previous Event in Experience

This type of delay can be used to adjust the feel of the experience for the end-user and can also help prevent the experience from executing all at once. The events available to base this delay on must already exist somewhere in the experience previously.

Delay Until a Specific Time

This type of delay can be used to ensure that Actions are only deployed at certain times or within certain windows of time. Those windows of time can be certain days of the week and/or certain hours during the day.


Actions Node

The Actions node is used to perform a specific action for a user.

The Action types available are:

  • Send (Create New Campaign)

  • Sync

    • Sync to List

    • Sync to Programmatic

    • Sync to Facebook

    • Sync to Google Ads

Send Action

The Send action allows you to deploy a message across email, push, SMS, or webhook channels to a user as part of the experience. The view in campaign creation is similar to that of a broadcast campaign. However, on the right side, instead of an audience selection, you are shown where within the experience the current campaign you're working on, is. Any content to be used within an Experience should be created in a test campaign first and then migrated to the Send Action once it's tested and ready. 

Sync Action

Using this option allows you to add or remove users from an existing or new List from within an experience.  

Sync User To a List

Sync to Google Ads

This Sync Action allows you to add or remove users from an existing or new Google Customer Match Audience for further treatment. This option requires some initial configuration in order to be used.

Sync to Facebook

This Sync Action allows you to add or remove users from an existing or new Facebook Custom Audience for further treatment. This option requires some initial configuration in order to be used.


Split Node

This node is used when a split is needed in the Experience.

There are Four types of splits:

  • Split Randomly

  • By Segment

  • By Identity

  • By Score

Split Randomly

Splitting an Experience randomly enables A/B testing of different Experience flows. The split is configured using the slider to set the percentage split that is required. The default split is 50% / 50%.

Split By Segment

Splitting an Experience by Segment membership enables marketers to add suppressions to an Experience as well as create different Experience flows for different portions of an audience.

Split By Identity

The Split by Identity node lets you branch the experience for qualifying individuals based on the channels they are reachable on. ZMP can automatically detect across a broad range of owned as well as paid media channels that you can reach individuals on, and craft personalized experiences on these channels.

How to use this feature

Set up / Use in an existing Experience:

1. Launch a new Experience or open an existing Experience using the Experience Builder Interface

Select reachable channels for activation:

2. Select Split By Identity decision node to fork the experience for qualifying users based on whether they are Zeta Known, Customer Known, or completely unknown.

3. Within the Zeta Known experience path, select the channels to activate the qualifying people. You can activate people on Owned Media channels such as Email, SMS if they are known to Customer, or on Paid media channels through Zeta. Examples of Paid Channels include Zeta Mail, Social, CTV, etc., select the channels to activate the qualifying users.

This will ensure that if a qualifying user is reachable on Email (i.e. has at least one email address associated as a contact), they will receive the experience defined under the Email Channel path, similarly, if the qualifying user is reachable on SMS (has at least one phone number associated as a contact), they will receive the experience defined under the SMS Channel path.

Please check out Automated Channel Optimization to see how you can use Zeta AI to optimize for channels to engage in order to maximize the conversion metrics.

Split By Property

Splitting an Experience by a Property on a person’s profile enables the Marketers to split by property and make decisions based on data on the profile.

Property From Profile

References any data that resides on the user’s profile. E.g. city, state, zip, age, subscription_preference, etc.

  • Property-Based Splits will allow for up to 5 branches based on the Experience. The user will qualify for at least one branch. To create more splits, you will have to create an initial split first and then resplit based on Property.

  • You can use three data types: Object, Numeric, and String Data for Property-Based Split.

Property Filters

  • A Property filter is determined based on the property on the end-users profiles.

  • For example, by selecting a property and then using one of is before, is after, etc. or setting to greater than, less than when using a numerical property.

The range of values must be exclusive of each other or a warning will appear and you will not be able to select a value.

Property from a previously performed Action

References any data that was part of an action performed by a user. For example, if a user had previously performed a purchase on-site, then the data as part of that purchase event, e.g. purchase_amount can be used to split the experience.