Integrating Unity Ads with Mediation

This guide is intended for publishers who want to use the Google Mobile Ads SDK to load and display ads from Unity Ads via mediation. It covers how to add Unity Ads to an ad unit's mediation configuration, how to set up Automatic data collection, and how to integrate the Unity Ads SDK and adapter into an Android app.

Supported ad formats and features

The Ad Manager mediation adapter for Unity Ads has the following capabilities:

Formats
Banners
Interstitials
Rewarded Video
Native Ads - Custom Rendering
Features
Smart Banners
Automatic data collection

Requirements

  • Android SDK 4.0 (API level 14) or later
  • Google Play services 9.0.0 or later

Step 1: Set up Unity ads

Create and login to your Unity ID. Navigate to your Unity Ads Dashboard and add your project to Unity dashboard by clicking the Add new project button.

Fill out the form and click Continue at the bottom of the page to add your project to Unity Dashboard.

Once your project is created, Unity will display instructions on how to integrate. You can skip these instructions but take a note of the Game ID for Google Play Store and click the OK, Got it! button at the bottom of the page.

Now create a new placement to be used with Ad Manager mediation. We recommend creating a new placement for mediation with Ad Manager even if you have a placement already. To create a new placement, select your project under the Projects tab in your Unity Ads Dashboard. Go to your Android app by selecting Google Play Store under the Platforms tab of your project.

For additional instructions on creating an ad placement, select the tab corresponding to your preferred ad format.

Interstitial

Choose Skippable Video as the type. Enter the placement's Name and Unity Ads will generate your Placement ID based on the name.

Choose whether or not to mute audio for your ads and enter a time in seconds after which the user is allowed to skip the ad. Click Save to create your Placement.

Rewarded Video

Choose Rewarded Video as the type. Enter the placement's Name and Unity Ads will generate your Placement ID based on the name.

Choose whether or not to mute audio for your ads and click Save to create your Placement.

Once the ad placement is created, you can locate your Placement ID under the Ad placements tab.

In addition to the Game ID and the Placement ID you will also need Unity Ads API Key for setting up your Ad Manager ad unit ID. Navigate to the API keys tab in your Unity Ads Dashboard to get your API Key.

Step 2: Configure Mediation Settings for your Google Ad Manager Ad Unit

Sign into your Ad Manager account. Navigate to Delivery > Yield Groups and click the Create Yield Group button.

DFP create yield group button

Enter a Yield Group Name, select your Ad Format, and set the Environment to Mobile App. Under the Targeting section, select the Ad Unit ID to which you want to add mediation.

Next, click the + Add Another Yield Partner button.

If you already have a Yield Partner for Unity Ads, you can simply select it. Otherwise, select Create a new Yield Partner.

Select UnityAds as the Yield partner and enter a unique Name. Check the checkbox for Enable automatic data collection of estimated CPM to optimize Mediation to enable ANO, and enter the API Key obtained in the previous section. Click Save when done.

Once the Yield partner is chosen, select Mobile SDK mediation as the Integration type and Android as the Operating system. Enter the Game ID and the Placement ID obtained in the previous section. Enter a Default CPM value.

Click Save and Activate at the bottom of the page when done.

Using rewarded video ads

In the settings for your rewarded video ad unit, provide values for the reward amount and reward type. Then, to ensure you provide the same reward to the user no matter which ad network is served, check the Override reward settings from third-party ad networks when using mediation box.

If you don't apply this setting, the Unity adapter defaults to a reward of type "" (empty string) with a value of 1. The Unity Ads SDK does not provide specific reward values for its rewarded video ads.

Step 3: Import the Unity Ads SDK and adapter

Add the following gradle dependencies with the latest versions of the Unity Ads SDK and adapter in your app-level build.gradle file:

...
dependencies {
    implementation 'com.android.support:appcompat-v7:xx.x.x'
    implementation 'com.google.android.gms:play-services-ads:17.1.2'
    implementation 'com.unity3d.ads:unity-ads:3.0.0'
    implementation 'com.google.ads.mediation:unity:3.0.0.0'
}
...

Manual integration

Download the latest Unity Ads SDK (unity-ads-3.0.0.aar) from Bintray and add it to your project.

Download the latest version of the Unity adapter from Bintray, and add it to your project.

Step 4: Additional code required

No Additional code is required for Unity ads integration.

Step 5: Test your implementation

Test ads can be enabled from the Unity Ads dashboard by going to your project's platform specific settings. Under the TEST MODE section, toggle the override client test mode switch to on and choose the Force test mode ON to enable test ads.

Unity test mode

Optional steps

Under the Google EU User Consent Policy, you must ensure that certain disclosures are given to, and consents obtained from, users in the European Economic Area (EEA) regarding the use of device identifiers and personal data. This policy reflects the requirements of the EU ePrivacy Directive and the General Data Protection Regulation (GDPR). When seeking consent, you must identify each ad network in your mediation chain that may collect, receive, or use personal data and provide information about each network's use. Google currently is unable to pass the user's consent choice to such networks automatically.

Follow the instructions below to enable or disable personalized ads for Unity Ads.

Unity Ads provides a GDPR Compliance guide that describes both automatic and manual solutions for user consent.

The following sample code shows how to pass consent information to the Unity Ads SDK manually. Should you choose to pass consent information to the Unity Ads SDK manually, it is recommended that this code is called prior to requesting ads via the Google Mobile Ads SDK.

MetaData gdprMetaData = new MetaData(this); gdprMetaData.set("gdpr.consent", true); gdprMetaData.commit();

Send feedback about...

Mobile Ads SDK for Android
Mobile Ads SDK for Android
Need help? Visit our support page.