Configuration
Condition types
You can build conditions using the Unified Query Engine, which supports contact fields, company fields, variables, and event properties.| Operator | Description | Example |
|---|---|---|
| Equals / Not equals | Exact value match | Plan = Enterprise |
| Contains / Does not contain | Partial text match | Job Title contains "Marketing" |
| Greater than / Less than | Numerical comparison | Days since signup > 30 |
| Is empty / Is not empty | Check whether a field has a value | Phone is empty |
| Before / After | Date and timestamp comparison | Created date before 2025-01-01 |
Combining conditions
You can add multiple conditions and combine them with logic operators:- AND — every condition must be true for the branch to resolve as True
- OR — at least one condition must be true for the branch to resolve as True
- Nested groups — combine AND and OR operators for complex rules
Plan = Enterprise AND (Region = US OR Region = UK) evaluates to True only if the contact is on an Enterprise plan and located in either the US or UK.
Behavior
- Contacts are evaluated immediately when they reach the node, using the most current data available at that moment.
- Each contact follows exactly one path — True or False. A contact never follows both.
- If a referenced variable or field is missing or empty, it is treated as empty. This typically causes the condition to evaluate as False, unless the condition explicitly checks for emptiness (e.g.,
Phone is empty).
If you need more than two paths, use an If/Else Branch to evaluate multiple conditions sequentially, or a Field Branch to route contacts based on specific field values.
Timing considerations
If a True/False Branch immediately follows a node that updates data (like Update Field or Magic Enrichment), the branch evaluates against the updated data. However, if you are relying on data written by an external system (e.g., a CRM sync), there may be a propagation delay. In those cases, consider placing a short Time Delay before the branch to allow the data to settle.Decision logic examples
| Condition | Contact data | Result | Path |
|---|---|---|---|
Plan = Enterprise | Plan = Enterprise | True | True branch |
Plan = Enterprise | Plan = SMB | False | False branch |
Region = US OR Region = UK | Region = US | True | True branch |
Plan = Enterprise AND Region = EU | Plan = Enterprise, Region = US | False | False branch |
Phone is empty | Phone = (no value) | True | True branch |
Phone is not empty | Phone = (no value) | False | False branch |
Use cases
- Enterprise vs. SMB segmentation — route Enterprise contacts to a high-touch onboarding sequence and SMB contacts to a self-serve flow
- Engagement gating — check whether a contact opened a previous email before sending a follow-up
- Lifecycle email timing — verify a contact is still in a trial before sending an upsell email
- Regional compliance routing — send contacts through different paths based on region for GDPR or other regulatory requirements
- Data completeness checks — branch on whether key fields (email, phone, company) are populated before triggering enrichment or outreach