Segment conditions reference

Every field and operator in the segment builder, what each one matches, and the ones to watch out for.

This is the full list of what you can filter on when you build a segment. Each condition is a field, an operator and, usually, a value. Use it to choose the right field, and to work out why a contact is, or isn't, in a segment.

Who can do this

Anyone on your team can build a segment and click Preview matches to test conditions. Saving needs a staff, admin or owner role; see Segments.

Build a condition

  1. On Contacts → Segments, click New segment, or Edit on an existing segment.
  2. In a row, pick the field first. The operator list changes to suit it.
  3. Pick an operator, then type or choose the value. is set and is empty need no value.
  4. Click + Add condition for more rows, and choose all (every condition must match) or any (one is enough) at the top.
  5. Click Preview matches to see who matches.

A segment brought in by a migration can also hold nested condition groups ("Any of: …"). The builder shows each group read-only under your conditions and keeps it exactly as it is when you save; use × to remove one.

Three conditions in the segment builder: Created date in last 30 days, Tag has VIP, and Marketing status is Subscribed

Contact fields

  • Email, First name, Last name, Full name, Country, City and Source: text. Operators: is, is not, contains, starts with, is set, is empty.
  • Marketing status: is or is not, with Subscribed or Unsubscribed.
  • Created date: when the contact was added. Operators: after, on or after, before, on or before, in last (days), is set, is empty.

Tips:

  • contains and starts with ignore capital letters. is and is not need the exact text, capitals included.
  • Commas, brackets and asterisks are removed from what you type.
  • Source is a short word for how the contact arrived, for example import (a CSV import), form (a form sign-up) or api (added on the New contact form).
  • Country and City are only filled in for contacts whose import file had those columns.
  • A date is compared with the very start of the day you pick. To include everyone added on 31 January, use before 1 February.
  • in last (days) counts back from the moment the segment is used, so it rolls forward by itself.
  • People waiting to confirm a double opt-in match neither is Subscribed nor is Unsubscribed. is not Subscribed includes them.

Relationship fields

These use has or doesn't have, and you choose the value from a list of up to 500.

  • Tag: the contact carries that tag.
  • Product access: the contact has access to that product right now, however they got it. Students who finished a course still count. Access that was removed doesn't count.
  • Purchased offer and Purchased product: a paid purchase of that offer or product. Refunded purchases and free claims don't count.
  • Has offer (paid or free): anyone who got that offer, whether they bought it or it was granted to them for free. Pick the offer from the list.

What happens next

A segment stores conditions, not people. It's worked out again every time you open the Segments page, filter the Contacts list with it, or send a broadcast to it. Broadcasts add one rule of their own: only subscribed contacts are emailed.

Common errors

  • "Finish every condition — one is missing its value (e.g. pick a tag or enter text).": a row has no value. Fill it in or remove the row.
The segment builder showing the alert Finish every condition, one is missing its value, above the Segment name box
  • A count of 0 you didn't expect: check all versus any, and that is matches the exact capitals. Try contains instead.
  • A tag condition matches nobody: the tag may have been deleted. Choose another tag.

Related articles

Still stuck? Talk to a human.

Email support@zinstruct.com. We reply within one business day, Monday to Friday, 9 a.m. to 5 p.m. US Mountain Time. Already signed in? Ask from the help button inside the app.

Email support