The three, in plain terms
- Tag, a free-form label on a contact (
vip,beta,nft-holder). A contact can carry many. You create a tag just by using it. - List, a named group a contact belongs to, backed by a tag. Imports land in a list, and capture forms add to a bound list. List names are unique per workspace. A list is usually what you send a campaign to.
- Segment, a saved audience definition. Either a fixed set (materialized from a query or an Agentic Chat answer) or a rule that re-evaluates over time. Segments feed campaigns and automations too.
Lists and segments overlap a lot. Reach for a list for “people I put here” (imports, form sign-ups, an event that says where they belong), and a segment for “people who match this” (a query or a rule).
Put a contact into a tag or list
Four ways, pick by where the decision is made.From an event, inline
Sendtags, listIds, or addToList on a custom event. Tags and unknown list names are created for you, and the change lands before automations run, so an automation on the same event can branch on it.
From a capture form
A capture form applies its bound list and tags on confirmation, the consent-first way an email and a list membership arrive together.From an automation
Add an Add tag, Remove tag, Add to list, or Remove from list action to an automation. Use this when the decision depends on branching logic, a channel, what the contact did, or a wait.From Intelligence, as a segment
Save a SQL or Reports result, or an Agentic Chat answer, as a segment. A query result can be keyed by a wallet, email, or contact-id column, so an email-only, Web2 cohort works too.Which one should I use?
- “This event means they belong here” → set it inline on the event.
- “They gave consent through a form” → the form’s bound list.
- “It depends on branching or timing” → an automation action.
- “Everyone who matches this query or question” → a segment.

