AdMob Adapter
Before You Begin
Ensure you have an active publisher account on the Bidease Monetize platform.
Prerequisites:
- Minimum deployment target: iOS
13.0 - Minimal Xcode version:
16.4 - Minimal AdMob version:
12
1. Installation
Current published version: 2.2.2.
platform :ios, '13.0'
pod 'BideaseSDK/AdapterAdmob', '2.2.2'
Always use the latest available SDK version from Bidease.
2. Initialization
2.1. Getting your App Key
Your App Key is available in the Bidease Monetize dashboard:
- Log in to your account at monetize.bidease.com
- Go to Applications
- Open the required application
- Copy the App Key

2.2. SDK Setup
Before initializing Google Mobile Ads, configure your Bidease app key:
- Swift
- Objective-C
import BideaseMobileSDK
import BideaseAdapterAdmob
BideaseMediationAdapter.setInitParams(
InitParams(
key: "YOUR_APP_KEY",
privacyParams: PrivacyConfig(/* see Privacy & Consent */),
customProps: ["ipv4": "203.0.113.17"]
)
)
In Objective-C, call one of the setInitParamsWithKey: overloads — the setInitParams: form that takes an InitParams object is not exported to Objective-C.
#import <BideaseAdapterAdmob/BideaseAdapterAdmob-Swift.h>
// Minimal — app key only
[BideaseMediationAdapter setInitParamsWithKey:@"YOUR_APP_KEY"];
// App key + custom props
[BideaseMediationAdapter setInitParamsWithKey:@"YOUR_APP_KEY"
customProps:@{ @"ipv4": @"203.0.113.17" }];
// Full privacy + custom props
[BideaseMediationAdapter setInitParamsWithKey:@"YOUR_APP_KEY"
coppaEnabled:NO
subjectToGdpr:@YES
subjectToCoppa:@NO
usPrivacyString:@"1YNN"
gppString:nil
gppSid:@[ @2, @6 ]
userConsentString:@"consent-string"
subjectToLgpd:@NO
customProps:@{ @"ipv4": @"203.0.113.17" }];
YOUR_APP_KEY with the App Key from your Bidease Monetize dashboard.Only the app key is required. In Swift use BideaseMediationAdapter.setInitParams(InitParams(key: "YOUR_APP_KEY")); in Objective-C use [BideaseMediationAdapter setInitParamsWithKey:@"YOUR_APP_KEY"].
Then initialize AdMob:
- Swift
- Objective-C
import GoogleMobileAds
GADMobileAds.sharedInstance().start()
#import <GoogleMobileAds/GoogleMobileAds.h>
[[GADMobileAds sharedInstance] startWithCompletionHandler:nil];
The Bidease SDK initializes automatically through AdMob's mediation adapter — no separate initialization call is required.
3. Adding Custom Events in AdMob Mediation
Ensure your app and placements are registered in the Bidease dashboard first, with placement names matching exactly.
3.1. Open or create a mediation group
- Visit admob.google.com and click Mediation in the left sidebar
- On the Mediation groups tab, click Create mediation group (or open an existing one)
- Set the Name, Ad unit format (Banner, Interstitial, or Rewarded), Platform (iOS), and Segmentation, then add the relevant Ad units under the Ad units section
3.2. Add a custom event
- Under Ad sources → Waterfall, click Add custom event
- In the Add custom event dialog:
- Enter
Placement_Name (Mapping Name)— Placement_Name is the placement registered in the Bidease dashboard; Mapping Name is the value used in step 7 below (e.g.,interstitial_ecpm_10.0) - Set Manual eCPM to the floor price of the placement in USD
- Enter
- Click Continue
3.3. Map the custom event
- In the Map ad units dialog, click Add or edit mappings, then Add mapping and fill in:
| Field | Value |
|---|---|
| Mapping name | adformat_ecpm_X.X — where adformat is banner, interstitial, or rewarded and X.X is the floor price (e.g., interstitial_ecpm_10.0) |
| Network eCPM | Floor price of the placement (must match the value in Mapping name) |
| Class Name | BideaseMediationAdapter |
| Parameter | Same value as Mapping name |
- Save the mapping, select it for each AdMob ad unit in the group, then click Save on the mediation group
Create multiple custom events with different floor prices for the same ad format to optimize waterfall performance.
4. Privacy & Consent
Privacy signals and custom props are passed to the Bidease SDK via InitParams at initialization. Set them when you initialize the SDK, or update them at runtime via BideaseMobile.setPrivacyParams(...) / setCustomProps(...).
Not for child-directed traffic. Bidease does not purchase or monetize traffic from applications directed to children or to individuals under the age of 13. Publishers are solely responsible for identifying child-directed inventory under COPPA and other applicable laws and must not integrate the Bidease SDK into, or send any traffic or personal data from, such inventory.
import BideaseMobileSDK
let privacyParams = PrivacyConfig(
coppaEnabled: false,
subjectToGdpr: true,
subjectToCoppa: false,
usPrivacyString: "1YNN",
gppString: "DBACNYA~CPXxRfAPXxRfAAfKABENB-CgAAAAAAAAAAYgAAAAAAAA~1YNN",
gppSid: [2, 6],
userConsentString: "CPXxRfAPXxRfAAfKABENB-CgAAAAAAAAAAYgAAAAAAAA",
subjectToLgpd: true
)
| Field | Type | Description |
|---|---|---|
coppaEnabled | Bool? | Enable COPPA compliance |
subjectToGdpr | Bool? | Subject to GDPR |
subjectToCoppa | Bool? | Subject to COPPA |
usPrivacyString | String? | IAB US Privacy string (e.g. "1YNN") |
gppString | String? | IAB GPP consent string |
gppSid | [Int]? | GPP section IDs |
userConsentString | String? | IAB TCF consent string |
subjectToLgpd | Bool? | Subject to Brazilian LGPD |
5. SKAdNetwork IDs
The Bidease SDK supports SKAdNetwork so partner networks can attribute installs when IDFA is unavailable. Add the SKAdNetworkItems entry to your Info.plist:
- In Xcode, select Info.plist in the Project navigator.
- Right-click Info.plist → Open As → Source Code.
- Copy the SKAdNetworkItems array from the file below and paste it into your Info.plist.
6. Test Mode
Option 1: Enable via Code
pod 'BideaseSDK/AdapterAdmob', '2.2.2'
pod 'BideaseSDK/TestMode', '2.2.2'
Option 2: Enable via Dashboard
- Go to Applications and open the required app
- Navigate to Test Devices and add the devices you want to test on — use IDFA (iOS)
- Enable Test for the application
7. QA Checklist
- Test Mode provides nearly 100% fill — expected behavior for QA only.
- Disable Test Mode before submitting your app to the App Store.
- Ensure IDFA tracking is enabled on your test device so the Bidease team can review logs.
- If you run into any issues, contact your Bidease account manager.