CRM · Customer Data

Build the audience once. Use it everywhere.

Segments turn any combination of contact, event and behavior signal into a named, dynamic audience. Reuse the same segment in broadcasts, flows, AI assistants and dashboards. Audiences stay current as data changes — no exports, no stale CSVs, no segment that worked last week and lies this week.

  • Build with 80+ contact, event and order signals
  • Dynamic membership updates within seconds
  • Combine segments with AND, OR, NOT
  • Reuse in flows, broadcasts, AI and exports
The problem

The CSV from last quarter is lying to you

Every marketer knows the ritual: pull a CSV of "active customers who bought from us in the last 90 days", upload it to the broadcast tool, send the campaign, throw the CSV away. Three weeks later, repeat. The list is stale the moment it is pulled — customers who bought after the pull get missed, customers who unsubscribed in the interim get spammed, customers who already received the campaign from a different list get hit again.

The industrial answer is dynamic segments, where the audience is a saved query that re-evaluates on every send. But most "dynamic" segments in legacy tools are dynamic in name only — they query a single table, can not span email opens with order history with WhatsApp clicks, and absolutely can not check "customer who replied to last broadcast within 24 hours and has not yet ordered". So teams fall back to CSVs.

Segments in SabNode is dynamic for real. The query language spans every signal the platform captures — contact fields, custom fields, messages across channels, flow executions, broadcast engagement, orders, payments, opt-ins, tags. Membership recomputes incrementally as events flow through the platform. The segment you built for a Diwali campaign last year still works for next year's Diwali, with no edits, because the definition was always about the question, not the snapshot.

What it is

Segments, in depth.

A Segment is a named, dynamic audience defined by a filter expression over the contact graph. Filters combine 80+ signals: identity (phone, email, language, country, timezone), contact fields (any custom field), tags, opt-in status, lifecycle stage, Kanban column, last-message-recency, last-purchase-recency, total spend, order count, channel preference, AI conversation outcomes, broadcast engagement (opened, clicked, replied), flow executions (entered, completed, dropped at node X). Filters compose with AND, OR, NOT and nested groups — same expressive power as SQL but exposed through a clickable builder.

Membership is dynamic and incremental. The segment engine listens to every event in the platform (message in/out, order, tag change, field update) and incrementally re-evaluates which segments the affected contact belongs to. A contact who just placed their fifth order automatically enters the "VIP — 5+ orders" segment within seconds, no rebuild required. The segment-entered event itself is a flow trigger, so onboarding to VIP can fire a thank-you template the same minute.

Segments compose with each other. Create "VIP" and "Lapsed" as base segments, then define "Lapsed VIPs" as VIP AND Lapsed. The derived segment updates automatically when its parents do. This pattern lets teams build a library of reusable audience primitives ("Active Hindi Speakers", "High-Intent Last 30 Days", "Refund Recently") and combine them per campaign without rebuilding query logic each time.

Every downstream module consumes segments. Broadcasts target by segment with a live count preview. Flows branch on "contact is in segment X". AI assistants gate access by segment for premium-only features. Dashboards filter by segment to show the funnel for just that cohort. Exports stream the current snapshot or a scheduled refresh. The segment is the universal join key across SabNode modules — define an audience once, every tool reads from the same definition.

Capabilities

Everything you get with Segments.

7 capabilities
01

80+ filter signals

Contact fields, custom fields, tags, opt-in by channel, lifecycle stage, Kanban column, messages (sent/received/replied to), broadcasts (opened/clicked), flows (entered/completed), orders (count/total/recency), payments, AI conversations, location, language, timezone, and more.

02

Composable boolean logic

AND, OR, NOT, nested groups up to 5 levels deep. Build complex audiences like "WhatsApp opted-in AND (Hindi OR Tamil) AND (last order < 30 days OR total spend > ₹10,000) AND NOT tag=staff" through the clickable builder, no SQL needed.

03

Live count preview

As you build the filter, the count updates within seconds against the live contact graph. See exactly how many contacts match before saving. Compare alternative versions of the segment to pick the right reach.

04

Incremental membership

When a contact event occurs, only the affected segments re-evaluate for that contact. No full rebuild. Segment-entered and segment-exited fire as flow triggers so downstream automations react instantly to membership changes.

05

Segment composition

Define a segment as the intersection, union or difference of other segments. Updates propagate automatically. Build a library of reusable atoms ("Hindi speakers", "Active last 30 days") and combine per campaign.

06

RFM and cohort segments

Built-in templates for recency-frequency-monetary segmentation, cohort by signup week, customer-lifecycle stage. Pick a template, tweak thresholds, save. Skip the manual rebuild of standard analytics primitives every team needs.

07

Scheduled exports

Export any segment to CSV, S3, or Google Sheets on a schedule. Hourly, daily, weekly. Lets external tools (BI dashboards, paid-media platforms) consume SabNode segments without a custom integration. Audit log captures every export.

Use cases

Built for the way teams actually work.

D2C
Case 01

D2C Diwali VIP campaign

Segment: "spent ≥ ₹5,000 in last 12 months AND WhatsApp opted-in AND language IN (Hindi, English)". Used in a broadcast for early access. Live count: 18,000. Same segment fed into a flow that automatically nudged the 22% who clicked but did not purchase 48 hours later. No CSV touched.

SaaS
Case 02

B2B SaaS expansion targeting

Segment: "company size ≥ 50 AND product tier = starter AND feature_used:advanced_reports IN last 14 days". Identifies starter-tier users hitting power-user behavior. Fed into a flow that schedules an AE conversation and sends a product-tier-upgrade brochure. Expansion pipeline up 31% in one quarter.

EdTech
Case 03

EdTech re-engagement

Segment: "course_enrolled = true AND last_active > 21 days AND completion < 30%". Triggers a personalised AI Generate nudge with the next-lesson summary. Re-engages 14% of would-be churners. Segment recomputes daily; new dormant students enter automatically without manual list refresh.

Healthcare
Case 04

Healthcare appointment reminder cohort

Segment: "has_upcoming_appointment within 24 hours AND no_confirmation_sent_today". Cron-driven flow runs hourly against this segment, sending interactive confirmation buttons. Membership shrinks as confirmations come in. Replaces a manual ops process that occasionally missed entire shifts.

Logistics
Case 05

Logistics dispute proactive outreach

Segment: "shipment_status = exception AND no_outbound_in_last_4h". AI assistant proactively reaches out to acknowledge the delay and offer options. Composed from atomic segments around shipment status and outbound recency — both reused in other automations.

How it works

From signup to first send in minutes.

Segments is included on every SabNode workspace. No separate billing, no extra setup — flip it on from your workspace settings.

  1. 01

    Open the segment builder

    Click New Segment from any module — CRM, Broadcast, Flow editor. The builder is the same surface regardless of where you start.

  2. 02

    Compose filters

    Pick signals from the catalog, add operators, group with AND/OR/NOT. The live count updates as you build. Templates available for RFM, lifecycle and cohort patterns.

  3. 03

    Name and save

    Give the segment a name and optional description. Save promotes it to the segment library where every module can reference it.

  4. 04

    Use it everywhere

    Target a broadcast, branch a flow, gate an AI assistant, filter a dashboard, schedule an export. The segment is the same in every context and updates everywhere when the definition changes.

  5. 05

    Monitor and tune

    Each segment has a usage page — where it is referenced, how membership trends week-over-week, recent enter/exit events. Tune the filter as the business evolves.

Plays well with

Works with the tools you already ship on.

ShopifyHubSpotGoogle SheetsBigQueryMailchimpRazorpayStripeMeta Ads Manager
Frequently asked

Questions about Segments.

Can't find what you're looking for? Talk to our team.

How is segment membership kept fresh?
Incrementally. The segment engine subscribes to the change stream from the contact graph. When a contact attribute changes — a new order arrives, a tag is added, a message is sent — only segments that reference that signal re-evaluate for that contact. Average end-to-end latency from event to updated membership is under five seconds. No nightly rebuilds, no stale audiences for daily-recompute jobs.
Can I build a segment based on flow behavior?
Yes. Filter signals include "entered flow X", "completed flow X", "dropped at node Y of flow X", "currently active in flow X". You can build a segment of "everyone who entered the onboarding flow but dropped at the KYC step" and automatically target them with a recovery campaign. This is one of the highest-ROI use cases — every flow drop-off becomes a re-engagement opportunity without manual list pulling.
How do I segment by AI conversation outcome?
AI Studio emits structured events with outcomes — resolved, escalated, declined, satisfied. Segment signals include "last AI conversation outcome = X", "AI sentiment score < Y", "AI escalation count in last 30 days ≥ Z". This lets you build cohorts like "AI declined them last week — let a human re-engage" or "high-CSAT AI conversations — upsell candidates".
What is the limit on filter complexity?
Up to 50 conditions per segment, nested up to 5 group levels deep. In practice almost no real segment needs more than 10-15 conditions — beyond that the audience gets so narrow you should probably split into two segments. The builder warns at 30 conditions and gates at 50. For truly complex audiences, layer segments via composition instead of one mega-filter.
Can I share segments across tenants or workspaces?
Within a tenant, yes — segments are tenant-scoped resources and any user with the right RBAC role can see and use them. Across tenants, no, by design — segments contain audience definitions that often reflect strategic intent and customer data. For agencies running multiple client tenants we offer segment templates that can be cloned into each tenant with one click.
How accurate is the live count preview?
The count is computed against the current contact graph state with no caching — every save runs the query fresh. For segments touching millions of contacts the count can take 2-5 seconds; for smaller scopes it returns in under one second. Counts include only contacts active in the current platform period (default 13 months) — older contacts are archived and excluded unless you toggle to include archived.
Can a segment trigger paid-media audience sync?
Yes via the Meta Ads Manager integration. Mark a segment as "sync to Meta" and the engine maintains a Custom Audience on the Meta side, adding contacts as they enter the segment and removing as they exit. This is the right way to run lookalike campaigns and exclude existing customers from acquisition spend without manual list uploads every Monday.
CRM · Customer Data

Ship segments into production this week.

No credit card. No sales call required. Spin up a workspace, plug in a number, and your team is live in under an hour.