React — Set person properties
Update user properties without changing the distinct ID. UsesetPersonProperties to overwrite properties or setPersonPropertiesOnce to set them only if not already set. Access these methods via useSignal().
Accessing the methods
GetsetPersonProperties and setPersonPropertiesOnce from useSignal():
setPersonProperties(properties)
Sets or updates user properties (overwrites existing). Sends a$set event.
When to use: Update user properties after initial identification (e.g. plan changes, role updates, preference changes).
setPersonPropertiesOnce(properties)
Sets user properties only if they are not already set. Sends a$set_once event.
When to use: One-time attributes that shouldn’t be overwritten (e.g.
signupSource, firstPurchaseDate, referralCode).
Differences from identify()
- identify(distinctId, traits) — Changes the user’s distinct ID and sets properties. Use after login or when you know the user’s identity.
- setPersonProperties(properties) — Updates properties without changing the distinct ID. Use when properties change after identification.
- setPersonPropertiesOnce(properties) — Sets properties only if not already set. Use for immutable attributes.
