Skip to content
Sendora Cloud
Create account
Understand · Customers

The single user_id every other module reads from — one source of truth, real-time, no reverse-ETL.

Segment + mParticle + Customer.io give you a CDP that other tools then sync from. Sendora IS the CDP, AND the auth, AND the messaging, AND the support tool reading from it — same database, same user_id, real-time membership. An audience update propagates to Push targeting, Email lists, in-app messages, support SLA routing, KB analytics, and AI chatbot context simultaneously. Zero sync lag. Zero reverse-ETL.

Features

  • Deterministic identity resolution — profiles keyed on (orgId, projectId, externalId). SDK identify(userId, traits) upserts on externalId. Honest about scope: no probabilistic cross-device fingerprint stitching today — externalId match only.
  • Nested AND/OR audience builder — groups of conditions on event types + properties + profile traits. No SQL, no warehouse round-trip. Evaluated at query time so membership is real-time.
  • Audience size estimationGET /audiences/:id returns estimatedSize so you see how big a segment is before you target it.
  • Arbitrary trait storage — set any trait via identify(userId, { ltv: 234, plan: "pro" }) and audience conditions can filter on it. Honest: there's no built-in computed-trait engine that calculates first_seen / ltv / signin_count for you — you write the value, we store it.
  • AI lifecycle classifier (opt-in via ai_lifecycle_classifier_enabled) — nightly cron classifies each profile into new / active / at_risk / churned based on event activity. Use as an audience condition.
  • Anonymous → identified device-takeover — anon user_id retired on signin, push tokens reassigned. No duplicate notifications. Webhook + inline SDK listener for your own mirror tables.
  • Every module reads this — Push uses audiences for targeting, Email uses them for segments, Automation uses them as triggers, In-App uses them for visibility, Surveys uses them for audience-trigger config. One identity, multiple surfaces.

Common use cases

Replace Segment + mParticle + Customer.io CDP — already the source of truth, no reverse-ETL.

B2B + B2C apps that need real-time audience membership in messaging + auth + support, not nightly warehouse syncs.

Multi-device consumer products where the SAME externalId is passed via `identify()` across web + iOS + Android — those resolve to one profile. (For probabilistic cross-device match without a shared `externalId`, you'd still need a third-party identity-stitching vendor.)

Start in minutes. Scale without switching tools.

The free tier covers most side projects. Every module is turn-key and every SDK is first-party.