Identity rules
Match display name, email, phone number, or channel user ID.
Customer segments
SignalBX helps ecommerce teams define reusable customer segments from contact identity, channel, tags, engagement, lifecycle dates, CRM links, and nested metadata—then preview the match and use it to build a broadcast audience.
Match display name, email, phone number, or channel user ID.
Build audiences around normalized customer messaging channels.
Use contact tags, CRM provider, CRM contact ID, or sync state.
Compare message and conversation counts with numeric operators.
Filter first seen, last seen, or CRM sync dates by range or recency.
Address validated metadata paths without turning them into raw SQL.
Preview the total match and a bounded contact sample before use.
Add matching, channel-compatible contacts to an editable broadcast.
A clear audience language
Choose whether every rule or any rule must match. Each field exposes operators suited to its data type, so text, arrays, numbers, timestamps, and metadata remain explicit and valid.
Contact tagscontains any
repeat-buyer✓Conversation countgreater than or equal
3✓Last seenwithin the last
14 days✓Metadata · loyalty.tierequals
gold✓Evidence before activation
Preview evaluates the normalized definition against tenant-scoped contacts, returning both an exact count and a bounded sample ordered by recent customer activity.
1,248 matching contactsShowing the most recently active sample
EvaluatedAarav MehtaWhatsApp · 8 conversationsrepeat-buyer · gold
2mNina KapoorEmail · 5 conversationsrepeat-buyer · gold
18mLeo MartinSMS · 4 conversationsrepeat-buyer · gold
1hMaya ShahWhatsApp · 3 conversationsrepeat-buyer · gold
3hPredictable evaluation
Every definition crosses the same validation and normalization boundary before the query builder produces tenant-scoped, parameterized predicates over the contact record.
DefinitionChoose ALL or ANY and add conditions
ComposedField contractValidate fields, operators, and values
CheckedQuery boundaryBind values into tenant-scoped predicates
ParameterizedEvaluationReturn matching count and recent sample
PreviewedPortable audience definitions
Saved and inline audiences share the same compact definition: a match mode and typed conditions. That makes the targeting logic readable, reusable, and independently previewable.
/api/v1/segments/preview{
"definition": {
"match": "ALL",
"conditions": [
{
"field": "tags",
"operator": "CONTAINS_ANY",
"value": ["repeat-buyer"]
},
{
"field": "conversation_count",
"operator": "GREATER_THAN_OR_EQUAL",
"value": 3
},
{
"field": "last_seen_at",
"operator": "WITHIN_LAST",
"value": { "amount": 14, "unit": "days" }
}
]
},
"sampleLimit": 10
}
Signals already on the contact
Segment rules span stable identity, observed engagement, lifecycle timing, CRM linkage, tags, and validated nested metadata—using operators designed for each field type.
Display name, email, phone number, channel user ID, and normalized channel.
equals · contains · starts with · inMessage count and conversation count support thresholds, comparisons, and bounded ranges.
greater than · less than · betweenFirst seen, last seen, CRM synced date, CRM provider, and CRM contact ID.
before · after · between · within lastMatch tag sets or address validated nested metadata paths for tenant-specific customer signals.
contains any · contains all · existsAudiences with operational meaning
Combine conversation thresholds with a last-seen window and the tags your team already maintains.
Engagement + lifecycleUse channel criteria, then materialize contacts whose channel and usable recipient identity match the broadcast.
Channel-compatible audienceMatch a VIP tag or validated loyalty metadata with recent activity and identity fields.
Tags + metadataCombine CRM provider or contact ID state with before, after, and empty-value rules.
CRM + timestampsUse first-seen and last-seen predicates alongside message or conversation count thresholds.
Dates + engagementPreview an inline definition, inspect its count and sample, then decide whether it deserves a reusable name.
Inline audience previewTargeting with guardrails
Audience logic affects real customer outreach. SignalBX keeps definition validation, tenant scope, lifecycle state, permissions, and broadcast materialization visible at that boundary.
Customer segment questions
Segments can use channel, channel user ID, display name, phone, email, tags, message count, conversation count, first-seen and last-seen dates, CRM provider, CRM contact ID, CRM sync date, and validated nested metadata paths.
Yes. A definition uses either ALL or ANY. ALL joins its conditions as requirements that must all match; ANY includes a contact when at least one condition matches.
No. Preview evaluates the definition and returns a matching count plus a bounded sample. For a saved segment, SignalBX also updates its display-only member count, evaluation time, and evaluation history.
No. Matches are evaluated when a preview or audience operation requests them. The stored member count reflects the latest saved-segment preview; it is not a continuously refreshed background total.
An editable broadcast can resolve an active saved segment and select matching contacts for the broadcast channel. Eligible contact identifiers are inserted as pending recipients, and existing identifiers for that broadcast are not duplicated.
Yes. Both preview and broadcast audience creation can accept an inline definition. Saved segments add a reusable name, description, tags, metadata, lifecycle state, and latest evaluation context.
An archived segment cannot be edited or used for broadcast targeting. It can be restored to active status when the audience should become usable again.
Make customer context actionable
Turn the contact signals already inside SignalBX into clear, reusable customer segments for support operations and targeted outreach.