Use segments to optimize the user experience and maximize engagement in your app through customizable ad flows. By dividing your users into groups based on parameters, including actions and specific characteristics, you can apply different monetization strategies that deliver the most relevant ad experience for each group.
Prerequisites
To define segments, you'll need to configure ad units for your app. If you haven't defined your ad units yet, go to Ad Units & Placements to get started.
Create a segment
To create a segment, complete the following steps:
- In the left navigation menu, go to Monetize > Segments.
- Select New Segment.
- On the Segment Settings page, categorize your users and create your user segment.
Create conditions
Each segment can include up to 10 conditions.
To pass the user's details to Unity LevelPlay, refer to the following guides:
Supported user properties
Unity LevelPlay supports the user properties listed in the following table. Some of these properties are collected by the ironSource SDK while others must be sent to Unity LevelPlay through the API.
User property | Description | Limitation | Wildcards | Data collected by the SDK | Example |
---|---|---|---|---|---|
Country | User's country | Select from a list of ~250 countries | - | ✔ | Germany |
App version | User's app version | Up to 10k characters | ✔ | ✔ | 4.2.3 |
SDK version | ironSource SDK version within the user's installed app | Up to 10k characters | ✔ | ✔ | 6.3 |
User creation date | Date the user installed the app | ≥0 | - | - | 1644912626 |
Connection type | User's network connection | up to 32 characters | ✔ | ✔ | cellular |
Device model | User's device model series | up to 10k characters | ✔ | ✔ | iPhone 6 |
Device manufacturer | User's device manufacturer | up to 10k characters | ✔ | ✔ | Samsung |
OS version (iOS only) | Operating system version on the user's device | up to 10k characters | ✔ | ✔ | 10.0.1 |
API level (Android only) | The API level on the user's device | up to 10k characters | ✔ | ✔ | 21 |
Level | Game level reached by the user | up to 32 characters | - | - | 10 |
Paying user | True if the user has spent any money on in-app purchases. False if the user has not spent any money on in-app purchases | True or False | - | - | - |
IDFA | True if the device has allowed IDFA tracking. False if the device refused IDFA tracking | True or False | - | ✔ | - |
GAID | True if the device has allowed IDFA tracking. False if the device refused IDFA tracking | True or False | - | ✔ | - |
COPPA | Based on the COPPA SDK functionality to flag specific end-users who indicated that they are younger than 13, 16 or other ages depending on the applicable laws. Learn more here. | True or False | - | ✔ | - |
Total in-app purchases | Total amount of money the user has spent in your app | 1-999999.99 | - | - | 15 |
Custom property | Additional data you would like to use for segmentation | up to 5 custom properties; alphanumeric up to 32 characters | ✔ | - | Type of in-app purchase, install source, language |
Age | User's age | 1-99 | - | - | 15 |
Gender | User's gender | Male or female | - | - | Male or female |
To configure the criteria for the condition, select the operator (for example, Equals, Less Than, or Greater Than) and then enter a correlating value.
In addition to the supported user properties, you can also set a custom segment or custom property.
Custom segment
Handle all of the segmentation process in your app and use the SDK to inform when a user is a part of this segment, without providing individual user details.
Custom segments are totally confidential and do not require a significant amount of platform configuration.
However, you cannot combine a custom segment with other properties because it's a standalone property.
Custom property
Send the property value by using the SDK Segment API. All of the segmentation progress happens on LevelPlay.
Custom properties can be combined with other properties.
Wildcards
Wildcards are single character placeholders that you can use to stand in for a number of characters in a text value.
LevelPlay supports the following standard wildcards in string type user properties:
- Asterisk: The
\*
placeholder matches any number of characters and must be placed before or after the value. Consecutive asterisks, (for example: **) are not supported - Question mark: The
?
placeholder matches a single character and can be placed anywhere in the value (before, in the middle, or after). ironSource supports consecutive question marks to stand in for multiple characters (for example: c??p to represent comp, coup, clip). - Comma: The
,
placeholder allows for a list of comma separated values in the string and functions as an OR operator. ironSource supports up to five comma separated values (for example: iPhone 4S, iPhone 6, Galaxy S4, Nexus 4, HTC One).
Set segments order
The order of segments is critical to determine what is the right segment for the user, because a user can belong to only one segment at a time.
If user settings are applied to more than one segment, the higher priority segment will be chosen.
Segments are ordered from top to bottom, with first priority given to the top of the list. The default position for each new segment is at the bottom of the list.
To change the order of segments, drag and drop each segment into the list position you prefer.
Use segments
The following sections detail use cases for three popular segments.
Use case: Waterfall by segment
Connect a segment to a waterfall by using mediation groups.
- On the left navigation menu, go to Monetize > Mediation.
- Select Add group.
- Define your group:
- Name your group.
- Select the countries to be delivered in this group.
- Choose one or more segments for the group.
- Set up your waterfall:
- Inside the group, choose to activate or deactivate instances (bidders and traditional instances).
- In the waterfall, configure the settings (rate, cap) for each instance.
The order of the groups is important, so ensure that you prioritize the groups to fit your strategy. The group in the top position will be prioritized 1st. If a user complies with the group's conditions (countries and segments), then the group's waterfall will be served.
For more information about using mediation groups, refer to Mediation management.
Use case: Ads strategy by segment
To create an ad strategy by segment, you must have placements for your ad units.
You can create a different ads strategy for each segment with the following settings:
- Ad delivery: Turn on/off all ads delivery for a specific placement
- Capping and pacing:
- Turn on/off capping or pacing for a specific placement.
- Change capping interval (days/hours).
- Change the amount for both capping and pacing.
- Rewarded: Change the amount of each reward for a specific placement.
To set exceptions for your defined ad units to customize the ad delivery for the segment, complete the following steps:
- On the Segment Settings page, go to Define Exceptions.
- Create an exception for each selected placement. The settings defined here will override the placement settings for users who belong to the segment.
Review the exceptions you set for each placement on the Segments page.
Use case: Reporting
When you add a segment to your ad monetization strategy, it will be visible in your reports when you choose to break the data by segment.
Monitor the impact of your segments
You can break down your data by segment in the following reports:
Dynamic segmentation
Use dynamic segmentation to change a user's segment actively during a session for more accurate segmentation. Dynamic segmentation is especially useful for creating dedicated waterfalls per segment and optimized ad strategy per segment.
In general, there are two types of triggers that can cause a user's segment to change:
- User behavior
- You can segment users by every action they make inside your app and change the segment dynamically according to each action.
- For example: If a user makes a purchase or subscribes to a service, the user can move from a non-paying to a paying user segment and experience a different ad strategy.
- User location in your app
- You can segment users by the places they visit inside your app to trigger a unique waterfall or ad strategy. This requires you to set up different segments for specific placements in your app and apply unique waterfall or ad strategies to them.
- For example: A user that moves from stage 1 to stage 10 in a game will move from a “New User” segment to an “Advanced User” segment. This would cause the user to experience the unique ad strategy set for the “Advanced User” segment.