What are Users?
Users are the individual people that use your product. You tell Trophy about your users through APIs and use the dashboard to design gamification experiences around them. Users must be individuals, they cannot be companies or organisations. To create organizational structures or user groupings, consider using a custom user attribute.Key Attributes
Key attributes are properties of users controlled and managed by Trophy and are for things likeid
or email
, some are required while others are optional.
Required Attributes
Trophy only requires one key attribute,id
. Every user you tell Trophy about must have an id
, this is what identifies them as a unique person.
This is the ID of the user in your database.
To make things simple, Trophy lets you use your own
id
that you already have
in your database instead of needing to manage another one just for Trophy.Optional Attributes
Additionally, you can tell Trophy about any of the following optional key attributes and it will make them available to you as part of your gamification experience:The user’s full name. This is accessible in email templates and other areas
where you may want to address the user by name.
The user’s email address. This address will be used in any
Emails that you set up as part of your gamification
experience with Trophy.
The user’s time zone. Must be specified as an IANA timezone
identifier.
Used to calculate streaks and send emails to users in accordance with their
local clock.
If you’ve configured any Trophy Emails, then they’ll only
be sent to a user when this field is true. Note: If you don’t provide an
email
, attempting to set this field to true will result in an error.Custom User Attributes

Creating Attributes
To create a new custom user attribute, head to the attributes tab of the users page in the Trophy dashboard and hit the Add User Attribute button. Give the attribute a name and a unique key. The key is what you’ll use to reference the attribute in API calls.Setting Attributes
Attributes can be assigned values for specific users using their unique key either inline, as users increment metrics through the metric increment API, or explicity through the user identification, create user, or update user APIs.Trophy will only set values of attributes that have first been created
in the dashboard. We do this to help you keep a clean set of attributes and
prevent accidental overwrites.If you receive an error similar to the following then you might have miss-spelled the attribute key in the request, or you need to create the attribute first in the Trophy dashboard:
subject
and plan
:
Using Attributes
Use custom user attributes across Trophy to personalize gamification features , aggregate and filter data returned from APIs, and to segment and compare user cohorts in analytics.Feature Personalization
Custom user attributes can be used to personalize achievements, customize the way points are earned by different users and more. Follow the links to the relevant pages below to learn more.Personalizing Achievements
Configure achievements that can only be unlocked by specific users.
Personalizing Points
Personalize how different users earn points.
Email Segmentation
Control which users receive gamified emails.
Email Personalization
Personalize email copy and subject lines with custom user attributes.
Data Aggregation and Filtering
You can use custom user attributes to aggregate and filter data returned from some APIs to support a wide range of gamification use cases. In all cases, attributes are included in theuserAttributes
query parameter using a consistent schema:
?userAttributes=city:london,subscription-plan:pro
Here’s a list of all APIs that support the userAttributes
query parameter:
Segmented Analytics
Custom user attributes can be used to segment and compare retention and engagement charts between user groups. This is useful to understand which cohorts are making full use of your gamification features, and which are struggling to engage and therefore require some attention.Identifying Users
When you tell Trophy about a user in your platform, we call this identification. There are two ways you can identify users with Trophy, inline and explicit identification.We recommend getting started with inline identification if you’re new to
Trophy. If you decide you need more control, try explicit identification.
Inline Identification
Inline identification is the easiest way of telling Trophy about your users as it doesn’t require any specific user identification code. You simply tell Trophy about users as they go about normal use of your platform. In practice this means whenever you use the Metric Event API, you pass along full details of the user who triggered the event. Here’s an example where an API call is made to the metric events API, and the details of the user who made the interaction are passed along in the request body:id
, then Trophy will update any details of the user that are passed through.
In other words, inline identification is by means of an UPSERT
operation.
Identifying users in this way has two key benefits:
- All new users that sign up for your platform and increment a metric are automatically tracked in Trophy without any explicit identification code written by you
- Any changes to existing user properties like name or email address are automatically synced to Trophy the next time the user increments a metric
Explicit Identification
Explicit identification is when you write code in your application that explicitly tells Trophy about users seperate from any metric interactions. This is useful if you want complete control over how and when Trophy learns about your users. Scenarios where you might want to use explicit identification might be:- You want to tell Trophy about new users immediately on sign-up, before they increment a metric
- You track a lot of metrics in Trophy, and don’t want to repeat inline identification code.
- You want to only tell Trophy about a specific cohort of users, of which you control the conditions around
Just like in inline identification, explicit identifcation also works by means
of an
UPSERT
operation meaning all user attributes are kept in sync with
Trophy automatically.Creating Users
To explicitly create a new user in Trophy, use the Create User API.Keeping Users Up To Date
To tell Trophy about an update to a user in your platform you can use the Update User API. Any properties that you pass to Trophy will be updated to the new values you specify.Retrieving User Information
To fetch the details of a user that you’ve already identified with Trophy, use the Get User API. This will return the full details of the user along with thecontrol
attribute that you can use to conditionally enroll users in any gamification features. Learn more about Experimentation.
Response
User Analytics
Basic Analytics
By default Trophy includes high-level user analytics including on the Users page including:- The total number of users that you’ve told Trophy about
- The number of users that are active on a daily basis
- The number of users that are active on a monthly basis

Top Users
Additionally, on the Dashboard, Trophy shows a Top Users list with the set of users who have made the most progress against your platform’s metrics. These are your most engaged users, so it’s useful to know who they are!Frequently Asked Questions
How many users can I tell Trophy about?
How many users can I tell Trophy about?
As many as you want! Trophy only charges each month for active users, which are the users that interact with your product at least once in a given month.This is great because it means if a user churns, you won’t pay for them in subsequent months.You can view the total number of users you’ll be charged for each month within Trophy on the sidebar:
You can estimate your usage costs on our Pricing page.
