Every condition is one row: a field (what you look at), an operator (the test) and a value. For example, “Status Equal to Open” or “Phone Starts with +60”.

Each operator shows its meaning under its name while you pick. You build conditions in five places:
| Where | Saved as |
|---|---|
| Conversations → Filter | Folders |
| Contacts → Filter | Segments |
| Settings → Automation, a rule’s conditions | the rule |
| A blasting’s Audience step, Filter contacts | the blasting |
| Settings → Message Sequences, a step’s conditions | the sequence |

Text fields
Names, email addresses, phone numbers, identifiers, city, company and text or link attributes offer these operators in the contact filter and segments, in message sequence and AI Knowledge conditions, and in conversation folders for text attributes. Blank counts as empty, so a contact whose email was never filled in matches both Is not present and Does not contain. Automation rules keep a shorter list for attributes: Equal to, Not equal to, Is present and Is not present.

| Operator | Meaning | Example |
|---|---|---|
| Equal to | Matches only this exact value | Email Equal to [email protected] |
| Not equal to | Matches anything except this value | Name Not equal to Test |
| Contains | Matches if the text appears anywhere in the field | Message Contains invoice |
| Does not contain | Matches if the text appears nowhere in the field, including when the field is empty | Name Does not contain test |
| Starts with | Matches if the field begins with this text | Phone Starts with +60 |
| Ends with | Matches if the field ends with this text | Email Ends with .my |
| Is present | Matches when the field has any value | Email Is present |
| Is not present | Matches when the field is empty | Company Is not present |
Not equal to on a custom attribute also matches a record whose attribute is empty, so Plan Not equal to Gold includes contacts with no plan yet. The other conditions still apply: Inbox Equal to Sales AND Plan Not equal to Gold matches only chats in Sales. This is the same in folders, contact filters, automation rules, blasting audiences and sequence step conditions.
In automation rules and sequence step conditions, name, email, identifier, city, company and country match in any letter case, so Email Equal to [email protected] matches [email protected]. A phone number typed without the + matches the saved number. Contact filters, folders and blasting audiences are not affected.
Pick-one fields
Status, inbox, assignee, team, priority, country and list attributes have a fixed set of values, so the operators are simpler.
| Operator | Meaning | Example |
|---|---|---|
| Equal to | Matches only this exact value | Status Equal to Open |
| Not equal to | Matches anything except this value | Inbox Not equal to Sales |
| Is present | Matches when the field has any value | Assignee Is present (someone owns the chat) |
| Is not present | Matches when the field is empty | Assignee Is not present (nobody owns it yet) |
In automation rules and sequence step conditions, Not equal to on assignee, team and other contact or conversation fields also matches an empty field, the same way Does not contain does. Assignee Not equal to Bob matches unassigned chats, and City Not equal to Kuala Lumpur matches contacts with no city. Contact filters, folders and blasting audiences are not affected.
Channel

Channel matches every inbox of one kind at once, where Inbox names one inbox at a time. A rule or folder set to Channel Is any of Official WhatsApp API covers every Official WhatsApp API number in the workspace, including a number you connect later, with no edit to the condition.

| Operator | Meaning | Example |
|---|---|---|
| Is any of | Matches if the inbox is on one of the selected channels | Channel Is any of Official WhatsApp API, Normal WhatsApp Web Link |
| Is none of | Matches only if the inbox is on none of the selected channels | Channel Is none of Website |
WhatsApp appears twice because the two ways to connect a number are different channels: Official WhatsApp API and Normal WhatsApp Web Link. Combine Channel with Inbox to leave one number out: Channel Is any of Official WhatsApp API AND Inbox Is none of Showroom.
Came from an ad or post

Came from an ad or post is True when the customer reached you by tapping a Facebook or Instagram ad or post, on WhatsApp, Messenger or Instagram, and False when they messaged you directly. Which ad or post doesn’t matter. You find it in automation rule conditions and in a sequence step’s conditions.
| Operator | Meaning | Example |
|---|---|---|
| Equal to | Matches when the answer is the one you pick | Came from an ad or post Equal to True |
| Not equal to | Matches when the answer is the other one | Came from an ad or post Not equal to True |
On a Normal WhatsApp Web Link number the ad is recorded a moment after the chat opens, so for those numbers build the rule on Message Created rather than Conversation Created.
Lead status

Lead status matches the column a lead sits in on the Lead Pipeline. You find it in conversation folders, contact segments, blasting audiences, automation rules and a sequence step’s conditions, while the Pipeline or lead temperature is on for your workspace.
The values follow the Pipeline: New (no status yet), your lead categories, Not a lead, Won and Lost. A status the AI set and one a teammate set by hand count the same.
| Operator | Meaning | Example |
|---|---|---|
| Is any of | Matches when the lead is in one of the picked statuses | Lead status Is any of Hot lead |
| Is none of | Matches when the lead is in none of them | Lead status Is none of Won, Lost |
On a contact list, such as a segment or a blasting audience, a contact matches through any of their chats. There, New means the contact has a chat but none of their chats has a status yet.
Labels

A record can carry several labels, so label conditions test membership. Contains word and Doesn’t contain word take typed words instead of picked labels: type a word and press Enter, and any label whose title contains it counts, in any letter case — so vip covers vip-gold and vip-silver alike.
| Operator | Meaning | Example |
|---|---|---|
| Has any of | Matches if at least one selected label is on the record | Labels Has any of VIP, Reseller |
| Has none of | Matches only if none of the selected labels are on the record | Labels Has none of Spam |
| Contains word | Matches if any of its labels contains one of the words you type | Labels Contains word vip |
| Doesn’t contain word | Matches only if none of its labels contains any of the words you type | Labels Doesn’t contain word test |
| Is present | Matches when the record has at least one label | — |
| Is not present | Matches when the record has no labels at all | — |
Numbers
Number attributes add two comparisons to the pick-one set.
| Operator | Meaning | Example |
|---|---|---|
| Is greater than | Matches numbers above this value | Order total Is greater than 500 |
| Is less than | Matches numbers below this value | Seats Is less than 3 |
Dates
Created at, Last activity and date attributes match a single day with Equal to and use the same two comparisons, read as time.
| Operator | Meaning | Example |
|---|---|---|
| Equal to | Matches dates on the day you pick | Created at Equal to 1 Sep |
| Is greater than | Matches dates after the one you pick | Created at Is greater than 1 Sep |
| Is less than | Matches dates before the one you pick | Last activity Is less than 1 Sep |
| Is x days before | Matches dates more than this many days ago | Last activity Is x days before 7 (quiet for over a week) |
| Is present / Is not present | The date is set, or empty | Birthday Is present |
Message sequence conditions add a few date operators of their own, because the check happens when a message is due to go out, not when you write the condition:
| Operator | Meaning |
|---|---|
| Is in the future | Matches dates after today, checked when the message is due |
| Is in the past | Matches dates before today, checked when the message is due |
| Is before / Is after | For the current date: matches when today is before, or after, the date you pick |
Automation events that watch for a change

Rules that run on Attribute Changed test the change itself, not a stored value.
| Operator | Meaning |
|---|---|
| Label added | Fires when this label is added to the conversation |
| Label removed | Fires when this label is removed from the conversation |
| Changed to | Fires when the field changes to this value |
These rows combine with the rule’s other rows in order, with AND or OR, like any other row. Labels Label added VIP AND Inbox Equal to Sales runs only for chats in Sales.
Note: Two change rows joined with AND must both happen in the same change. Labels Label added Live Agent AND Labels Label removed testing runs only when one edit adds Live Agent and removes testing at the same time.
Blasting audience
When you choose Filter contacts as the audience, you can also filter by what people were already sent.
| Operator | Meaning |
|---|---|
| has received any of | Contacts who were sent at least one of the selected blastings, WhatsApp templates or message sequences |
| has not received any of | Contacts who were sent none of the selected items |
Combining conditions with AND and OR
Each condition row ends with a connector to the next row.
- AND means every condition must match.
- OR means any one condition is enough.
“Status Equal to Open AND Labels Has any of VIP” finds open VIP chats. “Labels Has any of VIP OR Priority Equal to Urgent” finds chats that are either VIP or urgent, or both.
In automation rules and sequence step conditions, rows combine from top to bottom, and each row joins everything above it. Inbox Equal to Sales OR Inbox Equal to Support AND Labels Equal to VIP means: in Sales or Support, and also VIP. Contact filters, folders and blasting audiences are not affected.
Worked examples
- Customers who went quiet. In Contacts → Filter: Last activity Is x days before 7, AND Labels Has any of Hot lead. Save it as a segment and use it as a blasting audience.
- Unowned chats waiting right now. In Conversations → Filter: Status Equal to Open, AND Assignee Is not present. Save it as a folder for the team lead.
- Route billing questions. In Settings → Automation, on Message Created: Message Contains
invoice→ assign the Billing team.
Frequently asked questions
Does Not equal to include contacts with the attribute empty?
Yes, for custom attributes. They still have to match every other condition in the rule, folder or filter.
Why didn’t my rule with two label changes run?
With AND, both changes have to happen in the same edit. If the labels were added and removed at different times, neither change matches both rows.