Segment and target criteria options

Segments allow you to create groups of users based on behavior, devices, locations, and other properties. The tables below define all of the segment criteria/dimensions available in Leanplum.

You can create segments in the Target of a message or campaign, in an A/B test, or in the Users and Analytics Dashboards. For more on building segments and targets, see our Building a target.

UsersSpentinApp.png

You can modify most segment criteria using operators. In the example above, the segment criteria "Minutes previously spent in app" is being modified by the operator "is less than." For more on using operators, see Operator Options.


Segment Criteria Reference Tables

App version

Dimension

Type

Description

Use Case

App Version

number

The version/build number of your application.

Target users where app version is less than 4.0 to send out reminders to update.

 

Saved segments  

Dimension

Type

Description

Use Case

Saved segment

segment

Consists of any combination of segment criteria that you save as one segment.

Send a message to our segment  "NYC_iPhone_Users."

Not saved segment

segment 

Targets all users besides those in one of your saved segments.

Send a campaign to all users except our "Power_Users" segment.

Contents of

segment 

Populates the target phrase with the contents of one of your saved segments (allows you to view or edit the individual aspects of that segment).

See the contents of our "Power_Users" segment.

 

Behavioral (Events and states)

With Leanplum, you can segment based on custom events, states, and parameters specific to users' activity in your application. Here’s a quick refresher on each of these data types:

  • Events: Anything that can occur in your app. Events include clicking on a link, sharing, purchasing, etc.
  • States: Any part of your app a User can be in for a period of time. For example, some states can include watching a video, playing a particular game level, or browsing an In-App store. All states have a time and a duration. Duration is set automatically when one state begins and the previous one ends.
  • Parameters: Additional data associated with an event or state. For example, if an event is "Level 1 complete," you could apply a parameter for "Level Score."

Dimension

Type

Description

Use Case

Occurrences of event or state

number

The number of times a user has done a given event or state in the user’s lifetime.

Target users where Occurrences of “main menu” is greater than 2.

Value of event

number

The lifetime value applied to the event if one is provided.

Target users where Value of “Power Used” is 100.

Time of the first occurrence

datetime

The first time a user has done an event or state.

Note: can be days, weeks, hours, MM/DD/YYYY, hh:mm, yesterday, etc.

Target users where First occurrence of "Added Item to Cart" is not since 2 days ago

Time of last occurrence

datetime

The last time a user has done an event or state.

Note: can be days, weeks, hours, MM/DD/YYYY, hh:mm, etc.

Target users where Last occurrence of "Checkout" is prior to 1 week ago

Monetization (Behavioral)

 

Lifetime value

number

The total lifetime value of the user, determined by the user’s total value of the monetization event.

Target users with Lifetime value of over $500 to send a special coupon.  

Non-paying users

segment

Selects users with zero or negative lifetime value determined by the monetization event.

Target Non-paying users to send a special offer.

Paying users

segment

Selects users with positive lifetime value.

Note: Determined by the monetization event—see developer documentation.

Selects users with positive Lifetime value. (Determined by the monetization event—see developer documentation.)

 

Test devices

Dimension

Type  Description Use Case 

All developer devices

boolean Includes all devices that have ever been used in developer mode. Target all developer devices to test a new feature.

Registered test devices

string Includes all test devices registered for a given account. Target all devices of a certain developer to test a message before sending to users.

 

Lifecycle state

 

Dimension

Type

Description

Use Case

First-time users

segment

Users who have had at most one session.

Target First-time users for a notification that welcomes them to the app and thanks them for joining.

Returning users

segment

Users who have had more than one session.

Target Returning users for a test to see if their behavior is changed by a new main menu experience.


Time of first run

(First session)

datetime

The time in which users have first run the application.

Note: If no time is specified, the time value defaults to midnight.

Target users where Time of first run is at most 1 day ago for welcome promotion.

Note: Only use inequality operators with times, such as since, prior to, and between. The operator “is” will not match any users.

Last active

(Last session)

datetime

The time in which the user was last active in the application.

Target users where last active is 5 days ago for re-engagement.

# of prior sessions

number

The lifetime number of sessions for a user, defined by 30 minutes or more of inactivity.

Target users where # of prior sessions is greater than 9—to reward your most loyal users with a coupon.

Logged-in users

 segment

For clients with their own User IDs (usually created by a User setting up an account), the User ID can be passed to Leanplum to determine if the User is logged in or out.

Target logged in Users to message them with special offers and promotions. 

Logged-out users

 segment  See logged-in definition. See logged-in example. 

Minutes previously spent in app

(Combined session time)

number

The lifetime number of minutes a user has spent in the application.

Target users where minutes previously spent in the app is at least 10 for an in-app message reminder.

 

Localization

Note on location: Leanplum's SDK uses IP-based geolocation for all users, and GPS/Cell-based geolocation from the user's device if available. GPS/Cell-based information is always trusted more — we use reverse geocoding to determine the location. Geolocation is gathered only on app start or resume, so user location is the user's location during the most recent session.

We provide methods to disable automatic collection of GPS/Cell-based geolocation (not IP), as well as a method to set user location manually. See our SDK docs for more information.

 

Dimension

Type

Description

Use Case

City

text

The user’s city as determined by their last known location.

Target users where City is not Los Angeles.

Country

text

The user’s country as determined by their last known location.

Target users where Country is US

Language

text

The language the user has selected on their device (matches the language portion of the user’s locale).

Target users where Language is Spanish.

Locale

text

The locale (language + country) the user has selected on their device—used for localization preferences, including language, currencies, number and date formats.



Target users where Locale is en_US (US English)

Note: the country portion of locale may not match the user’s Country. For example, a user may see currency formatted in pounds, but travel to the US. That user would have en_GB as their locale but US as their country.

Location

text

User location based on last known device location. 

Note: If the radius of the campaign is less than 20km, Location only includes users with CELL or GPS Location accuracy. For radius over 20km, estimated locations based on IP address are also included.  

Region

text

The user’s state or province as determined by their last known location.

Target users where Region is California. 

 

Timing

Leanplum accepts many different date/time formats for use with our time-specific segment types, such as

  • MM/DD/YYYY -->  08/05/2015
  • MM/DD/YY --> 08/05/15
  • X months/weeks/days ago --> 3 days ago
  • month day at XX:XX AM/PM --> March 5 at 01:00 AM
  • MM/DD/YY XX:XX AM/PM --> 5/13/16 12:01 am
  • MM/DD/YY  XX:XX UTC --> 5/13/16 00:00 to 5/13/16 23:59 

Note: If a date without a time is specified, the time will default to midnight (00:00) that day. 

Only use inequality operators with times, such as since, prior to, and between. The operator “is” will not match any users. For more on date time operators, see Time related targeting operators.

Dimension

Type

Description

Use Case

Session start in Pacific time

datetime

A specific day/time in Pacific time when the user has logged a session. See formats above.

Target users where Session start in Pacific time is since 12/2/2016.

Session start in user’s timezone

datetime

A specific day/time in the user’s timezone when the user has logged a session.

Target users where Session start in user’s timezone is between 12/2/2016 and 12/9/2016.

Session start time in user’s timezone

time

A specific time of day in the user’s timezone when the user has logged a session.

Note: Use 12-hour (hh:mm AM/PM) or 24-hour (hh:mm) time.

Target users where Session start time in user’s timezone is between 12:00 PM and 1:00 PM to capture lunch-time users.

Note: Your target should be a time range rather than a specific time.

 

Technology

 

Dimension

Type

Description

Use Case

Device model

text

The specific model of a given device.

Target users where Device model does not contain iPad.

OS name

text

The operating system of the device.

Target users where OS is not iOS.

OS version

text

The specific operating system version a given device is running.

Target users where OS name is iOS AND OS version is less than 8.0.

Browser name

text

The browser name that the user is running (only set by the HTML5 SDK).

Target users where Browser name is Chrome.

Browser version

text

The specific browser version a user is running (only set by the HTML5 SDK).

Target users where Browser version is at least 2.

Push enabled

boolean

The device has a push token.

Target users where Push enabled is off with an in-app message.

Text push enabled

boolean

The device has a push token. On iOS, the user must also have enabled Alert-style user notifications.

Target users where Text push enabled is off with an in-app message.

Email Enabled

boolean Users with a known email address  Target users where Email enabled is on with a new email campaign. 

 

Source (User acquisition)

The attribution details for specific users are generally given through 3rd party attribution providers who pass the source details to Leanplum via a postback (webhook).

*If you work with a specific 3rd party and want to know if we can integrate, please contact your CSM.

Dimension

Type

Description

Publisher ID

text

The ID of the specific publisher that the install came from.

Publisher

text

The name of the specific publisher that the install came from.

Sub-publisher

text

The name of the sub-publisher that the install came from.

Site

text

The name of the site that the install came from.

Campaign

text

The name of the campaign that the install came from.

Ad group

text

The name of the ad group that the install came from.

Ad

text

The name of the ad/banner that the install came from.

 

User attributes

User attributes are key-value pairs that describe properties of a User. Keep in mind that User attributes may change after a target segment gets evaluated.

User attributes can store any custom data you collect from your Users. For example, you might set up some attributes like “firstName,” "gender," or “destinationCity.” 

Dimension

Type

Description

Use Case

Custom

 

number, boolean, text, list, or datetime

Custom key-value pair that you can associate with your users.

Note: Keep in mind that user attributes may change after the target gets evaluated.

Target Users whose attribute next_birthday is coming up. Target message where User attribute "next_birthday" is between yesterday and today.

 

Users and randomized groups

 

Dimension

Type

Description

Use Case

User ID

text

The unique ID assigned to a user. Typically, this matches the ID used in your company’s database.

Note: User ID defaults to device ID if not provided—see developer docs for accepted device IDs per platform.

Target user where User ID is 12345 to send only that user a push notification.

User bucket

number

A bucket from 0-999 to choose random groups of users based on user ID.

Note: Creates random, mutually exclusive groups of users.

Target users where User bucket is between 0 and 249 to consistently select a 25% sample group for an experiment. 


Was this article helpful?
Have more questions? Submit a request