Triggers vs Filters
When building a campaign, what’s the difference between a trigger and a filter?
How it works
Both triggers and filters are sets of conditions. A trigger determines who’s eligible to enter a campaign and when.
A filter is additional criteria that a person must meet to join the campaign or remain in the campaign and receive messages.
We evaluate filters before a person enters a campaign (unless your campaign is triggered by a segment) and before every message in your campaign—unless you change your exit condition settings. This means that a person will exit your workflow if they stop matching your trigger and filter criteria:
- Before any message in your workflow
- After any Create or update person action (because the action causes a temporary pause while we process the update)
- After exiting a delay that causes a person to wait. If a person bypasses a delay, we won’t evaluate the filters.
Filters work as a kind of confirmation step to make sure the right people enter and stay in your campaign workflow. This also means that people can enter your campaign and exit before they receive a message if they don’t match your filter criteria.
trigger conditions?}-->|yes|q{Is the campaign
segment-triggered} q-->|yes, person enters campaign
filters are evaluated before
the first message|c q-->|no, filter is evaluated
before entering campaign|l{Does person meet
filter conditions} l-->|yes, person enters campaign|c l-.->|no|i subgraph p [Your campaign's first message] direction LR c{Does person meet
filter conditions?}-->|yes|d[Send message] end c-.->|no|e[person
exits campaign] a-.->|no|i[person doesn't
enter campaign]
Filters
While triggers decide when your campaign begins, filters determine whether or not the person who triggered the campaign should actually enter or receive messages from the campaign. For example, you might want to send a message when someone views the pricing page (an event trigger), but want to make sure you only message people who don’t already have a paying plan (filter).
For date-, form-, and event-triggered campaigns, we evaluate filters before someone enters your campaign. If someone doesn’t match the filter, they don’t travel through the campaign. We then re-evaluate filters before sending any message, so your filter acts as a confirmation step to make sure the right people stay in your campaign workflow.
For segment-triggered campaigns, people can enter your campaign even if they don’t meet your filter. Like other campaigns, we evaluate filters before each message in the campaign. But for most segment-triggered campaigns, we recommend simply working your filter conditions into your trigger to ensure that people don’t inadvertently join your campaign.
You cannot set a Frequency limit on campaigns that include filters.
Note for event triggered campaigns
To enter your campaign, people must match both the event attribute filter and any segment filters within 30 minutes after the event occurred. When a triggering event is sent to us but it doesn’t trigger the event-triggered campaign, it will retry for approximately 30 minutes, giving the person a chance to match the filter criteria and enter the campaign within that time. This buffer allows for a very common situation where, due to internet latency or other such delays, we get the event before we get other qualifying data.
When are campaign filters evaluated?
Filters are evaluated:
- right before entering the workflow
Once a Person has entered the workflow, the Exit Conditions take over. If the campaign cares about continued filtering match (i.e., when your Exit Conditions require it), filters will ALSO get evaluated every time the journey continues from a pause. This includes:
- right after exiting any delay action item in the workflow that actually causes the Person to wait (e.g., a Time Window that a Person does not pause in will not trigger a new evaluation of the filters)
- right after every Create or update person action (because those cause a temporary pause while we process the attribute update)
Do People still get a journey for the campaign if they don’t meet the filter?
For event-triggered campaigns, People must meet the trigger (perform the event as configured) AND meet the filter conditions before getting a journey for the campaign.
For segment-triggered campaigns, we start a journey for People when they meet the trigger conditions (enter/leave segments) - even if they do not meet the filter conditions. When they do not meet the filter conditions they enter a grace period but their journeys will almost always end with the Person falling out before the first message due to not meeting the filters.
Can’t everything go in the trigger?
You might be asking, “why can’t I just combine everything into trigger?” Here’s one example of why this isn’t a good idea:
Let’s say you want to send a campaign to people who have viewed the pricing page at least twice within 10 days of signing up. Your goal is to convince them to upgrade with a special “newbie” offer. Here’s how to set it up:
- Your trigger segment is “Signed up”
- Your filter segment is “has viewed pricing page at least once”
- You’d start the workflow with a 10-day delay.


This means: as soon as someone signs up, they enter the campaign and the 10-day clock starts ticking. After 10 days, we’d only send messages if they viewed the pricing page at least two times. After this 10-day post-signup window, nobody will get this newbie offer.
If you had combined both conditions into the trigger, the 10-day campaign clock would not start ticking until people had both signed up AND viewed the pricing page twice. This combination of conditions could happen at any time, no matter when they signed up. For example, this setup could send a user your newbie offer a year later.
Recommendations
Using a filter over a trigger may not matter in cases when there’s no delay at the beginning of your campaign.
Still, we recommend always thinking about triggers and filters separately to help differentiate the condition that triggers a campaign versus the state of the user going through it.
Summing up: triggers define the when for a campaign. Ask yourself, “when do I want the clock to start ticking on this campaign for the user?” Filters define who the campaign goes to. Ask yourself: “who should and shouldn’t be getting this campaign?”
Have any questions about the trigger and filter setup of a particular campaign? Get in touch!