Ad revenue measurement via SDK postbacks
The Ad Revenue Measurement (ARM) via SDK postbacks solution provides impression-level data for ironSource and other mediated networks, using the ironSource SDK. This is an alternative to consuming the ARM data, and is added to the ARM API request. Developers can integrate ARM via API, via SDK postbacks, or both.
Using ARM via server side API provides data with a 1 day delay. Using the ARM via SDK postback enables real-time ARM data immediately once the ad is shown, and allows integration of the app’s impression data with 3rd party reporting tools or proprietary optimization tools and databases.
ARM via SDK postbacks is supported from SDK 7.0.3+ for Android, iOS and Unity, and is provided only when bidding instances are included as part of the waterfall.
How to enable ARM via SDK postbacks
- Ensure that you have integrated ironSource SDK 7.0.3+ and that you have at least one bidder instance in your waterfall.
- Activate the ARM flag in the ironSource platform
- Register to ironSource impressionData Listeners
Step 1: Integrate ironSource SDK
Integrate ironSource SDK 7.0.3+:
Step 2: Activate the ARM SDK Postbacks flag in the ironSource Platform
Activate platform flag under ‘My Account’ → ‘API’
Step 3: Register to ironSource Listener
The ironSource SDK fires several events to inform you about impression data. This listener is optional, and you should use it only as part of the ARM implementation process. This listener will provide you information about all ad-units, and you’ll be able to identify the different ads, using the ARM data.
For more information:
ARM data fields
The ARM data is returned as part of the ImpressionData object. Here’s a list of the relevant data fields, including description and type.
Parameter Name | Description | Data Type |
auctionId | Unique identifier for the auction | String |
adUnit | The ad unit displayed (Rewarded Video/Interstitial/Banner) | String |
adNetwork | The ad network name that served the ad | String |
instanceName | The ad network instance name as defined on the platform. For bidding sources, the instance name will be ‘Bidding’ | String |
instanceId | Identifier per network, this includes the ad network’s instanceID/placement/zone/etc. |
String |
country | Country code ISO 3166-1 format | String |
placement | The placement the user is related to | String |
revenue | The revenue generated for the impression (USD). The revenue value is either estimated or exact, according to the precision (see precision field description) | Double |
precision | The source value of the revenue field: BID – The revenue provided as part of the real-time auction (Not supported by FAN bidders) RATE – manual price the publisher assigned to an instance in the ironSource platform CPM – Calculation based on historical instance performance, performed by ironSource platform |
String |
ab | Indication if A/B test was activated via ironSource platform | String |
segmentName | The segment the user is related to as defined based on the segmentation method | String |
lifetimeRevenue | The accumulated value of the user ad revenue | Double |
encryptedCPM | Relevant for ads provided by Facebook Audience Network only, and will be reported to publishers approved by Facebook Audience Network within the closed beta | String |
How to use ARM data within your application
After integrating ironSource SDK 7.0.3+ and implementing the listeners and callbacks, you can process the relevant data. The impressionData will be returned to you as part of the callback information, on impression success (ad was displayed correctly). The ImpressionData includes easy-access APIs to get each field separately, or an allData API, that returns a Json-represented string.
For more information: