Skip to main content
User identification is part of the Formbricks Enterprise Edition.

Understanding Identified vs Unidentified Users

In Formbricks, understanding the difference between identified and unidentified users is crucial for effective survey segmentation and targeted feedback collection.

Identified Users

Identified users are those for whom specific information has been set, notably the userId. This identification allows for more precise targeting of surveys and a deeper understanding of the feedback provided. When enabled, all information specified by you and all actions are sent to Formbricks. This method is recommended for applications where users are required to log in and will often return.

Setting User ID

To enable user identification, call the setUserId function of Formbricks and pass the user id. The user will show up in the Formbricks dashboard. Use a unique string, like a database ID or a unique email address. You can also anonymize the identifier, as long as it is unique for each user.

Setting User Email

Use the setEmail function to store the user’s email address on the contact. Email is one of the built-in contact attributes, so it gets its own column in the Contacts table and is never removed by an attribute update that omits it.
Setting User Email
setEmail is a shorthand, not a separate identity mechanism. It writes the email attribute exactly as setAttributes would, so these two calls are equivalent:
setEmail vs setAttributes
Order matters: call setUserId before setEmail. Attributes are only stored for identified users, so if no user ID has been set yet, Formbricks drops the email and logs an error to the console:
Note: an email address can belong to only one contact per workspace. If another contact already has the address you pass, Formbricks keeps that contact’s email and silently skips the update. The SDK reports this only in debug mode, as “The email already exists for this environment and was not updated.” The value must be a valid email address of at most 255 characters.

Setting Custom User Attributes

Use the setAttribute function to set custom attributes for the user (e.g., name, plan).
Setting Custom Attributes
The setAttribute function works like this:
Setting Custom Attributes
You can also set multiple attributes at once by passing an object to the setAttributes function:
Setting Multiple Custom Attributes
Note: the number of different attribute classes (e.g., “Plan,” “First Name,” etc.) is currently limited to 150 attributes per workspace.

Setting User Language

Use the setLanguage function to set the user’s preferred language for surveys. This allows you to display surveys in the user’s language when multi-language surveys are enabled. You can pass either the ISO language code (e.g., “de”, “fr”, “es”) or the language alias you configured in Settings → Workspace → Survey Languages.
Setting User Language

Logging Out Users

When a user logs out of your webpage, also log them out of Formbricks to prevent activity from being linked to the wrong user. Use the logout function:
Logging out User