Set up object & relationship triggers
Automation triggers determine who enters your automations and when. This page describes why you'd use object triggers and how to set them up.
Overview
If you set up custom objects An object is a non-person entity that you can associate with one or more people—like a company, account, or online course.
In your list of trigger options, you’ll notice several options for objects: the Object trigger and Classic object triggers.
The Object trigger is our latest trigger related to custom objects and relationships. It includes the functionality you needed from the classic triggers while making it easier to define who enters your automation and when. Learn how to set up the latest trigger.
If you’re familiar with our classic object triggers, you can learn more about the differences between those and the latest trigger. While the latest trigger supports most scenarios the classic triggers supported, there are a few edge cases that only the classic triggers support.
Go to Use objects in liquid to learn more about what object and relationship data you can include in messages.
Object trigger
To filter your audience to the right people, you can set up an object trigger to have one or more conditions related to the type of relationship, name of the object, whether a person belongs to a certain segment, and more.
For example, if you have custom objects that represent courses, you could accomplish a variety of scenarios with this trigger:
- Confirm course registration
- Recommend courses based on previously purchased or completed classes
- Solicit feedback on courses taken
To trigger messages based on dates stored on custom objects, like the date of a final exam or the state date of a course, use the Important date trigger instead.
Set up trigger conditions
When setting up your automation, click Choose trigger to get started.
- Select Object.
- Set your trigger conditions: the criteria objects, relationships, and people should meet for those people to start a journey.
- Click Save and build workflow.
- (Optional) Click Trigger and select Frequency. By default, the frequency is “One time” which means each relationship can trigger this automation only once. You can also change it to “Every re-match.” Learn more about changing the frequency.
Frequency: change when people re-enter the automation
Frequency determines how often a person can re-enter an automation.
With the object trigger, you have two frequency options:
- Default: One time—This means a person can enter the automation once per relationship, not once total.
- Every re-match—This means a person can enter the automation each time a relationship stops and restarts matching your trigger conditions.
People with an active journey in the automation don’t have to finish their current journey to start a another one.
Exit conditions
You can determine if and when people exit your automation early.
From your automation workflow, click and choose Exit conditions to review your options. By default, people exit when they stop matching your trigger conditions. Click to remove this criteria.
You can also set your own conditions for exiting. Learn more at Exit conditions.
We evaluate exit conditions before every journey and before action items in your workflow.
Let existing matches start the automation
Before you activate your automation, you click Start automation to review your settings.
Here you decide whether the automation should trigger for current matches and future additions or only future additions.
For example, if you trigger an automation when a person is added to an account as an admin, selecting “Current people and future additions” means people who are already admins of an account will enter.
Classic object triggers
To set up a classic object trigger, you set the trigger conditions that objects or relationships need to meet for a person to start a journey. And you set audience conditions to determine who starts the journey.
For example, if you have custom objects that represent courses, you could accomplish a variety of scenarios with this trigger:
- Confirm course registration
- Recommend courses based on previously purchased or completed classes
- Solicit feedback on courses taken
- Inform teachers when students register for their classes
To trigger messages based on dates stored on custom objects, like the date of a final exam or the state date of a course, use the Important date trigger instead.
When to use the classic triggers
Generally, you should not use the classic triggers:
- It’s more complicated to set up conditions, and you have fewer ways to group conditions, with no OR statements or nested logic.
- The order that a person matches trigger vs filter conditions matters, which means people may not trigger the automations every time you expect them to. That is, if they meet your audience or filter conditions after the object or relationship change, they don’t enter the campaign. The latest trigger makes sure people enter the campaign when all conditions are met.
- You don’t have control over the frequency at which people re-enter the automation (It’s always every re-match for each relationship).
For example, say you want to send a welcome series to people who enroll in a course and are on a paid plan. Jamie enrolls in “Intro to Python” on Monday while on a free plan, and then upgrades to paid on Tuesday.
With a classic trigger, you choose the “Person added to course” option and set a filter for plan is equal to paid. For this automation, Jamie never gets the welcome series. The trigger fires on Monday when the relationship is created. Jamie doesn’t match the filter at that moment, so upgrading on Tuesday doesn’t trigger the automation again.
With the latest object trigger, you set both conditions in the trigger: Jamie is related to a course, and Jamie’s plan is paid. Jamie enters the automation on Tuesday, when both conditions are true, whichever order they happen in.
If Jamie later drops the course and re-enrolls, the default “One time” frequency means they don’t get the welcome series twice. With classic triggers, every re-match would start a new journey.
Here’s a breakdown of the differences between setting up the latest object trigger and the classic triggers:
| Object trigger | Classic triggers | |
|---|---|---|
| Trigger conditions | Set conditions for object, relationship, and/or people attributes, and segments. | Set conditions for object or relationship attributes. |
| Frequency setting | “One time” or “Every re-match”. You can control whether a relationship can trigger an automation again. | Every re-match only. You can’t control if a relationship can trigger an automation again. |
| Filters | None, add these directly to your trigger conditions. | Add conditions to filter who starts a journey. |
| Audience filters | None, add these directly to your trigger conditions. | Specify which relationships cause people to enter journeys. |
| Exit conditions | Default: people exit early when the trigger criteria is no longer true. | Default: people only exit early if they stop matching filter conditions. |
However, let’s look closer at the audience filter options. With the classic triggers, you can filter the audience to people related to your object that met different conditions from your trigger. For example, if your automation triggers when a person becomes a student in a course, you could message the teacher to inform them of a new student registration, instead of the student/the relationship that triggered the automation. This is not possible with the new trigger, so you would need to set up a classic trigger.
Here’s a breakdown of the classic triggers and audience filters that are not supported by the latest trigger. While these are historically not primary use cases, these are the only reasons you would use the classic triggers over the latest one.
| Classic trigger name | Classic audience filter | Example scenario |
|---|---|---|
| Person added to object | Every person in the object type | Message everyone in an account that there’s a new teammate. |
| Relationship changed with object | Every person in the object type | Message everyone in an account that a teammate’s access was upgraded. |
| Person added to object | Certain people in the object type | Message teachers that a student registered for a course. |
| Relationship changed with object | Certain people in the object type | Message admins that a student requested a tutor. |
Object updated
You can trigger an automation when an object An object is a non-person entity that you can associate with one or more people—like a company, account, or online course.
From an automation workflow, click Choose trigger to browse your trigger options. Click to expand “View classic object triggers.” For each object type in your workspace, you’ll see an “Object updated” trigger. If your workspace has two object types, like Courses and Accounts, then you’d see “Course updated” and “Account updated” as trigger options.
Specify the attribute updates that should trigger the automation.
Then define the other settings that filter your audience further:
Learn more about the frequency at which people can re-enter this type of automation.
Audience filter
With Object updated triggers, you have the flexibility to decide who your audience is:
- Every person related to the object
- Certain people related to the object based on person or relationship attributes
Frequency setting
The Object updated trigger only supports the frequency setting “Every re-match”. This means an object can trigger the automation more than once, specifically when it stops matching your conditions and later re-matches.
For example, if you trigger an automation when an account’s plan changes to premium, and an account’s plan changes from premium to basic and later back to premium, people related to that account enter the automation again.
People with an active journey in the automation don’t have to finish their current journey to start a new journey: if the object matches again a user can start a simultaneous journey.
Relationship added or changed
You can trigger an automation based on a relationship—the association between an object An object is a non-person entity that you can associate with one or more people—like a company, account, or online course.
From an automation workflow, click Choose trigger to browse your trigger options. Click to expand “View classic object triggers.”
For each object type in your workspace, you’ll see a trigger for “Person added to object” and another for “Relationship changed with object”. If your workspace has two object types, like Courses and Accounts, then you’d see “Person added to Course” and “Relationship changed with Course” as well as “Person added to Account” and “Relationship changed with Account”.
If you select Person added, you can optionally refine the conditions by relationship attributes to funnel the right people into the automation.
Otherwise, the automation triggers when any person is added to any object within the specified object type.
If you select Relationship changed, you must specify which relationship attributes to target.
You cannot target any change to a relationship; you must include what a relationship attribute is specifically changing to or from (role is equal to admin or role is not equal to admin, for example).
Then define the other settings that filter your audience further:
Learn more about the frequency at which people can re-enter this type of automation.
Audience filter
With relationship triggers, you have the flexibility to decide who your audience is:
- The person who was added to the object (default)
- Every person in the object
- Certain people related to the object based on person or relationship attributes
Frequency setting
The Person added or Relationship changed triggers only support the frequency setting “Every re-match”. This means a relationship can trigger the automation more than once, specifically when it stops matching your conditions and later re-matches.
For example, if you trigger an automation when a relationship to an account is set to role is equal to admin, and the role changes from admin to reviewer and later back to admin, then people could enter the automation again.
People with an active journey in the automation don’t have to finish their current journey to start a new journey: if the relationship matches again a user can start a simultaneous journey.
Filters
You can apply filters to further refine who should enter and stay in the automation. We evaluate filters when the person first meets the trigger criteria. For example, if your automation is designed to nurture leads, you might filter out people who have already paid for your services.
If the exit conditions for your automation include filters, we continue to evaluate filter match before action items in your workflow.
Exit conditions
You can decide when or if a person should exit an object-triggered automation early.
From your automation workflow, click and choose Exit conditions to review your options. By default, people exit when they stop matching any Filters. Click to remove this criteria.
You can also set your own conditions for exiting. Learn more at Exit conditions.
We evaluate exit conditions before every journey and before action items in your workflow. We do not evaluate whether people meet the trigger criteria after they’ve entered the automation.
Per-trigger fan-out limit
The classic triggers have an additional “fan-out limit” that the latest object trigger does not have.
When an object or relationship changes, the automation runs for every person related to that object. A single trigger event can fan out to a limited number of people, and the limit depends on your plan:
| Plan | People per trigger event |
|---|---|
| Premium and Enterprise | 5,000 |
| Essentials | 1,000 |
| Other plans | 500 to 5,000, depending on your plan |
If a trigger includes more people than your limit, none of them start a journey. If you need a higher limit, contact us to talk through your use case.
This limit is per trigger event, not per automation. Your automation can have far more total recipients than your limit. The limit only applies to how many people a single object or relationship update can reach at once.
Under the limit
You have 10,000 company objects, each related to 5 people (50,000 people total). When any company’s properties change, the automation triggers for the 5 people related to that company. Every person can go through the automation because each trigger event fans out to only 5 people.
Over the limit
You run an auction site with a single auction object related to 50,000 interested people. When the auction’s properties change, the trigger tries to fan out to all 50,000 people at once—but the fan-out limit blocks the entire batch, and nobody starts a journey.
Why the limit exists
A single object update can trigger messages for every related person simultaneously. Without a cap, one property change on a popular object could kick off thousands of simultaneous journeys, slowing down your workspace. The fan-out limit is a backstop to prevent this kind of problem.
Working within the limit
If an object or relationship update would fan out to more people than your limit, you might want to:
- Narrow your audience. Switch from “Every person in the object” to “Certain people in the object” and add conditions to reduce the total number of people per trigger.
- Restructure your objects. Break large objects into smaller ones with fewer relationships. For example, split a single “auction” object into regional auction objects so each update affects fewer people.
Performance considerations
Imagine you have a few Account objects with 10 people related to each of them. Each Account has a lifetime_value attribute, and you have five segments and five automations that send messages based on an Account’s lifetime_value. Each time an Account’s lifetime_value gets updated, our system checks each of the 10 people related to that account to see if they should still belong to any of the segments or automations.
One little change - to a single Account’s attribute, in this case - caused us to check 100 things (5 segments x 10 people, 5 automations x 10 people). At this scale, that’s no problem.
But imagine you have hundreds of thousands of Accounts and most of them change every day. That can pretty quickly become hundreds of millions, even billions, of things for us to process. We know how to handle this - it’s our job! If your volume ever grows large enough to affect your workspace’s performance, we may contact you to help you adjust what you send.
Bottom line, the more segments and automations you have based on objects, the more you should make sure you’re targeting and updating the correct objects and relationships. For instance, instead of sending us your entire database every hour, send us only the object data we need. Of course, if you have any concerns, reach out to us and we’ll be happy to help!