Skip to main content
When a user signs up or updates their profile, send their data to Retain. You must identify a user before tracking events for them.
Call /identify before /track. Events can only be recorded for users that have been identified.

Identify a user

Identify a user with account

For products with workspaces or teams, you can associate users with an account and mark the account owner:
See POST /identify in the API Reference for more details.

Reserved traits

Everything you send in properties is stored as a trait on the customer. A few keys are reserved and power specific features in the dashboard:
The segment trait is the segment your customer belongs to in your ICP. It is not the behavioral segment Retain calculates for each account (Curious, Loyal, Zombie, and friends). Those are computed from usage, not sent by you.
Any other key is stored as a custom trait. Custom traits with a small set of values (20 or fewer) also show up as cohort grouping options in the Metrics page.

Traits are merged, not replaced

Each identify call does a shallow merge: keys you send overwrite the same keys, keys you omit are preserved. You can send plan on signup and acquisitionChannel later without losing anything. Send null for a key to clear it.

Split retention cohorts by trait

Send the cohort traits and the Metrics page lets you split the retention chart by any of them. That is how you find out which plan, channel, or segment quietly churns the most:

Next steps

Track

Record events for identified users.