User segments allow you to optimize the user experience and maximize engagement in your app through customizable monetization strategies. 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.
The ironSource segments tool helps you create these dynamic groups, control their ad journeys, and get valuable insights on revenue and engagement so you can continuously improve your strategy.
To serve ads based on segments, you’ll need to set up the segment by defining its conditions and your preferred ad settings for the user segment on the ironSource platform and then configure segments in your code. Follow these instructions to get started.
Step 1. Navigate to the Segments Module
To tailor your ad settings to a specific audience, you’ll need to define these users as segments. Go to Segments on the left menubar on your ironSource account:
On this page, you will see the existing ad units and placements for your app. Once you define a segment, you will be able to customize the ad settings (i.e. placements, reward, capping, pacing, etc.) for these ad units.
Step 2. Define the Segments
Click on ‘New Segment‘ to add a segment for this app:
You will be directed to the Segment Settings page where you can create segment based on conditions to categorize your users. To begin, name your Segment and choose the conditions a user must meet to belong to this segment. A segment can be comprised of up to 10 conditions.
ironSource supports the user properties described below; some of these are collected by the ironSource SDK while others must be sent to our servers through the API. You can also create up to 5 custom user properties and pass them in the API. Follow these instructions on how to inform us of the user’s details:
Supported User Properties
|User Property||Limitation||Wildcards||Data Collected by the SDK||Example|
|Country||Select from given list of 246+ countries||–||✔||Germany|
|App Version||up to 32 characters||✔||✔||4, 5, 2006|
|SDK Version||up to 32 characters||✔||✔||6.3, 6.4.1|
User Creation Date
|Cannot be smaller than 0||–||–||2017-08-15|
|up to 32 characters||✔||✔||WIFI, cellular|
|Device Model||up to 32 characters||✔||✔||
iPhone 6 Plus, LG G5, Samsung Galaxy S7
|up to 32 characters||✔||✔||
Samsung, Apple, Nokia, HTC, OnePlus
OS Version (IOS only)
|up to 32 characters||✔||✔||10.0.1, 5.0.2|
API Level (Android only)
|up to 32 characters||✔||✔||1, 5, 21|
|Level||up to 32 characters||–||–||10|
|Paying User||True or False||–||–||–|
|IDFA||True or False||–||✔||–|
|COPPA||True or False||–||✔||–|
Total In-App Purchases
|ironSource supports up to 5 custom parameters alphanumeric up to 32 letters||✔||–||
Type of in-app purchase, install source, language
|Gender||Male or Female||–||–||
Male or Female
- Age: The user’s age
- Gender: The user’s gender
- Country: The user’s country
- App Version: The user’s app version
- SDK Version: The ironSource SDK version within the user’s installed app
- User Creation Date: The date the user installed the app
- Connection Type: The user’s network connection type
- Device Model: The series the user’s device model belongs to
- Device Manufacturer: The user’s phone manufacturer
- OS Version (IOS only): The operating system version on the user’s device
- API Level (Android only): The API level on the user’s device
- Level: The game level reached by the user on your app
- 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
- IDFA: True if the device has allowed IDFA tracking, False if the device refused IDFA tracking
- COPPA: Based on the COPPA SDK Functionality to flag specific end-users who have indicated that they are below the age of 13. Learn more here
- Total In-App Purchases: The total amount of money that the user has spent on in-app purchases
- Custom Parameters: Additional data you would like to use for segmentation
In addition to user and custom properties, you can also set a Custom Segment as a condition and inform us when a user is a part of this segment without providing individual user details. These users will be served ads as defined for the segment on the ironSource platform.
ironSource supports wildcards for user properties that are of type string. Wildcards are single character placeholders that can be used to stand in for a number of characters in a text value. ironSource supports three standard wildcards: asterisk (*), comma (,) and question mark (?).
The ‘*‘ placeholder matches any number of characters and must be placed before or after the value. We do not support consecutive asterisks, i.e. **.
- Question mark
The ‘?‘ placeholder matches a single character and can be placed anywhere in the value (before, in the middle or after). We support consecutive question marks to stand in for multiple characters, i.e. c??p to represent comp, coup, clip.
The ‘,‘ placeholder allows for a list of comma separated values in the string and functions as an OR operator. We support up to 5 comma separated values, i.e. iPhone 4S, iPhone 6, Galaxy S4, Nexus 4, HTC One.
Step 3. Adjust Ad Unit Settings
To tailor the ad experience for the segment, you’ll need to define exceptions to your existing ad settings. If you choose to keep the Segment Ad Settings as is, you will simply serve ads as configured on the Ad Units page.
By adjusting the placement’s ad settings, you are creating an exception to the existing ad settings for this segment.
- Customize the reward amount per placement. For example, you’d like to grant Women Who Work (female users aged 18-70) with double the usual reward.
- Limit the amount of ads you serve per placement by adjusting the capping and pacing settings.
- Capping controls the number of ads you serve for the selected placement
- Pacing controls the time interval between ads for the selected placement
Step 4. Review Your Ad Settings’ Exceptions
The page shows you the default ad units below the segment details; namely the Segment Name, the relevant placement and the defined exceptions to your existing ad settings.
If you create more than one segment, you can prioritize the ad settings by arranging the segments in the order of your preference. Thus, if you have a user that belongs to two segments, we will ensure to serve the ad with the ad settings from the segment in higher priority.