This guide shows you how to use the Google Mobile Ads SDK to load and display ads from Moloco using mediation, covering bidding integrations. It covers how to add Moloco to an ad unit's mediation configuration, and how to integrate the Moloco SDK and adapter into an Android app.
Supported integrations and ad formats
The mediation adapter for Moloco has the following capabilities:
Integration | |
---|---|
Bidding | |
Waterfall | |
Formats | |
App Open | |
Banner | |
Interstitial | |
Rewarded | |
Rewarded Interstitial | |
Native |
Requirements
Android API level 23 or higher
Moloco adapter 3.8.0.0 or higher
Latest Google Mobile Ads SDK
Complete the mediation Get started guide.
Step 1: Set up configurations in Moloco UI
Log in to the Moloco Publisher Portal.
Navigate to Overview > Apps tab, then click the Add App button to create a new app.

Select the OS and Privacy Settings for your app, fill out the rest of the form, and then click Create.

Once your app is created, select it from the Apps tab to view the details and take note of the App Key.

Navigate to the Overview > Ad Units tab, select the app from the drop-down menu, and then click New Ad Unit.

Select In-app bidding as the Auction method and fill out the rest of the form. Then, click Create.

Navigate to your newly created ad unit under the Ad Units tab to view its details. Take note of the Ad Unit ID.

Step 2: Set up Moloco demand in Ad Manager UI
Sign in to your Ad Manager account.
Enable secure signal sharing
Navigate to Admin > Global settings. Go to the Ad Exchange account settings tab and review and toggle on Secure signal sharing. Click Save.
Share secure signal on bid requests
Navigate to Inventory > Secure Signals. Under Secure signals, search for Moloco Ads SDK and toggle on Enable app integration.
Click Save.
Allow secure signal sharing for SDK Bidding
Navigate to Delivery > Demand channel settings. In the Default settings tab, toggle on Allow secure signal sharing for SDK Bidding.
Click Save.
Configure Moloco bidding
Navigate to Delivery > Bidders, and click Go to SDK Bidding.
Click New bidder.
Select Moloco Ads as the bidder.
Click Continue to enable SDK Bidding for this bidder.
Click Done.
Configure ad unit mapping
Navigate to Delivery > Bidders, and click Go to SDK Bidding.
Select the company for Moloco Ads SDK.
Go to the Ad unit mapping tab and click New ad unit mapping.
Choose Specific ad unit. Select an ad unit and format, Mobile app as the Inventory type, and your Mobile application. Then, enter App Key and Ad Unit ID obtained in the previous section.
Finally, click Save.
Add Moloco Ads to European and US state regulations ad partners list
Follow the steps in European regulations settings and US state regulations settings to add Moloco Ads to the European and US state regulations ad partners list in the Ad Manager UI.
Step 3: Import the Moloco SDK and adapter
Android Studio integration (recommended)
In your app-level build.gradle.kts
file, add the following implementation
dependencies and configurations. Use the latest versions of the Moloco SDK and
adapter:
dependencies {
implementation("com.google.android.gms:play-services-ads:24.5.0")
implementation("com.google.ads.mediation:moloco:3.12.0.0")
}
Step 4: Implement privacy settings on Moloco SDK
EU consent and GDPR
To comply with Google EU User Consent Policy, you must make certain disclosures to your users in the European Economic Area (EEA), the UK, and Switzerland, and obtain their consent for the use of cookies or other local storage where legally required, and for the collection, sharing, and use of personal data for ads personalization. This policy reflects the requirements of the EU ePrivacy Directive and the General Data Protection Regulation (GDPR). You are responsible for verifying consent is propagated to each ad source in your mediation chain. Google is unable to pass the user's consent choice to such networks automatically.
The Moloco SDK includes the
isUserConsent
flag to pass consent information to the Moloco SDK.
The following sample code shows how to pass consent information to the Moloco SDK. If you choose to set these flags, it is recommended that you do so prior to requesting ads through the Google Mobile Ads SDK.
Kotlin
import com.moloco.sdk.publisher.privacy.MolocoPrivacy
import com.moloco.sdk.publisher.privacy.MolocoPrivacy.PrivacySettings
// ...
val privacySettings = PrivacySettings(isUserConsent = true)
MolocoPrivacy.setPrivacy(privacySettings)
Java
import com.moloco.sdk.publisher.privacy.MolocoPrivacy;
import com.moloco.sdk.publisher.privacy.MolocoPrivacy.PrivacySettings;
// ...
// Moloco does not support setting one flag at a time in Java.
PrivacySettings privacySettings = new PrivacySettings(
/* isUserConsent */ true,
/* isAgeRestrictedUser */ false,
/* isDoNotSell */ false);
MolocoPrivacy.setPrivacy(privacySettings);
See Moloco SDK Android documentation for more information.
US states privacy laws
US states privacy laws require giving users the right to opt out of the "sale" of their "personal information" (as the law defines those terms), with the opt-out offered through a prominent "Do Not Sell My Personal Information" link on the "selling" party's homepage. The US states privacy laws compliance guide offers the ability to enable restricted data processing for Google ad serving, but Google is unable to apply this setting to each ad network in your mediation chain. Therefore, you must identify each ad network in your mediation chain that may participate in the sale of personal information and follow guidance from each of those networks to ensure compliance.
The Moloco SDK includes the isDoNotSell
flag to pass consent information to
the Moloco SDK.
The following sample code shows how to pass consent information to the Moloco SDK. If you choose to set these flags, it is recommended that you do so prior to requesting ads through the Google Mobile Ads SDK.
Kotlin
import com.moloco.sdk.publisher.privacy.MolocoPrivacy
import com.moloco.sdk.publisher.privacy.MolocoPrivacy.PrivacySettings
// ...
val privacySettings = PrivacySettings(isDoNotSell = true)
MolocoPrivacy.setPrivacy(privacySettings)
Java
import com.moloco.sdk.publisher.privacy.MolocoPrivacy;
import com.moloco.sdk.publisher.privacy.MolocoPrivacy.PrivacySettings;
// ...
// Moloco does not support setting one flag at a time in Java.
PrivacySettings privacySettings = new PrivacySettings(
/* isUserConsent */ false,
/* isAgeRestrictedUser */ false,
/* isDoNotSell */ true);
MolocoPrivacy.setPrivacy(privacySettings);
See Moloco SDK Android documentation for more information.
Step 5: Test your implementation
Enable test ads
Make sure you register your test device for Ad Manager.
Verify test ads
To verify that you are receiving test ads from Moloco Ads SDK, enable single ad source testing in ad inspector using the Moloco (Bidding) ad source(s).
Error codes
If the adapter fails to receive an ad from Moloco, you can check the underlying
error from the ad response using
ResponseInfo.getAdapterResponses()
under the following classes:
com.moloco.sdk
com.google.ads.mediation.moloco.MolocoMediationAdapter
Here are the codes and accompanying messages thrown by the Moloco adapter when an ad fails to load:
Error code | Domain | Reason |
---|---|---|
101 | com.google.ads.mediation.moloco | Missing or invalid Moloco App Key. |
102 | com.google.ads.mediation.moloco | Missing or invalid Moloco Ad unit ID. |
103 | com.google.ads.mediation.moloco | Moloco ad object returned was null. |
-1 to 5000 | com.moloco.sdk | Moloco SDK returned an error. See Moloco's documentation for more details. |
Rewarded Server-side verification
If you
Validate server-side verification (SSV) callbacks,
the ad source identifier for Moloco is 8267622065755668722
.
Moloco Android Mediation Adapter Changelog
Version 3.12.1.0 (In progress)
Version 3.12.0.0
- Verified compatibility with Moloco SDK 3.12.0.
Built and tested with:
- Google Mobile Ads SDK version 24.4.0.
- Moloco SDK version 3.12.0.
Version 3.11.0.0
- Verified compatibility with Moloco SDK 3.11.0.
Built and tested with:
- Google Mobile Ads SDK version 24.4.0.
- Moloco SDK version 3.11.0.
Version 3.10.0.0
- Verified compatibility with Moloco SDK 3.10.0.
Built and tested with:
- Google Mobile Ads SDK version 24.3.0.
- Moloco SDK version 3.10.0.
Version 3.9.0.0
- Verified compatibility with Moloco SDK 3.9.0.
Built and tested with:
- Google Mobile Ads SDK version 24.2.0.
- Moloco SDK version 3.9.0.
Version 3.8.0.1
- Added support for medium rectangle banner ad size.
Built and tested with:
- Google Mobile Ads SDK version 24.1.0.
- Moloco SDK version 3.8.0.
Version 3.8.0.0
- Added bidding support for native ad format.
- Verified compatibility with Moloco SDK 3.8.0.
Built and tested with:
- Google Mobile Ads SDK version 24.1.0.
- Moloco SDK version 3.8.0.
Version 3.7.2.0
- Verified compatibility with Moloco SDK 3.7.2.
Built and tested with:
- Google Mobile Ads SDK version 24.0.0.
- Moloco SDK version 3.7.2.
Version 3.7.1.0
- Updated the minimum required Android API level to 23.
- Updated the minimum required Google Mobile Ads SDK version to 24.0.0.
- Verified compatibility with Moloco SDK 3.7.1.
Built and tested with:
- Google Mobile Ads SDK version 24.0.0.
- Moloco SDK version 3.7.1.
Version 3.7.0.0
- Verified compatibility with Moloco SDK 3.7.0.
Built and tested with:
- Google Mobile Ads SDK version 23.6.0.
- Moloco SDK version 3.7.0.
Version 3.6.1.0
- Verified compatibility with Moloco SDK 3.6.1.
Built and tested with:
- Google Mobile Ads SDK version 23.6.0.
- Moloco SDK version 3.6.1.
Version 3.6.0.0
- Verified compatibility with Moloco SDK 3.6.0.
Built and tested with:
- Google Mobile Ads SDK version 23.6.0.
- Moloco SDK version 3.6.0.
Version 3.5.0.0
- Initial release.
- Added bidding support for banner, interstitial and rewarded ad formats.
- Verified compatibility with Moloco SDK 3.5.0.
Built and tested with:
- Google Mobile Ads SDK version 23.6.0.
- Moloco SDK version 3.5.0.