Apply different ad settings to users of your app based on user segments. You can easily tailor the way you serve your ads to fit a specific audience and better understand how that audience interacts with those ads, thus helping you improve ad implementation and ultimately generate more revenue for your app.
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.
Revenue breakdowns in the ironSource reporting and mediation management pages do not support segments. This means that you won’t be able to break down revenue and revenue-related KPIs by segments, and you won’t be able to see your mediation management stats on the segment level (only on the instance geo level).
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|
|Gender||Male or Female||–||–||
Male or Female
|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||–||✔||–|
Total In-App Purchases
|ironSource supports up to 5 custom parameters alphanumeric up to 32 letters||✔||–||
Type of in-app purchase, install source, language
- 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
- 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.