Userlist Destination allows you to send behavior-based messages to your SaaS users. It’s great for onboarding users as well as nurturing them throughout their journey.

This destination is maintained by For any issues with the destination, contact the Userlist Support team.

This document is about a destination which is in beta

This means that the Userlist Destination is in active development, and some functionality may change before it becomes generally available.

Getting Started

Before you start, make sure Userlist supports the source type and connection mode you’ve chosen to implement. You can learn more about connection modes here.

Web Mobile Server
📱 Device-mode
☁️ Cloud-mode
  1. From the Segment web app, click Catalog.
  2. Search for “Userlist” in the Catalog, select it, and choose which of your sources to connect the destination to.
  3. Enter the “Push API Key” into your Segment Settings UI which you can find from your Push API settings.

NOTE: The Destination does not support tracking of anonymous users, so make sure to call identify before calling track. If you do call track on unidentified users, you will receive a 400 error which you can disregard if it was intentional.


If you’re not familiar with the Segment Specs, take a look to understand what the Identify method does. An example call would look like:

analytics.identify('userId123', {
  email: '',
  name: 'John Doe',
  role: 'Owner',
  createdAt: '2019-03-21T12:12:54.735+01:00'

Identify calls will be sent to as user records. If the userId is already known, it’ll update the user record, otherwise it’ll create a new one.

Here’s how Segment fields map to Userlist users:

Segment field Userlist field Description
userId identifier The unique identifier for this user.
traits properties Additional properties describing the user. email The user’s email address.
traits.createdAt signed_up_at The time when the user was created.


If you’re not familiar with the Segment Specs, take a look to understand what the Track method does. An example call would look like:

analytics.track('Project created', {
  projectName: 'Party Planning'

Track calls will be sent to as a new event. You may send additional properties to describe the event in more detail. Both the event name and additional properties will be stored with the event and normalized to snake case (project_created and project_name) automatically within


You can send computed traits and audiences generated using Segment Personas to this destination as a user property. To learn more about Personas, contact us for a demo.

For user-property destinations, an identify call is sent to the destination for each user being added and removed. The property name is the snake_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Personas sends an Identify call with the property order_completed_last_30days: true. When the user no longer satisfies this condition (for example, it’s been more than 30 days since their last order), Personas sets that value to false.

When you first create an audience, Personas sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.


Segment lets you change these destination settings from the Segment app without having to touch any code.


Please enter the token available in your Userlist Push API settings.

This page was last modified: 20 Oct 2020

Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
Create free account