User Properties

Tracking and Saving User Properties in User Profiles

User data is data about a person who you are tracking in your Woopra instance.

The User data scope is essentially all your contact data in Woopra. Think of things like, names, ages, email addresses, ARR, social media handles, phone numbers, company/job title information, etc.

This data is sent to Woopra usually using the identify functionality of the tracking objects and SDKs. You can learn more about implementing your identify calls by starting with the Javascript API document.

Static (normal) User Properties

User properties are known in different systems as contact or user properties or fields. They are very simply, data about the person.

We differentiate static properties from dynamic properties; see below. Static properties are a basic value, and that value will not change unless a tracking request changes it or it is changed manually in the interface. They are called static because the value itself does not change except explicitly.


Some user properties are special in that they can be used to uniquely identify an individual. These are called User identifiers. Identifiers are called unique properties because, generally, only one user profile can have a given value for these properties, and thus, they can be used to uniquely find a person's profile. Identifiers are also static user properties.

Practically, the use of unique identifiers is how the Woopra system knows for a given track request which profile/person performed the event in question.

All Woopra instances have certain identifiers already defined. These are id, email, and cookie. Enterprise accounts can define their own identifiers too.

There are some details to get into if you are a developer implementing your tracking. See Woopra's Profile ID System for more detailed technical info on how we manage multiple unique identifiers. Especially noteworthy is understanding the ID hierarchy.

Dynamic Fields

A dynamic field is like a user property in that it is a piece of data in the user scope, i.e.: a piece of data about a person. However, dynamic fields are different from other user properties in that they are defined by a formula, and are calculated at the time that you query them.

For instance, there is a built-in dynamic field called Events Last 90 Days. Every time a person's profile is loaded for an analytics report or to evaluate triggers, the dynamic field is re-calculated so as to be accurate. So every time you load a profile in the people view, Woopra counts all of the events the person has done in the past 90 days, including events that they did seconds ago, and displays that.

Other user properties maintain their value unless explicitly set to a new one by a track or identify request, or manually in the interface. But dynamic user properties have no set value, they are just calculated in real time when needed because at any given moment, they could be different than they were last time someone looked at the profile.