---
metadata:
  - name: generator
    content: Diplodoc Platform v5.50.6
alternate:
  - https://ads.yandex.com/helpcenter/en/dev/android/impression-level.md
  - https://ads.yandex.com/helpcenter/ru/dev/android/impression-level.md
  - https://ads.yandex.com/helpcenter/zh/dev/android/impression-level.md
---
> **Documentation Index:** Fetch the complete configuration index at https://ads.yandex.com/helpcenter/en/llms.txt

# Impression Level revenue data (ILRD)



<!-- source: en/dev/_includes/ilrd.md -->
With Impression Level revenue data (ILRD), you can process detailed revenue data. Starting with the Mobile Ads SDK 5.0.0, the SDK provides you with revenue information for each ad impression and information about the advertising network (if mobile mediation is used) that served the ad. This information is provided in real time on the device in the publisher's app. You can handle this data directly or transfer it to a third-party analytics provider.

## What data can be obtained

The following data is available to publishers:

#|
|| **Field**        | **Type**         | **Description**   ||
|| `ad_unit_id`| string      | Unique ad unit ID. ||
|| `adType`    | string       | Ad type:
* Banner ads
* Interstitial ads
* Native ads
* Rewarded ads  ||
   || `currency`  | string    | Ad network currency.      ||
   || `revenue`   | string  | Revenue per impression in the ad network currency. The `currency` field value is used.  ||
   || `revenueUSD`    | string  | Revenue per impression converted to USD. ||
   || `precision` | string  | Accuracy of the `revenue` value. Acceptable values:
* `publisher_defined`: The value taking into account the CPM floor from the mediation interface.
* `estimated`: The value based on auto strategies. ||
   || `network.name` | string   | Name of the network that served the ad (for Yandex Mediation). ||
   || `network.ad_unit_id` | string | Unique ad unit ID in the network that served the ad (for Yandex Mediation). ||
   |#
<!-- endsource: en/dev/_includes/ilrd.md -->

## Enabling ILRD

1. Enable version 5.0.0 or later of the Mobile Ads SDK by following the instructions (Yandex Advertising Network: [Android](https://ads.yandex.com/helpcenter/en/dev/android/quick-start.md), Yandex Mediation: [Android](https://ads.yandex.com/helpcenter/en/dev/android/quick-start-mm.md)).

2. Implement client-side interfaces/protocols for event tracking.

   When implementing the BannerAdEventListener, InterstitialAdEventListener, NativeAdEventListener, and RewardedAdEventListener interfaces, use the `onImpression` method with the `ImpressionData` parameter. The `onImpression` method is called when an impression is counted. The `ImpressionData` asset has a single method, `getRawData`, that returns a JSON string with ILRD.

   {% list tabs %}

   - Kotlin
      ```kotlin
        class ExampleNativeAdEventListener : NativeAdEventListener {
           // ...
           override fun onImpression(impressionData: ImpressionData?) {
               val rawData = impressionData?.rawData
              // ...
           }
           // ...
        }
      ```

   - Java
      ```java
        public class ExampleNativeAdEventListener implements NativeAdEventListener {
           // ...
           @Override
           public void onImpression(@Nullable final ImpressionData impressionData) {
               final String rawData = impressionData.getRawData();
              // ...
           }
           // ...
        }
      ```

   {% endlist %}


