MoPub Android Viewability

This page contains legacy information. Starting from MoPub 5.13.0, the Moat and IAS viewability SDKs have been removed. Viewability tracking logic is no longer operational via these proprietary SDKs.

With the growth of in-app advertising, viewability measurement has become a requirement for marketers who want metrics for and transparency into the viewability of their campaigns. Mobile app publishers who don’t offer a verified way to measure viewability may miss out on ad budgets for which this measurement is a prerequisite — especially from brands. This is why MoPub has partnered with both IAS and Moat to implement their respective measurement SDKs into our MoPub SDK through either GitHub or JCenter.

IAS and Moat

To support viewability and other measurement reporting, MoPub SDK versions 4.16 and higher integrate technology from our partners, Moat, Inc. (“Moat”) and Integral Ad Science, Inc. (“IAS”). As a publisher, you only need to upgrade to version 4.16 or higher of the MoPub SDK (refer to the Android integration guide). You can then remove or disable this technology by following the opt-out instructions below.

If you do not remove or disable IAS’s and/or Moat’s technology in accordance with these instructions, then you agree that IAS’s privacy policy and license and Moat’s privacy policy, terms, and license, respectively, apply to your integration of these partners’ technologies into your application.

Supported Ad Formats

All display and VAST video ads are supported. MoPub will support native ads at a later date.

Integrate Viewability (Opt In)

To take advantage of viewability measurement, simply upgrade to the latest version of the MoPub SDK. Viewability is supported through the MoPub Android SDK on GitHub and JCenter. No additional work is required.

Validate Your Integration

Validate that you have integrated properly by reviewing your device log output. Follow the instructions below. Avid is the IAS library.

  1. Validate that the Moat and IAS SDKs (also referred to as “Avid”) are present. This occurs when the initial ad is loaded in an app session, and only occurs once per app session.

    • D/MoPub: Avid is available via reflection.
    • D/MoPub: Moat is available via reflection.
  2. Banner and interstitial load: validate that the viewability session was initialized and started when an ad is loaded (on ‘load’ event).

    • D/MoPub: viewability event: initialize.
    • D/MoPub: viewability event: start display session.
  3. Interstitial Show (skip for banners): Validate that the viewability session was recorded when an interstitial is shown to the user (on ‘show’ event).

    • D/MoPub: viewability event: record deferred session.
  4. Validate that the viewability session ended. This will be present when the ad is deallocated:

    • D/MoPub: viewability event: end display session.

Opt Out of Viewability Measurement

On MoPub SDK versions 4.16 and higher, where viewability is enabled by default, follow these instructions if you want to disable it in GitHub or JCenter.

GitHub Integration Opt-Out

Navigate to the file in your home directory (for example, ~/.gradle/ and include one or both of these lines to opt out of viewability measurement for the IAS library (also known as “AVID”) and/or Moat.

  • To exclude IAS:

  • To exclude Moat:


JCenter Integration Opt-Out

Normally, to add the MoPub SDK to your app via JCenter, your build.gradle would contain:

    dependencies {
        compile('com.mopub:mopub-sdk:5.X.X@aar') {
            transitive = true

Update to the following to exclude one or both viewability vendors:

     dependencies {
        compile('com.mopub:mopub-sdk:5.X.X@aar') {
            transitive = true
            exclude module: 'libAvid-mopub' // To exclude AVID
            exclude module: 'moat-mobile-app-kit' // To exclude Moat

Note: Moat does not use AndroidX libraries yet. Turn on Jetifier by adding android.enableJetifier=true and android.useAndroidX=true in of your project to avoid app crashes.

Validate Your Opt-Out

You can validate that you have correctly opted out if there are no IAS or Moat logs in the device log output.


You can also receive reporting on your direct campaigns through IAS or Moat if you have direct relationships with either partner. To collect viewability measurement, add the IAS or Moat tags that you received from your partner to the HTML creative in the MoPub UI.

Reporting can be broken out by app, ad unit, line item, creative ID, and other dimensions, by inserting MoPub macros into the IAS or Moat tags. For more information on supported fields, review our list of macros.

To view human-readable names in the Moat or IAS UI, you must provide a mapping of IDs to names to each partner. You can access the IDs and their associated names through the Publisher Reporting API Campaign Report.

Best Practices

  • The MoPub SDK, and therefore our viewability measurement partners, may not fully support custom implementations. In this case, implementations such as custom ad wrappers and custom caching for banners may lead to lower in-view rates. We are working closely with our publisher partners to understand these types of implementations so we can further develop our SDK and standardize these technical approaches. Please keep your account team informed about non-standard implementations that you have integrated.

  • The ad container pixels should be on the screen in their entirety (meaning that no pixels should be cropped by content or beyond the edge of the device screen).

  • Overlays are often used throughout applications to communicate messages to users. Place the overlay in an area that will not cover any ad placements to prevent overlays from impacting viewability measurement. If that is not possible, ensure that banner refresh rates are paused while the overlay is on screen.

  • Favor adhesive/singleton banner placements over implementing multiple ad units that must load each time the user navigates throughout the application. Without integrating the singleton approach, the ad refreshes, and this may cause latency when a user navigates to a new section of the app. This reduces the chance that the user will have the opportunity to see an ad, especially if a user navigates quickly throughout the application.

Viewability FAQ

Do publishers need to have a direct relationship with Moat or IAS to integrate the SDK?


Can I get reporting for my direct campaigns?

Yes. Publishers can receive reporting on direct campaigns if they have direct relationships with Moat or IAS. In order to collect viewability measurement on your inventory, add the IAS or Moat tags that you receive from them to the HTML creative in the MoPub UI. You must have a direct relationship with IAS and/or Moat in order to receive these ad tags and corresponding data from them.

Which demand sources can collect viewability measurement once I integrate the viewability-enabled SDK?

For marketplace, Direct Serve ads, server-side demand, third-party JS networks, and other line items that support an HTML tag, the MoPub SDK can measure campaigns if an IAS or Moat tag is delivered. If publishers have a direct relationship with Moat or IAS, measurement can be collected on all line item types that support HTML tags. These are guaranteed, promotional, non-guaranteed, custom network, and backfill line items.

What dimensions and viewability metrics will buyers be able to see?

Buyers (DSPs, agencies, marketers) can receive standard reporting and data that both Moat and IAS provide to buyers today. This includes metrics such as percent in view, time in view, and measurability. The dimensions on which buyers report depend on the macros they use, either from the MoPub ad server or from their own ad server. Typically, buyers report information on the campaign and where it has served.

Last updated June 15, 2020

TWITTER, MOPUB, and the Bird logo are trademarks of Twitter, Inc. or its affiliates. All third party logos and trademarks included are the property of their respective owners.

© 2020 MoPub (a division of Twitter, Inc.)