SEA Playbook-2023Q4

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 191

OfficeHour

SEA PLAYBOOK

Updated Q4 2023
Owner: Frankchenhua@
Proprietary + Confidential

ADMOB WEBINAR

Playbook Agenda

1. Starter Checklist
2. Market Report/Insights
3. Formats & Best practices
4. Admob Mediation & Platform Update
5. Showrate/Match Rate Optimization
6. Common Policy Clarifications
7. Quality & Rising Stars (Play)
8. Billing/Payment Profile Shift
9. Privacy Updates
10. Troubleshooting guide for common issue
Proprietary + Confidential

Starter Checklist
What does AdMob offer?

Demand
Publisher Brand Segmentation
Diversity and
Safety and targeting
Strength

Direct Deals and


Unique formats UA Capabilities
Cross promotion

Linking and Setup and


Platform testing
reporting navigation

and more!
Confidential + Proprietary
Demand Diversity and Strength
Offering What is it? External Links

AdMob offers 28 bidding sources that can be integrated


AdMob bidding Ad sources that support AdMob bidding
via the UI

SDK Required bidding sources 7 bidding sources currently require a 3p SDK to enable SDK Required bidding sources

21 SDK-less bidding sources are available to enable within


SDK-less bidding sources List of SDK-less bidding sources
AdMob

AdMob also offers access to 200+ DSPs as part of


Other demand
AdMob Network demand

AdMob offers 23 ad sources which can be enabled in the


Waterfall ad sources Ad sources available for waterfall mediation
waterfall

Custom Events integrate networks not supported in the Setting up custom events in AdMob
Custom Events
UI into your mediation setup using custom parameters

Google automatically reorders the waterfall based on Ad Network Optimization Setup


Ad Network Optimization
historical data for a 3p ad source Ad Networks that support optimization

Click to Accept contracting within Begin contracting with 3p networks without leaving the Bidding partners that offer contracting within
AdMob UI AdMob UI for faster turnaround times AdMob

Confidential + Proprietary
Publisher Brand Safety
Offering What is it? External Links

Search creatives in the Ad Review Center by keywords,


Ad Review Center search Using the Ad Review Search
network, ad response id, and image

Use the Ad Review Center to review ads and block any


Review and block ads Reviewing and blocking ads
you do not want serving on inventory
Use the Ad Review Center to find related ads which are
Find and block related ads considered related if they have a similar destination Finding related ads
page, or are connected by a similar subject

Correctly setup your app-ads.txt and ensure that your Setting up app-ads.txt in AdMob
App-ads.txt and troubleshooter
page is crawlable using our troubleshooter App-ads.txt troubleshooter

Publishers can opt in to share their seller information in


Sellers.json the file. This gives advertisers a reliable way to discover Setting up sellers.json
and verify the identity of publishers.
You can prevent ads from specific categories from
Category blocking (General and showing up in your apps. Our system classifies ads General category blocking
Sensitive) automatically and we don't rely on advertiser-provided Sensitive category blocking
categorization.

Confidential + Proprietary
Segmentation and targeting
Offering What is it? External Links
Setting the Ad Content Rating at app and
You can set the maximum ad content rating for a specific
account level
Ad Content Rating app, your entire account, or ad request within the AdMob
Setting Ad Content Rating at request level
user interface to ensure appropriate ads.
Android iOS Unity
Segmentation for Mediation groups by
Choose the targeting for your mediation groups based
Platform (iOS vs. Android), Format, Setup AdMob targeting within mediation groups
on request dimensions
IDFA vs. non-IDFA, country
Content mapping for apps enables you to deliver
contextually relevant ads to your users and helps ensure
Content Mapping Setting up content mapping in AdMob
ads are placed near content that’s suitable for your
advertisers.

Frequency capping at an ad unit and Frequency capping lets you limit the number of times ads Setting up app and ad unit level frequency
app level appear to the same person. capping

An ad unit’s automatic refresh rate determines how often


a new ad request is generated for that ad unit. You may
Refresh Rates for banner and native Setting refresh rates in AdMob
also set a custom refresh rate of 30-120 seconds or
disable refresh rate completely.

Confidential + Proprietary
Performance Test and Platform Migration
Offering What is it? Links
Pull performance information for your AdMob setup
Reporting API Developer Documentation
across a number of dimensions and metrics
Manage your AdMob setup programatically including
Platform Management API creating apps and ad units and modifying mediation Developer Documentation
groups and ad unit mappings
Quickly and easy test your AdMob mediation and bidding Creating A/B tests
Mediation A/B Testing
setup using the UI Analyzing A/B Tests
Receive information about the loaded ad including
Detailed response info mediation adapter, ad response id, latency and other Android iOS Unity
information
An in-app overlay that enables authorized devices to
Ad Inspector perform real-time analysis of test ad requests directly Android iOS
within a mobile app with no coding required.
Use test ads to check your AdMob implementation and
Test Ads Android iOS Unity
test devices to test with production ads
Manage test devices within the UI and add device
Test device management within the UI Setting up test devices in the UI
gestures to enable Ad Inspector

Confidential + Proprietary
Linking and reporting
Offering What is it? External Links
Link your AdMob app(s) to Firebase so that you can use Linking your apps to Firebase
Linking to Firebase
your linked Google Analytics account data in AdMob.
Enabling user metrics will give you access to new data and
User Metrics powerful reports that may help inform your monetization Enabling user metrics
strategy.
AdMob insights detects anomalies in your account and
notifies you about deviations in key business metrics.
Using the AdMob insights card to detect
AdMob Insights Insights can help you identify changes to make in your
anomalies
underperforming apps and identify successes in your
outperforming apps.
The variety of reports in AdMob allows publishers to AdMob Network Report
User Activity, Bidding, Mediation, AdMob analyze any part of their ad monetization strategy from Mediation Report
Network reports eCPM to user activity. The Serving Restriction dimension User Activity Report
allows publishers to analyze NPA traffic. Bidding Report
Linking your app to a supported store is an important step
Linking to app stores Linking your app to a store
in your app readiness process.
See account and app performance at a glance without
App and account overview Using the app and account overview
building additional reports
As long as you use the Google Mobile Ads SDK, you don't
SDK collected user data need to write any additional code to collect a number of Dimensions collected by the GMA SDK
user properties automatically.

Confidential + Proprietary
Direct deals and cross promotion
Offering What is it? External Links
Impression and click goals for direct Setup specific goal types based on number or
Choosing the right campaign goal type
sold and cross promotion campaigns percentage of clicks or impressions
Set up your campaign line items with mediated eCPMs to
Mediated campaign line items Selecting the Mediated Campaign goal type
serve within your mediation setup
Limit the number of impressions served by direct sold or
Frequency Cap Campaigns Setting frequency capping on campaigns
cross promotion campaigns at a campaign level
AdMob campaigns support a wide range of ad types
Supporting Text, Image, Video, HTML5, including Responsive Display Ads which automatically
Finding the right ad type for your campaigns
Responsive Display Ad creative types adjust their size, appearance, and format to fit available
ad formats.

Confidential + Proprietary
UA capability - ROAS measurement & optimization
Offering What is it? Links
iLTV pingback allows impression level LTV as part of the
Calculating LTV using Paid Events via ad response which can be aggregated to calculator user Understanding Life Time Value
iLTV Pingback level LTV. Integration with 3p AAPs including Adjust is Android iOS Unity
simple
Use the cohort report to gain insight into how your users
Cohort Report are behaving and being monetized since installing your Using the Cohort Report
app.

Confidential + Proprietary
AdMob setup and navigation
Offering What is it? External Links
Change history provides you with an overview of
historical changes to your account. It includes details
Change history Change history within AdMob
such as when and where the change was made and who
made it.
Manage user roles within AdMob, rather than AdSense,
User Management and set up your organization to ensure everyone has the Setting up user management
correct access
The AdMob Multiple Customer Management (MCM) tool
Multiple Customer Management lets you manage your clients’ AdMob accounts with the Using MCM within AdMob
same visibility and control as the publishers themselves.
Your AdMob account has maximum limits on areas like
the maximum number of active ad units you can have.
AdMob account limits While you'll likely never notice them, keep these limits in AdMob account limits
mind when planning monetization, campaigns, and
mediation in AdMob.

Confidential + Proprietary
Formats
Offering What is it? External Links
App open ad units appear when the user opens your app App Open Overview
App Open or switches back to your app. App open ad units appear App Open Guidance
on the loading or splash screen. Android iOS Unity
Banner ad units display rectangular ads that occupy a
Adaptive banner; Collapsible Banner; portion of an app's layout. They stay on screen while
Landscape adaptive banner; Exit users are interacting with the app, either anchored at the Android iOS Unity
Banner; top or bottom of the screen or inline with content as the
user scrolls.
Rewarded interstitial is a new type of incentivized ad
format that allows you to offer rewards, such as coins or Using Rewarded Interstitial
Rewarded Interstitial
extra lives, for ads that appear automatically during Android iOS Unity
natural app transitions.
Native ads match the look and feel of your site or app
Native Advanced; Full Screen Native Android iOS Unity
and provide a better user experience for your visitors.
Interstitial ads are full-screen ads that cover the interface
Interstitial Android iOS Unity
of their host app.
Rewarded ads are ads that users have the option of
Rewarded Android iOS Unity
interacting with in exchange for in-app rewards.

Confidential + Proprietary
Opt-in to revenue and performance growth tips
AdMob:

● Steps: Login to AdMob > Account> Settings > Email preferences > Tick on "Customized help and performance suggestions" > Save
● GIF

AdManager: Steps: AdMin > Access & Authorization > Select user > Under Notification settings turn toggle on for "Optimization tips, best
practices etc."

● GIF

AdSense: Steps: Click Account > Personal settings > In "Email preference" section, select "performance suggestions" > Click Save"

● GIF

Confidential + Proprietary
Proprietary + Confidential

Market
Report/Insights
Q3 Ads Growth by category
Q3 Top Genres and YoY Growth

Gaming Non-Gaming

Category Q3 YoY Top Market Category Q3 YoY Top Market

Casual Games -3.32% United States Network Connectivity 51.28% United States

Puzzle Games 2.03% United States Calling & Messaging -3.55% United States
Weather 16.72% United States
Card Games -8.46% United States
News & Magazines -15.68% United States
Word Games 2.76% United States
News Aggregators 34.44% United States
Action Games -27.47% United States

Simulation Games -0.11% United States Painting & Drawing -3.61% United States
Barcode Scanners -4.68% United States
Sports Games -6.15% United States
TV & Movies 25.93% United States
Racing Games -22.71% United States
Caller ID -14.64% India
Role Playing Games 0.52% United States
Photo Editors -7.78% United States
Board Games -16.36% United States

* Source: Internal Google Data


Sorted in descending order of Ads Revenue in Q3
Q3 IAP + Ads Rev Growth by category
Q3 Top Genres and YoY Growth

Gaming Non-Gaming

Category Q3 YoY Top Market Category Q3 YoY Top Market

Casual Games 27.40% United States Photo & Video Sharing 28.89% United States

Role Playing Games -8.21% Japan TV & Movies 4.24% United States

Strategy Games -34.30% United States Meet New People 22.40% United States

Action Games -32.10% United States Comics & Manga 30.74% Japan

Casino Games 8.50% United States Music Streaming -1.20% United States

Simulation Games -1.52% United States Photo Editors 40.20% United States

Puzzle Games 17.82% United States Storage & Backup 52.67% United States

Card Games 1.52% United States Calling & Messaging 10.77% United States

Sports Games 37.02% Japan Language Learning 44.20% United States

Board Games 279.72% United States Sports & Recreation 16.34% United States

* Source: Internal Google Data & AppAnnie


Sorted in descending order of IAP + Ads Revenue in Q3
Q3 Downloads growth by category
Q3 Genres and Top Market (sorted by Q3 YoY downloads growth)

Gaming Non-Gaming

Category Q3 YoY Top App Category Q3 YoY Top App

Threads, an Instagram app


Dice Games 15.01% Dice Dreams
- 22855523957 - Instagram
Casino Games 4.14% RummyCircle Real Cash Rummy Microblogging 285.07% - 33
Chat GPT Voice: Open AI
Words of Wonders: Kelime Accessibility Tools 137.45% Bot
Word Games 2.79% Oyunu
Holidays & Special Occasions 115.34% Santa Call
Card Games 2.21% Solitaire Genie - Mindblowing
Science 71.05% Answers
Sports Games 1.14% Football League 2023
Flashlights 69.88% Nháy đèn cuộc gọi đến
Board Games -1.06% Ludo King
Diary with Lock: Daily
Brain Training Games -5.22% Impulse - Beyin Egzersiz Personal Diaries & Journals 57.92% Journal
大麦网-中国领先票务平台,
Music Games -8.65% Magic piano
提供演唱会、话剧、电影等各
Trivia Games -9.98% Akinator Events & Ticketing 46.91% 类门票

Equalizers & Bass Boosters 39.09% Equalizer Pro


Games -12.16% Google Play 게임즈
Travel 34.64% 携程-酒店•机票•旅游旅行
* Source: AppAnnie
** Top App: By download volume 썸원 Sumone - 커플
Sorted in descending order of YoY Downloads Growth % Romance & Relationships 34.46% 다이어리
Proprietary + Confidential

Formats Best
Practices
Proprietary + Confidential

Adaptive Banner
Adaptive anchor
Proprietary + Confidential
examples Standard (non-adaptive) Smart Banner Adaptive Banner
Banner Full Screen Width (360) Slot size 414x65
Slot size 320x50 50 Height Ad size 414x65
Ad size 320x50
Adaptive in-line examples
Proprietary + Confidential

1 - Standard 300x250 2 - Adaptive 414x345 3 - Adaptive Small 414x65


Proprietary + Confidential

Implementation
references Follow the steps below to implement a simple adaptive anchor banner.

1. Create an AdView object and set your ad unit ID.


2. Get an adaptive banner ad size. The size you get will be used to request your
adaptive banner. To get the adaptive ad size, make sure that you:
1. Get the width of the device in use, or set your own width if you don’t want to
use the full width of the screen.
2. Use the appropriate static methods on the ad size class, such as
AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(conte
xt, width) to get an adaptive AdSizeobject for the chosen orientation.
3. Set the ad size on the banner ad view—do this using AdView.setAdSize().
A full example is included below.
3. Create an ad request object and load your banner using the loadAd() method on
your prepared ad view, just like you would with a normal banner request.

Additional Resources requirements


● Documentation for iOS and Android
● Ad Manager documentation for iOS and Android
AdMob UI

Unless conducting an AB test between ad formats, do not create a new ad unit.


How to migrate
smart banner to Instead, use the existing Banner ad unit ID to implement an Adaptive Anchored or In-line Banner
adaptive Banner within your code. For ease of reference, rename the smart banner ad unit in the AdMob UI to specify
it is now being implemented as an Adaptive Banner.

App-side Code

Remove or comment out any Smart Banner implementation code. Then, follow these steps to
create a simple Adaptive Banner in its place:

1. Create an AdView object and set your ad unit ID (or use a test ad unit ID).

2. Get an adaptive banner ad size. The size you get will be used to request your adaptive banner. To get
the adaptive ad size, make sure that you:
a. Get the width of the device in use, or set your own width if you don’t want to use the full width of
the screen.
b. Use the appropriate static methods on the ad size class, such as
AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(context, width) to get an
adaptive AdSizeobject for the chosen orientation.
c. Set the ad size on the banner ad view using AdView.setAdSize().
3. Create an AdRequest object and load your banner using the loadAd() method on your prepared
ad view, just like you would with a normal banner request.

For more information, review our implementation guide: Banner Ads | Android | Google Developers
Proprietary + Confidential

Adaptive banner ads in


landscape mode
Proprietary + Confidential

Key benefits of implementing adaptive banners in landscape mode

+20%*
expected eCPM increase when replacing traditional banner units
with adaptive banners in horizontal layouts

Increased revenue Better user experience


Increased revenue with an increased App users can experience a better UX within the app as the ad
eCPM, with improved performance is customized and expands to a more visually effective size.

*While improved performance is expected, every implementation is unique and so the uplift is not guaranteed
Proprietary + Confidential

Implementing customized adaptive banners (at top)

Sharp Stock 4.5 Free


150 5 Create your profile now! Google Play
Install

Levels

tracks

Garage

Controls Play
Proprietary + Confidential

Implementing customized adaptive banners (at bottom)

150 5

Days

Daily Reward

Levels

tracks

Garage

Sharp Stock 4.5 Free

Create your profile now! Google Play


Install Play
Proprietary + Confidential

CASE STUDY

NiBG grows eCPM by 200% with


customized adaptive anchor banners
““We implemented custom
banner (Top Right) and are
Nightingale Business Group (NiBG) is one of the large Mobile Content Publisher with millions of
monthly active users. NiBG team of experts are of diverse backgrounds with expertise in art, design, getting a huge difference in
mathematics, writing, content creation, programming and engineering – all driven by one unwavering
mission: to deliver quality & value by generating flexible software solutions. eCPM. The custom banner
The challenge eCPM is more than 200%
Banner ads has a huge share of revenue in their games; The team believed they could further improve eCPM by greater than the default banner
optimizing the UI layout and banner size
size (320x50).
The approach FPO
We are going to implement this
NiBG implement a simple line of code from our developer guide site to customize the width of their adaptive banner
change in all our games.”
to fit into their UI.
-Tariq Manzoor,
CEO, NiBG
The results

200% Sustained
Boost in eCPM for their
User engagement
customized banner and retention
Proprietary + Confidential

[Android] Implementing custom landscape adaptive banners

1. Determine the screen width (less decorations) to use for the ad width
private AdSize getAdSize() {
WindowMetrics windowMetrics = getWindowManager().getCurrentWindowMetrics();
Rect bounds = windowMetrics.getBounds();

float adWidthPixels = adContainerView.getWidth();


3. Create an ad request and load the adaptive banner ad
// If the ad hasn't been laid out, default to the full screen width.
if (adWidthPixels == 0f) { AdRequest adRequest =
adWidthPixels = bounds.width(); new
} AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
.build();
float density = getResources().getDisplayMetrics().density;
int adWidth = (int) (adWidthPixels / density); // Start loading the ad in the background.
adView.loadAd(adRequest);
return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth);
}

2. Get AdSize and set the ad view


AdSize adSize = getAdSize();
adView.setAdSize(adSize);

Resource: Adaptive banner implementation (Android)


Proprietary + Confidential

[iOS] Implementing custom landscape adaptive banners

1. Determine view width


let frame = { () -> CGRect in
// Here safe area is taken into account, hence the view frame is used
// after the view has been laid out.
if #available(iOS 11.0, *) {
return view.frame.inset(by: view.safeAreaInsets)
} else {
return view.frame
}
}()
let viewWidth = frame.size.width

2. Get Adaptive GADAdSize and set the ad view


bannerView.adSize = GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(viewWidth)

3. Create an ad request and load the adaptive banner ad


bannerView.load(GADRequest())

Resource: Adaptive banner implementation (iOS)


Proprietary + Confidential

[Unity] Implementing custom landscape adaptive banners

1. Get the AdSize that uses full screen width


AdSize adSize = AdSize.GetCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(AdSize.FullWidth);

2. Create a BannerView instance


// Create a banner anchored at the bottom of the screen
BannerView banner = new BannerView(AD_UNIT_ID, adSize, AdPosition.Bottom);

3. Load an ad
AdRequest request = new AdRequest.Builder().Build();

// Load a banner ad.


banner.LoadAd(request);

Resource: Adaptive banner implementation (Unity)


Proprietary + Confidential

Implementation Policy implications


details & policy

1. Pubs must ensure that there is sufficient pixel space between


the game buttons and banner ads
2. Banners must NOT overlap clickable elements or essential
text/titles on the screen. This ensures that users of the app
can clearly comprehend the screen's content and not trigger
the accidental clicks.
3. Do not implement during gameplay or splash screen
Proprietary + Confidential

Banner ads
on splash screen
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

What is banner ad on the splash screen?

● New banner ad placement that occupies a part


of the splash screen, not more than 40% of the
screen estate

● Easy to implement as it is the same as creating


an adaptive banner ad unit but for a different
placement slot

● Banner ad on the splash screen can be


anchored to either top or bottom of the
screen.

● Currently supports image, rich media, and


video ads
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

Sample User Flow

Banner Ad shows on Home Screen appears


User clicks on the app
Splash Screen User can start exploring the app!
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

Key benefit of banner ads on the splash screen

● Easy to Implement: Use existing Banner ad format


■ Easy to maintain
■ Same demand as banner ads
■ Works with Adaptive Banners as well

● Unlocking new placement: This gives an opportunity to unlock a new placement opportunity for ads while
keeping the branding (name, logo, full page color theme) of the app intact on a large part of the screen thus
ensuring a better UI experience and brand recall
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

Who should implement banner ads on the splash screen?


● Any partner who wishes to monetize the cold start splash screen of an app/game
● Publishers who do not want to show a full-screen ad experience at the very beginning and are currently NOT
using App Open Ads on cold start of the app. As an alternative Splash Banner, a partial screen ad can be
shown that will not interfere with their branding at the beginning.
● Relevant for both Gaming and Non-Gaming apps

Where should you implement banner ads on the splash screen?


● Ad should be placed on the very first screen on top of the splash screen which has the name, logo and other
branding elements, before the Home Page
● DO NOT REPLACE existing App Open ads with Splash Banner as it will lead to revenue downside since App
Open is a better eCPM format compared to Banner ads
● If App Open is placed for background to foreground instance & not on cold start, Splash Banner can be used
for cold start Splash screen
Proprietary + Confidential

Policy for banner ads on the splash screen

It will be guided by the same policy as available for Banner Ads. Care should be taken to balance the ad
density to ensure there aren’t “More ads or paid promotional material than publisher-content”

Mediation Support for banner ads on the splash screen

Mediation support for banner ads on the splash screen will be the same as regular banners. Networks
supported will be the same as regular banners or adaptive banners. Please check the following link to find out
which networks are being supported for AdMob/ Ad Manager banners.

Implementing banner ads on the splash screen


● Currently, banner ads on the splash screen can only be requested from a Banner Ad (Admob, AdManager)
● Publishers should not hold the users for more than 5 seconds (3-5 seconds recommended) on the splash
screen.
● Banner ads on the splash screen can be anchored to either top or bottom of the screen. The following
sample code in the next slides shows the example of top of screen placement.
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

Implementing banner ads on the splash screen - Android code sample

1. Determine the screen width (less decorations) to use for the ad width

private AdSize getAdSize() {


WindowMetrics windowMetrics = getWindowManager().getCurrentWindowMetrics();
Rect bounds = windowMetrics.getBounds();

float adWidthPixels = adContainerView.getWidth();


3. Create an ad request and load the adaptive banner ad
// If the ad hasn't been laid out, default to the full screen width.
if (adWidthPixels == 0f) { AdRequest adRequest =
adWidthPixels = bounds.width();
new AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
}
.build();
float density = getResources().getDisplayMetrics().density;
// Start loading the ad in the background.
int adWidth = (int) (adWidthPixels / density);
adView.loadAd(adRequest);
return AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(this, adWidth);
}

2. Get AdSize and set the ad view


AdSize adSize = getAdSize();
adView.setAdSize(adSize);
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

Implementing banner ads on the splash screen - iOS code sample

1. Determine view width


let frame = { () -> CGRect in
// Here safe area is taken into account, hence the view frame is used
// after the view has been laid out.
if #available(iOS 11.0, *) {
return view.frame.inset(by: view.safeAreaInsets)
} else {
return view.frame
}
}()
let viewWidth = frame.size.width

2. Get Adaptive GADAdSize and set the ad view


bannerView.adSize = GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(viewWidth)

3. Create an ad request and load the adaptive banner ad


bannerView.load(GADRequest())
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

Implementing banner ads on the splash screen - Unity code sample

1. Get the AdSize that uses full screen width

AdSize adSize = AdSize.GetCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(AdSize.FullWidth);

2. Create a BannerView instance

// Create a banner anchored at the bottom of the screen


BannerView banner = new BannerView(AD_UNIT_ID, adSize, AdPosition.Bottom);

3. Load an ad

AdRequest request = new AdRequest.Builder().Build();

// Load a banner ad.


banner.LoadAd(request);
Proprietary + Confidential

BANNER ADS ON THE SPLASH SCREEN

Testing banner ads on the splash screen

Testing will be the same as regular banners


The quickest way to enable testing is to use Google-provided demo ad units. These ad units are not
associated with your AdMob/ AdManager account, so there's no risk of your account generating invalid traffic
when using these ad units.

● iOS test ad unit: ca-app-pub-3940256099942544/2934735716


● Android test ad unit: ca-app-pub-3940256099942544/6300978111
Proprietary + Confidential

FAQs

● Is this supported in landscape mode?


Splash Banner is not supported in landscape mode, as the initial large size ad can seem awkward in landscape
apps.

● How is this different from App open?


App Open covers 85% of the screen whereas Splash Banner should not be more than 40% of the screen

● Can I use Splash Banner for background to foreground scenarios?


No, this format is specifically allowed by our policy language to only support cold start.

● My publisher is already using App Open, should they use Splash Banner?
If they have App Open on cold start, they should not shift to Splash Banner as this could lead to revenue
downside. However, if they are not using App Open on cold start but are using only for background to
foreground, they can use Splash Banner on cold start.

● Is Splash Banner supported on 3rd party mediation platforms?


If the specifications are on the same lines as a normal or adaptive banner ad, 3rd party platforms should
support.
Proprietary + Confidential

Banner ads
at exit placement
Proprietary + Confidential

BANNER ADS AT EXIT PLACEMENT

Banner ads at exit placement

What are they?


● Exit banners refers to a banner ad at the app exit
placement. This allows publishers to monetize users in a
policy-compliant manner when they are leaving your
app.

How do they work?


● Banner ads at the exit placement are served to users
when they are leaving your app.

How can publishers use them?


● Banner ads at the exit placement is a monetization
opportunity for publishers who wish to serve ads at
other placements besides only serving ads while users
are using their app
Proprietary + Confidential

BANNER ADS AT EXIT PLACEMENT

Banner ads at exit placement

What is the user flow?

● Step 1: When a user tries to exit the app by clicking the


back / exit button:
○ Show a “Confirm Exit” dialog box to the user
○ Place a banner ad on the “Confirm Exit” screen

● Step 2: User exits the app if user confirms to exit


Proprietary + Confidential

BANNER ADS AT EXIT PLACEMENT

How to implement banner ads at exit placement

● Step 1: Create a new banner for your app called “Exit banner_appname” and pre-cache it

● Step 2: Create a “Confirm Exit” dialog box which is triggered when the user clicks the back button to
exit

● Step 3: Track results in AdMob dashboard after 7 days filtering by ad unit ID

Check the Codelab


Proprietary + Confidential

Collapsible Banner
Proprietary + Confidential

COLLAPSIBLE BANNER: FORMAT OVERVIEW

What is collapsible banner?

● New banner ad format that occupies ½ the


screen and collapses to a standard banner
when a user clicks on the collapse button

● Optimize your existing banner ad formats with


collapsible banner

● Easy to implement by adding an extra


parameter to any existing banner slot (about 1
hour commitment from the publisher)

● Currently supports image, rich media, and


video ads

● Can be positioned either on top OR the


bottom of the screen (but not both)
Proprietary + Confidential

COLLAPSIBLE BANNER: FORMAT OVERVIEW

Key benefits of collapsible banner

Enhanced revenue
Easy to implement performance Collapsible action

Upgrade existing banner ad 30-50%* higher CTR/CPM Only ad format with an option
units by adding a parameter than standard Banner to continue advertising
engagement after minimizing
■ No format maintenance Covering half the screen

the ad
■ Continuous user testing drives more engagement
and UX optimization and higher eCPMs
■ Continuous optimization
for latency

*An internal Google study shows that alpha publishers see approximately 30-50% CTR / CPM than standard banner. Performance may vary depending on detailed settings.
Proprietary + Confidential

COLLAPSIBLE BANNER: FORMAT OVERVIEW

Who should implement collapsible banners?


● If you currently have banner revenue in your app or game
● Partners who have an app with a static user interface without user generated content (e.g. utility apps,
game information screens, etc.)
● If you are currently using Adaptive banner anchor ads (in-line not supported).

Where should you implement collapsible banners?


● Not all banner ad units need to be converted to a collapsible banner. You should focus on placements where the
expanded banner will not interfere with an active user experience
● Potential ad placements include but are not limited to: content loading, end of game, transition between pages, etc.
● For the best user experience, it is recommended that the app only request a collapsible banner ad every 3-5 minutes
Proprietary + Confidential

Non-gaming app example


Home File Conv History Setting Home File Conv History Setting

Doc Converter
Doc Converter

Word to PDF PDF to Word JPG to PDF


Word to PDF PDF to Word JPG to PDF
T&U App

Collapsible banner is placed on


File Upload
the homepage where there
File Upload isn’t a busy user interaction but
…………………..Rec
ent: frequency of the visit is high

Brain Sharper-Puzzle
Sharp your Mind

Install Brain Sharper-Puzzle


Install
Sharp Your Mind
Ad Ad

Home screen Tab to collapse


Collapsible shows the banner
Proprietary + Confidential

Gaming app example


3000 3000
Level 002 Level 002
2 2

Level Up
Level Up
Level 002
Level 002
Your Score
Your Score
3200
3200
221 5

Replay
221 5
Casual Game with levels
Replay
Home Next
Home Next
Collapsible banner is placed at the end
of the gameplay where user is not
interrupted by and key main actions

Adventure Duck
Play Now!

Install Adventure Duck


Play Now!
Install
Ad Ad

Home screen Tab to collapse


Collapsible shows the banner
Proprietary + Confidential

How to implement
collapsible banner
Proprietary + Confidential

HOW TO IMPLEMENT COLLAPSIBLE BANNER

Implementing collapsible banner


● Collapsible banner can be requested from new or existing banner ads (Admob, AdManager)
● SDK will generate the expanded size on the backend based on the screen size, when an ad is
shown, it’s in expanded status.
● Collapsible banner can be anchored to either top or bottom of the screen.
Proprietary + Confidential

HOW TO IMPLEMENT COLLAPSIBLE BANNER

Implementing collapsible banner


The following sample code shows the example of top of screen placement.

iOS code sample Android code sample

GADRequest *request = [GADRequest request]; Bundle extras = new Bundle();


GADExtras *extras = [[GADExtras alloc] init]; extras.putString("collapsible", "top");
extras.additionalParameters = @{@"collapsible" : @"top"}; AdRequest adRequest = new AdRequest.Builder()
[request registerAdNetworkExtras:extras]; .addNetworkExtrasBundle(AdMobAdapter.class, extras)
[bannerView loadRequest:request]; .build();
adView.loadAd(adRequest);

Notice: Add extra parameters compared to normal banner.


Proprietary + Confidential

HOW TO IMPLEMENT COLLAPSIBLE BANNER

Implementing collapsible banner


The following sample code shows the example of top of screen placement.

Unity code sample

BannerView bannerView = new BannerView(...);

AdRequest adRequest = new AdRequest.Builder();

adRequest.Extras.Add("collapsible", "top");
bannerView.LoadAd(adRequest);
Proprietary + Confidential

HOW TO IMPLEMENT COLLAPSIBLE BANNER

How is implementing collapsible banner different from banner ads

1. When requesting a collapsible banner ad, you should request an ad that is the size you would like
to use in the regular (collapsed) banner state.
a. GAM/AdMob will automatically generate the expanded size on the backend based on the
screen size
2. Collapsible banner can only be anchored to either top or bottom of the screen
3. Publisher must manually disable the auto-refresh in the Frontend
4. Collapsible banner is only supported for SDK version 7.35.2+
5. Collapsible banner is not supported in landscape mode
6. Implement the format using the documentation for AdMob (link) or GAM (link)
7. Share feedback as you implement and test
a. What’s working and not working
b. Any questions / concerns, reach out directly to the Collapsible banner team via this form
Proprietary + Confidential

HOW TO IMPLEMENT COLLAPSIBLE BANNER

Testing collapsible banner

Demo ad units for collapsible banner (Both AdMob and Ad Manager)


The quickest way to enable testing is to use Google-provided demo ad units. These ad units are not
associated with your AdMob account, so there's no risk of your account generating invalid traffic when using
these ad units.

● iOS test ad unit: ca-app-pub-3940256099942544/8388050270


● Android test ad unit: ca-app-pub-3940256099942544/2014213617

Notice: It is possible that you will get a normal banner back during testing. The reason is in reality, when
there is no ad source for collapsible banner, a normal banner will be returned.
Proprietary + Confidential

Banner Plugin
What is Banner Plugin?

A code script / library for publishers that help implement all different banner formats easily

Core functionality:
● Flexibility to change banner types without detail implementation needed knowledge

Benefit:
● Easy control. Control banner remotely with embedded Remote Config
● Easy testing. Support testing ability, with no extra coding required
Background

Problems to publishers:

● [Hard to scale] Each banner type has


different implementation, thus more effort
needed for integration.
● [Hard to test] Required extra coding to
adopt Firebase Remote Config with banner
switching logic.
● [Hard to control] Limited control over
banner configuration.
Proprietary + Confidential

Multiple implementations Bundled, simpler implementation

Standard Banner

Adaptive Banner
Banner Plugin
Collapsible Banner

Firebase Remote Config

And many more in future update!


How to use Banner Plugin?

Android (Java / Kotlin)

BannerPlugin(activity, findViewById(R.id.adViewContainer),
BannerPlugin.Config().apply {
this.defaultAdUnitId = "ca-app-pub-xxx"
this.defaultBannerType = BannerPlugin.BannerType.CollapsibleBottom
}
)

IOS (Swift)

For detail step by step let config = BannerPlugin.Config(


defaultAdUnitId: "ca-app-pub-xxx",
implementation, please use defaultBannerType: .CollapsibleBottom
this guideline )
_ = BannerPlugin(rootViewController: self, adContainer: adContainer, config: config)
How to use Banner Plugin?

RemoteConfig to control
the banner

BannerPlugin(activity, findViewById(R.id.adViewContainer),
BannerPlugin.Config().apply {
this.defaultAdUnitId = "ca-app-pub-xxx"
this.defaultBannerType = BannerPlugin.BannerType.CollapsibleBottom
this.configKey = "Name your remote config key here"
}
)
Special config for Collapsible Banner

Publisher is recommended to only request collapsible creative every 3 - 5 minutes for each
placement to balance revenue with user experience. The plugin currently follow that guidance.

By default, requests with type Collapsible banner are requested every 3 minutes (180 secs).

BannerPlugin(activity, findViewById(R.id.adViewContainer),
BannerPlugin.Config().apply {
this.defaultAdUnitId = "ca-app-pub-xxx"
this.defaultBannerType = BannerPlugin.BannerType.CollapsibleBottom
this.defaultCBFetchIntervalSec = 40
this.defaultRefreshRateSec = 20
Publisher can adjust the config if
}
necessary )
Estimated implementation time

Estimated implementation time:

● [First time integration] Coding : 1 ~ 2 days varies on app’s existing placements


● [Future plugin update] Coding : 0 ~ 0.5 day depending on plugin changelog.
● Firebase & A/B testing setup: 0.5 ~ 1 day (Optional) (Nice to have)

Google team will follow up and provide support / update for this plugin. Any new banner formats will be planned to be
supported accordingly.
Proprietary + Confidential

App open ads


Proprietary + Confidential

OVERVIEW OF APP OPEN ADS

Example of app open ads


Splash screen Splash/Loading screen Content screen
Home screen (OS controlled) (Publisher controlled) (Publisher controlled)

App open ad is placed on the app’s loading screen.


The loading screen is seen underneath the ad.
Proprietary + Confidential

Tip 1:
Be policy compliant when
implementing app open ads
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

The first The second


Splash screen Splash/Loading screen Intermediary screen Content screen
App open ads placements (OS controlled) (Publisher controlled) (Publisher controlled) (Publisher controlled)

Do not show app open ad


after the app content is
loaded.
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

The first The second


Splash screen Splash/Loading screen Intermediary screen Content screen
App open ads placements (OS controlled) (Publisher controlled) (Publisher controlled) (Publisher controlled)

Do not show app open ad


after the splash/loading
screen.
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

App open ads placements

● Do not integrate an app open ad on an interstitial ad slot within your app content

● Do not show an interstitial ad immediately after an app open ad


Proprietary + Confidential

Tip 2:
Pre-fetch app open ads
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

Pre-fetch app open ads to increase show rate

The flow would look like this:

● First open: If no cached app open ad to show, fetch app open ad #1 and store in cache.

● Second open: Show cached app open ad #1. Fetch app open ad #2 and store in cache.

● Third open: Show cached app open ad #2. Fetch app open ad #3 and store in cache.

● Continue this loop…


Proprietary + Confidential

Tip 3:
Control frequency cap of
app open ads
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

Conduct frequency cap on app open ads

Review your app’s performance and


adjust the app open ad frequency
capping accordingly.

Enable Frequency capping


Proprietary + Confidential

Tip 4:
Consider ads expiration
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

Consider ad expiration public class AppOpenManager implements LifecycleObserver,


Application.ActivityLifecycleCallbacks {
- only applies to app open ads ...
private long loadTime = 0;
public AppOpenManager(MyApplication myApplication) {
this.myApplication = myApplication;
● Ad references in app open will ...
time out after four hours. loadCallback = new AppOpenAd.AppOpenAdLoadCallback() {
/** Called when an app open ad has loaded */
@Override
public void onAppOpenAdLoaded(AppOpenAd ad) {
● Ads rendered more than four appOpenAd = ad;
hours after request time will no isLoadingAd = false;
loadTime = (new Date()).getTime();
longer be valid and may not }
earn revenue. ...
};
}
● Low show rates observed /** Add a new utility method to check if ad was loaded more than n hours ago. */
private boolean wasLoadTimeLessThanNHoursAgo(long numHours) {
could be a function of ads long dateDifference = (new Date()).getTime() - this.loadTime;
expiration. long numMilliSecondsPerHour = 3600000;
return (dateDifference < (numMilliSecondsPerHour * numHours));
}

/** update this function */


public boolean isAdAvailable() {
return appOpenAd != null && wasLoadTimeLessThanNHoursAgo(4);
}
Proprietary + Confidential

Additional tips
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

Additional tips to help you get the most out of app open ads

● Show your first app open ad after your users have used your app a few times.
● App open ads perform best with apps that have a high frequency of opens per daily user.
● If you have a loading screen under the app open ad, and your loading screen completes loading
before the ad is dismissed, you may want to dismiss your loading screen in the
onAdDismissedFullScreenContent() method.
● Full documentations for iOS, Android
● Test your ads with Ads Inspector
Proprietary + Confidential

Rewarded
Proprietary + Confidential

Best Practices: Rewarded

Rewarded Policy Reminder

The required action (e.g., “View this ad to receive 100 gold coins" or “View this ad to
receive a Sword of Slaying"). Icons may be used to describe the reward, so long as
such icons are clear to users of the app.

The in-app reward for completion of the action (e.g., “Get x2 the coins when you
watch a video with us"). Note that the reward must be redeemable from within the
app where the rewarded ad was placed
Simulation Games Rewarded Ads Best
Practices
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Simulation games

Most popular genres


Business Clicker/Idle Play Vehicle simulators
Combining core gameplay with Endless progression - continuously grow Limited storyline/narrative
A storyline/narrative business/world
Completing sessions (driving missions) to
Using core gameplay to control pace No arbitrary session caps - let users opt-in level up and earn in-game currency
and monetization to leave the game to control pacing
In-game currency can be used to purchase
Leveraging storyline/narrative for retention Deciding which items to upgrade for faster new play methods (e.g. destination driving,
revenue growth free driving, racing), maps to drive, and
vehicles

Click the icon to check the game


Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Simulation games

Success models
Model 1 Model 2 Model 3
Rewarded: permanently offered to choose Rewarded: 1-2+ ad units per session Rewarded: 2-3 ad units per session after
a new car always available extra time in the game passing every level (~every 3 minutes) to
gain extra time/currency
Interstitials: 3~5 interstitials per session: Interstitials: not visible
Interstitials: 2-3 ad units per session.
Shown after passing level in the game
When starting new game Banner: always shown at the bottom (~3 minutes after game launch)
no frequency/ refresh rate caps for any
No frequency caps on any ad units ad units
Mediation: using AdMob, FAN is the
Mediation: AdMob mediation with FAN second best performing network
Mediation: AdMob mediation with FAN
& Unity as top working networks
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Simulation games

Case study
rewarded
Pro tip - consistently visible rewarded ad!

During the car race, During the quest there During the gameplay as
there is an always-on is an always-on option boost, giving extra time
available option to to watch an ad for for the play to complete
watch ad for car extra tools the challenge
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Simulation games

Case study
rewarded
Pro tip - consider the best time to reward users!

Between the levels, as an Watch rewarded ad to get


additional upgrade (extra
randomized reward
tool) for the next level
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Simulation games

Benchmarks
IAP vs Ad Revenue Share CPMs Ad Density (Impressions/DAU)
Android IOS Android IOS Android IOS
Market Top Apps Market Top Apps Market Top Apps Market Top Apps
Market Top Apps
IAP 69.22% 84.28% Rewarded $5.72 $6.91 $9.55 $11.25 Rewarded 0.01 0.05 0.01 0.04

Ad Revenue 30.78% 15.72% Interstitial $0.83 $2.09 $3.40 $4.93 Interstitial 0.07 0.04 0.05 0.06
Banner $0.43 $1.33 $1.53 $0.36 Banner 0.09 0.07 0.12 0.32
Native $0.22 $0.29 $0.53 $0.32 Native 0.00 0.02 0.02 0.00

Engagement Match Rate Show Rate


Android IOS Android IOS Android IOS
Top Top Market Top Apps Market Top Apps Market Top Apps Market Top Apps
Market Apps Market Apps
Rewarded 21.25% 20.53% 51.36% 19.58% Rewarded 36.01% 29.08% 28.36% 16.09%
Av. Daily Interstitial 34.89% 22.04% 74.81% 17.51% Interstitial 48.74% 46.30% 54.45% 46.22%
6.87 4.44 37.07 30.93
Session Duration
Banner 30.23% 24.85% 39.58% 29.07% Banner 63.64% 71.08% 83.95% 90.08%
Native 88.23% 69.22% 95.09% 57.42% Native 14.97% 67.98% 57.47% 35.65%
Av.Daily Session
22.73 16.96 70.29 58.17
Per User
Word Games Best Rewarded Ads Best
Practices
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Word games

Most popular genres


Crosswords/Puzzles/Search Boggle/Scrabble Hybrid: storyline/adventure
Traditional gameplay App equivalent of popular board games Unusual gameplay: words can
be used as a weapon, RPG mode is
Usually only for a single player Multiplayer mode available or there is an original storyline
that supports the gameplay
Usually include different elements: guess a
word, find a word, word matching,
anagrams or word creation with
strategy/chess elements
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Word games

Best practices
Ad Format Best Practice

Rewarded Always available option on the screen

Randomized reward integration

Unlock a new complexity level or additional layout / topics for puzzles for watching an ad

Offer extra perks before the start of the game

Interstitial Use interstitial every start & end of the game

Extra Occasionally offer new puzzle mechanics/weekly or monthly challenges as a limited offer to motivate loyal users

Opportunity to play with real people & friends increases retention

Provide extra energy/lives to dying characters to motivate users complete the level
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Word games

Success Models
Model 1 Model 2 Model 3

Interstitials:Using format between levels Interstitials: Top performing format (avg Rewarded: the best performing format
(avg eCPM €2.19, CTR 1.58%) eCPM €2.3, CTR 2.71%), used between the (eCPM €0.43, show rate 67.80%)
levels

Mediation: Mopub Interstitials: eCPM €0.32, CTR 1.12%


Banner: second best performing format is
Extra: No caps on ad unit level Brazil, banner(avg eCPM €0.08, CTR 0.07%) Banner: The second best performing
Turkey are top markets format (eCPM €0.07, CTR 0.73%)
Mediation: Admob mediation
Extra:Turkey is the top market

Extra: US, France are top markets


Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Word games

Case study
rewarded
Pro tip - use rewarded as an additional
perk/hint!

The easiest way is to Offer additional Always-on offer of free


monetize in-app currency/perks between perks during the game
currency the levels play
Proprietary + Confidential

SUBCATEGORIES DEEP DIVE

Word games

Benchmarks
IAP vs Ad Revenue Share CPMs Ad Density (Impressions/DAU)
Android IOS Android IOS Android IOS
Market Top Apps Market Top Apps Market Top Apps Market Top Apps
Market Top Apps
IAP 63.69% 79.69% Rewarded $1.14 $3.53 $4.06 $9.42 Rewarded 0.06 0.10 0.05 0.10

Ad Revenue 36.13% 20.31% Interstitial $1.47 $2.75 $3.69 $5.06 Interstitial 0.15 0.16 0.13 0.32
Banner $0.10 $0.32 $0.13 $0.31 Banner 1.08 1.13 1.96 2.60
Native $0.18 $0.11 $0.72 $0.17 Native 0.00 0.02 0.01 0.04

Engagement Match Rate Show Rate


Android IOS Android IOS Android IOS
Top Top Market Top Apps Market Top Apps Market Top Apps Market Top Apps
Market Apps Market Apps
Rewarded 33.55% 20.56% 32.03% 25.17% Rewarded 46.90% 34.14% 39.80% 31.86%
Av. Daily Interstitial 28.54% 17.19% 38.27% 23.29% Interstitial 50.15% 48.25% 38.00% 44.72%
2.27 2.3 2.37 5.53
Session Duration
Banner 29.70% 15.24% 31.51% 18.47% Banner 72.65% 75.17% 95.24% 92.10%
Native 66.04% 37.45% 98.78% 31.08% Native 51.58% 62.43% 78.91% 70.26%
Av.Daily Session
8.89 11.77 6.73 16.45
Per User
T&U Rewarded Ads Best Practices
Non-gaming rewarded implementation flows
Wifi News
Meet me - Dating App
[Use case: Unlock new content (profiles) in the app]

1. User wishes to boost his 2. User opts to watch a 3. User views the 4. User gets more
profile to get new matches. rewarded video ad to boost rewarded video ad. matches in his profile.
his dating profile.
VivaVideo - Video Editor App
[Use case: Unlock new content (themes) in the app]

1. User wishes to unlock new theme 2.User gets prompted to 3. User views the 4.User unlocks the “Neon”
“Neon” by watching a rewarded watch a rewarded video ad rewarded video ad. theme after viewing the
video ad. to get that theme. rewarded video ad.
Malyalam Keyboard
[Use case: Unlock new themes in the app]

1. User wishes to 2.User gets prompted to 3. User views the 4.User unlocks theme for
unlock new theme watch a rewarded video ad rewarded video ad. 5 days after watching
to get that theme. rewarded video ad
SmartApps
[Use case: Unlock new games within the train booking app]

4.User unlocks games after


1. User wishes to unlock games 2.User gets prompted to 3. User views the
viewing the rewarded video
watch a rewarded video ad rewarded video ad.
ad.
to unlock games
Proprietary + Confidential

Best Practices: Rewarded

Drive value by empowering


users with choices

With a strategic rewarded video, it shortens the path


to purchase and can even be an IAP discovery
mechanism. It introduces options for in-app
purchases a user may not have been aware of.

Achieve greater opt-in for rewarded ads by placing


them side-by-side with IAPs.

For the spenders For the non-spenders Rewarded & IAP options
Proprietary + Confidential

Admob Mediation
& Platform Update
Bidding partner update

Liftoff previously Vungle

• Supported ad formats: Interstitials,


Rewarded Video
• Supported demand regions: All regions
• Buyer intro website:
https://app.vungle.com/login/
• Adapter guide: [Android | iOS | Unity]
• AdMob help center: HC link
Proprietary + Confidential

Mintegral ad sources now available on AdMob bidding (Open beta)

● Supported ad formats: Rewarded Video/


Interstitial/ Banner/ Native
● Supported demand regions: Global
● Buyer intro website:
https://www.mintegral.com/en
● Adapter guide: [Android | iOS | Unity]
● AdMob help center: HC link
Proprietary + Confidential

Google Partner Bidding


Proprietary + Confidential

Overview
What is it?
Google partner bidding (gBid) is an umbrella term for an in-development product that will allow Google to compete
in 3P RTB Apps auctions. The setup process is similar to mediation in that publishers will install a valid SDK and
create a partner bidding ad unit into their app. However, instead of competing in a mediation waterfall in app,
Google (Google Ads, Display & Video 360) will be able to compete in a 3P RTB ad auction for a specific ad
placement. Publishers that leverage AdMob for Google demand will be a fit.

Who should be using?


Off-platform publishers (using Google strictly as a network demand sources - indirect demand) with AdMob
accounts using Applovin, Fyber, or Chartboost, using standard formats, interested in scaling real time bidding
solutions and have (or are prepared to sign up for) an AdMob account. Only using Google as a network demand
source (eg indirect only).
Benefit
Publishers using select 3P platforms to monetize through RTB solutions can now input Google as a participating
bidder in their existing setups, increasing auction competitiveness
● Ease of management (no waterfalls)
● Lower latency: better user experience
● Real time CPMs: Better performance at scale (fairer, more competitive pricing)
Product Status
Beta
Proprietary + Confidential

More Information on Google Partner Bidding


Product Availability
Proprietary + Confidential

Implementation Guide: Help center Article


1. Publishers need an existing and approved AdMob account, along with valid payment details
a. Google partner bidding will only serve on pub ids that have already been approved
b. If publishers do not have an existing AdMob account, they can register for one
2. Publishers will also need to update their apps to the minimum or recommended SDK version and relevant
adapters
3. To create partner bidding ad units that will be mapped to publishers’ third-party placements, during the
alpha and closed beta, publishers must be allowlisted to see the setting and reporting options in the AdMob
UI
4. Publishers will need an AdMob account to access Google partner bidding ad units to receive demand via 3P
platforms. From there the publisher will follow the steps below.

1. Login to your AdMob account


2. Select the app you’d like to create a bidding ad unit for
3. Select the ad format you want
a. Note: Banner, Interstitial, Rewarded & Native Advanced are supported formats
4. Enter a name for the ad unit
5. Check the box that designates the ad unit for bidding on a partner mediation platform
6. Click ‘Create ad unit’
7. Once created you’ll see the instructions to map your AdMob app ID and AdMob ad unit ID to your
mediation platform
● Reporting is available in the new Ads Activity Report where all ad performance metrics reside. We’ve also
introduced the new filter and dimension within the Ads Activity Report that allows you to filter or breakdown
data by mediation platform - to isolate reporting to your new bidding ad units, please select the ‘Mediation
platform’ filter and then select ‘Partner bidding platform’.
Proprietary + Confidential

Showrate/Matchrate
Optimization
Low Match Rate
Publishers can use following steps to troubleshoot their match rate issue

1. If account / app is created or started sending request less than 7 days, please wait.
2. Check if there are lots of blocking categories by using AdMob/AdSense blocking control?
a. Consider to unblock any suitable categories if possible
3. Any enabled Floor Setting / Google Optimized Floor?
a. Lower your floor price for better match rate
4. Check if all ad types (Image, Text, Video) are checked for the ad units
5. The app had app-ads.txt enabled in Play Store?
a. Make sure your app property is included in app app-ads.txt
6. Check your Policy Center or mailbox if there’s any notification from Google with regard of policy violation for noticed app / account.
Any policy violation will potentially cause the drop of Match Rate
a. Follow the steps that is described in the Policy Center page to have code change, update the app then press Fix button in
Policy Center page
7. App is Child Directed or Design For Family?
a. It is expected to see lower match rate on these apps
8. Check Error Code, Error Message for more information of actual error
9. If you still have any questions visit AdMob Help Center, or contact AdMob Support Team for assistance.
Proprietary + Confidential

Ads Cache
01

Ads Latency
Proprietary + Confidential

App
Started

Ad.load() onAdLoaded()
called

Ads Latency
Proprietary + Confidential

Impression Caught!
App
Started

Ad.load() onAdLoaded() Ad.show()


called

Ads Latency
Proprietary + Confidential

Impression Lost!
Ad not loaded yet

App
Started
Ad.show()

Ad.load() onAdLoaded()
called

Ads Latency
Proprietary + Confidential

Every time a user has reached a placement where


we can show an Ad but an Ad is not available yet, an
Impression is lost.

Impression Lost
=
Revenue Lost

An impression lost means an opportunity to


show an Ad missed. Which means $$$ loss
What causes Ads Latency

De-prioritised Ad Ad Expiry Un-optimized Ad Not enough Ads


Request Handling Request Timing Cached

Long activity start to Different Ad Formats If the Ad is requested Placements with high
first ad request expire after a fixed late, an impression opt-in should cache
latency interval oppt. is missed multiple Ads
02

Introduction to AdsCache
Proprietary + Confidential

AdsCache is a library that


handles the ad loading strategy
for your app
Initialize the SDK & Configuration Setup Initialize the library & Configuration Setup

Loading of the Ads Showing of the Ads

Optimize Ad Request Timing

Handling Expired Ads

Prefetching

Showing of the Ads

Current Steps Required Steps with the Library


03

Implementation Steps
3 Easy Steps

Integrate the Library

● Add the library as a


dependency.
● Updating the
AndroidManifest file
● Add a configuration file
to define Ads to cache
3 Easy Steps

Integrate the Library Initialize the Library

● Add the library as a Initialize the SDK with as little


dependency. as one line of code.
● Updating the Example
AndroidMainfest file this.adsCache = new
AdsCache(getApplicationContext(
● Add a configuration file ));
to define Ads to cache
3 Easy Steps

Integrate the Library Initialize the Library Most Complex Step!

● Add the library as a Initialize the SDK with as little


dependency. as one line of code.
● Updating the Example
AndroidMainfest file this.adsCache = new
AdsCache(getApplicationContext(
● Add a configuration file ));
to define Ads to cache
3 Easy Steps

Integrate the Library Initialize the Library Most Complex Step!

● Add the library as a Initialize the SDK with as little Just start showing Ads
dependency. as one line of code. wherever you wish.
● Updating the Example Example
AndroidMainfest file this.adsCache = new this.adsCache.showAd(AD_UNIT_ID
AdsCache(getApplicationContext( , MainActivity.this);
● Add a configuration file ));
to define Ads to cache
04

Testing Performance
#1 - Firebase A/B Testing [RECOMMENDED]

1 2 3 4 Final

Create a parameter in Fetch the parameter in the Run an A/B test on 25% Use Impressions/DAU and Use the library for all
Remote Config to switch App and based on it audience with a 50-50 ARPDAU as the key placements and release
between library and decide between the two between both strategies. metrics to compare. Use new build
existing logic methods. Release a build Use new ad unit ids for the show rate to find any
with default as the original both the variants to avoid anomaly.
method. Only for one historical data bias.
placement during the test.
#2 - Historical Comparison

1 2 3 4 Final

Integrate the library in the Monitor the performance Compare the Use Impressions/DAU and Use the library for all
app for 1 Ad Unit Id and of the Ad Unit active in the performance in AdMob for ARPDAU as the key placements and release
release the build library the Ad Unit Id for the two metrics to compare new build
app versions,
Proprietary + Confidential

Showrate/Renderrate
App Impression Counting Methodology
Proprietary + Confidential

Ad requests

Confirmed demand, potential to earn revenue Matched requests

Paid impressions Ad impressions

ActiveView measurable
In app, the impression-counting methodology is such that impressions
are only counted when the creative begins to load in the viewport of the ActiveView viewable
user’s screen (Help Centre). This aligns with the IAB & MRC industry
standard.

The percentage of matched requests that turn into (paid) impressions


therefore tends to be lower in app, compared to web, as not all ads end
up showing on the user’s screen

This represents an opportunity - improving the render rate results in a


higher proportion of paid ad impressions

Total potential inventory


Proprietary + Confidential

Common Causes
Common Causes Glossary
Proprietary + Confidential

What describes why this causes is important and how it impact the overall publisher’s revenue.

Common Reasons provides a list of common reasons why such behaviour could occur.

Identify Method acts as a self-service guide for publisher’s developer and ad ops team to identify the
symptoms.

Action Items provides a list of actionable tasks that the publisher’s developer and ad ops can take to address
this causes.

Additional Notes

While removing excessive ad requests to improve render rate do not improve yield in the short term, sending only
inventories with higher viewable rate will improve yield in long term.
Long activity start to first ad request latency
Proprietary + Confidential

What: Determine the duration between activity start until the first ad request. The longer it took to make an ad request, the higher
chance for a user to scroll away from the slot before an ad shows up.
Common Reasons:
● Bad synchronous coding standard that blocks ad calls until all other processes are completed.
● Bad app loading strategy that focuses on heavy content loading and deprioritized ad calls.
Identify Method: Create an ads timeline with Charles Proxy to identify the gap between activity start and first ad request.

Action Items:
1. Determine the gap between activity start and ad
request.
2. Identify and assess all the operations that occur in the
gap.
3. Defer non-critical operation to load ads earlier.

Firebase Tips:
● Leverage Firebase analytics to log initial ad request
timestamp and compare with “session_start” event
timestamp to monitor the gap on ongoing basis. Ads Timeline (example)
Ad Rendering Bug
Proprietary + Confidential

What: Publishers get paid when a matched request turns into an impression. Due to bad coding or user interaction, a matched
request did not get rendered into an impression.
Common Reasons:
● Code logic prevents matched requests from display.
● Accidental duplicate ad request fired for the same ad unit.
Identify Method:
● Uses Ad Manager or AdMob report to identify a list of low render rate placement.
● Compare ad unit render rate against benchmark.

Action Items:
1. Review code logic to identify potential bugs preventing ads from displaying.
2. Ensure ad container is display correctly upon getting ad loaded event from GMA SDK (iOS, Android).
3. Review code logic to ensure no redundant ad requests fired for the same placement.
Avoid Expired Ads
Proprietary + Confidential

What: While prefetching ads is a great technique, it's important that publishers not keep old ads around forever without
displaying them. Any ad objects that have been held without display for longer than an hour should be discarded and replaced
with new ads from a new request. Publishers are paid for valid impressions and not for expired ads.
Common Reasons:
● Ads are not refreshed when the app comes from background to foreground after a long time gap.
● Subsequent pages are cached along with ads.
Identify Method:
● Review code logic or use Charles Log to
○ Check if Ad calls are initiated if the app comes in foreground from background.
○ Check if Ad calls are initiated if the app is in foreground but the phone is unlocked after an hour.
○ Check if Ad impression pings are fired for older ads (when App is opened after an hour).
Action Items:
1. Set up event tracking to record the time spent for cache ads.
2. Implement wrapper code logic in the rewarded ads object to automatically discard and request ads after an hour or any
activity lifecycle change.

Firebase Tips:
● Leverage Firebase analytics to log matched request timestamp to impressions timestamp to monitor cache
duration in an ongoing basis.
(Interstitial Ads) Un-optimized Ad Request Timing
Proprietary + Confidential

What: Bad timing of interstitial ad request causes revenue loss.


Common Reasons:
● Interstitials Ad request is initiated too early, e.g. interstitial ad request initiated at App Launch where it is intended to
display from 4th to 5th page.
● Interstitials Ad request is initiated too close to display event, e.g. interstitial ad request is fired right before the page
transition which is too late to wait for the ad response.
Identify Method:
● Identify a list of low render rates of interstitial ad units.
● Review code logic to determine the timing of interstitial ad requests.

Action Items:
1. Optimize the affected interstitial ad units by adjusting the sequence of ad requests to only fire at the appropriate timing.
2. Reserve initial app launch ad requests to only the most critical and important ad units.

Firebase Tips:
● Leverage Firebase analytics to record the analyze time on page for user to optimize for interstitial request timing.
(Banner Ads) Ad Refresh
Proprietary + Confidential

What: Time based ad refresh might happen when the slot is not near / within the viewport, by refreshing off screen ad slots we
have the potential to inflate the denominator of ad request (matched ad request) . Publishers should initiate new ad requests for
the same slot only if the slot has been viewable for a considerable duration.
Common Reasons:
● Time based ad Refresh with no bearing on viewability.
● Ads are refreshed for subsequent tabs.
Identify Method:
● Uses Ad Manager / AdMob report to identify the render rate (impressions / matched request) based on the ad unit.
● Review code logic or use Charles Log to check if ad call are initiated for subsequent pages (non-viewport Ads) more than
one time.
Action Items:
1. Remove time based ad refresh set from Ad Manager /AdMob portal and apply more granular ad refresh logic through
application code.
2. Partner should initiate ad refresh when:
○ Application lifecycle change
○ Ad are shown more than 60 seconds
(Native Ads) Incorrect Native Formats Handling
Proprietary + Confidential

What: Native ad formats are handled differently from regular banner ads. Mishandling of native ads returned from AdMob or Ad
Manager causes revenue loss.
Common Reasons:
● Bug / incorrect native assets handling.
● Native format handling missing for certain format Ids.
Identify Method:
● Ad Manager
○ Use Ad Manager report to identify render rate based on ad unit and native ad format name.
○ Review code logic or use Charles Log to check if native ad format ID is included in ad requests.
● AdMob
○ Use AdMob report to identify low render rate native ad units.

Action Items:
1. Partner should review handling method for all native formats as per ad request.
○ AdMob (iOS, Android)
○ Ad Manager (iOS, Android)
2. (Ad Manager Only) Line items should be configured only with supported Native format Ids.
Insights

Tracking - Event using Firebase


Proprietary + Confidential

What: While Charles log monitor method provide a good view on the performance on an ad hoc basis, setting up a proper
tracking enable real-time tracking on user devices and take quicker action to address any issue.
Common Reasons: Real user measurement (RUM) is different from lab measurement. Firebase tracking helps us to understand
real user measurement, and make adjustments according to different user clusters.
Identify Method: Deploy firebase analytics to tracks ad lifecycle event

Action Items:
1. Sign up for Firebase account
2. Deploy Firebase analytics, guide is here
3. Use event tracking to measure ad lifecycle by using ad
listener events
4. Track ad events with Firebase analytics event (Android, iOS)
a. ad request (initial request)
b. onAdLoaded() → check if ads is loaded
c. onAdFailedToLoad() → check for failure
d. onAdImpression() → when ad is rendered
Summary
Proprietary + Confidential

● Long activity start to first ad request latency

● Ad rendering bug

● Avoid expires ads

● (Interstitial Ads) Un-optimized Ad Request Timing

● (Banner Ads) Ad Refresh

● (Native Ads) Incorrect Native Formats Handling


Proprietary + Confidential

Common Policy
Clarifications
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

Policy Question of the month: More ads than Content

● Advertising and other paid promotional material added to your


pages should not exceed publisher-content.
● Publisher-content includes images, videos, games, article text and
user-generated content created or managed by the publisher
1 Interruptive ads interstitials

Interruptive ads
interstitials
Unexpected full screen interstitial image ads
that appear during game play at the beginning of
a level or during the beginning of a content
segment are disruptive to users, as users expect
to begin game play or engage in content and are
surprised to see an ad appear

Proprietary & Confidential


2 2 Interruptive video interstitials: common violations

Unexpected video ad appears


during beginning of a content
segment

Proprietary & Confidential


Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

Policy Question of the month: Ad Modification Behaviour

● Hiding ad units at anytime (e.g., display:none), unless you're implementing a


responsive ad unit
● Implementing AdSense ad code in a way that covers content or where content covers
ads
● Placing ad units on a mobile site or a responsive design site in such a way which will
cause content and ads to overlap
● Manipulating the ad targeting using hidden keywords, IFRAMEs, or any other method
● Distributing ads in emails or software
● Manipulating the delivery or presentation of the ad to attract unwarranted attention
(e.g., ads sliding into the screen, ads zooming in/out).
● Triggering an ad click during user drag actions on a mobile web page.
Top 20 Violation Proprietary + Confidential

Issues Support Link/Description Video Explanation

More Ads Than Content https://support.google.com/publisherpolicies/answer/11169917 https://www.youtube.com/watch?v=2f4m_wjEu58

Reward Misleading https://support.google.com/admob/answer/7313578

Ads Obscuring Content https://support.google.com/publisherpolicies/answer/11127388?hl=en https://www.youtube.com/watch?v=xLXBRxzskTQ


Reward Disallowed
Implementation https://support.google.com/admob/answer/7313578

Deceptive Navigation https://support.google.com/publisherpolicies/answer/10502938?hl=en https://www.youtube.com/watch?v=UT2dBsU5yLI


Layout Encourages Accidental https://support.google.com/adsense/answer/1346295?hl=en#Encouraging_ac
Clicks cidental_clicks https://www.youtube.com/watch?v=UT2dBsU5yLI
https://support.google.com/adsense/answer/1346295?hl=en&sjid=124188261
46295495766-AP#Formatting_content_to_mimic_ads&zippy=%2Cexamples-
Format Mimicking of-unacceptable-implementations https://www.youtube.com/watch?v=m6GVHKnwTeQ
https://support.google.com/publisherpolicies/answer/11190248?hl=en#zippy=
Replicated Content %2Ctips-for-understanding-this-policy https://www.youtube.com/watch?v=llgY8ZSBLrM

Resizing/Missing ABG Request correct sizes for different placements on different devices

Content Obscuring Ads https://support.google.com/publisherpolicies/answer/11191353?hl=en https://www.youtube.com/watch?v=mMe8EExR7Ao


Top 20 Violation Proprietary + Confidential

Issues Support Link Video Explanation

Interstitial - Unexpected Launch https://support.google.com/admanager/answer/6309309?hl=en

Ads Interfering Severe https://support.google.com/publisherpolicies/answer/11035030?hl=en https://www.youtube.com/watch?v=2Bp-P_Ln8Fo


Google ads may not be placed on apps that promise payment or incentives
to users who click on ads, surf the web, read emails, or perform other
similar tasks. Placing Google ads on such apps may result in invalid
impressions or clicks and is therefore prohibited. Similarly, Google ads may
Apps that offer compensation not be placed on apps that primarily drive traffic to, promote, or provide
programs instructional materials on how to implement such services. https://www.youtube.com/watch?v=UuJEm60SxbU

Reward Unavailable https://support.google.com/admob/answer/7313578


To help ensure a good experience for users and advertisers, publishers
should clearly label Google ad units with only “Sponsored Links”, or
Mislabeling “Advertisements.” Any other labels are disallowed. https://www.youtube.com/watch?v=MnqHRnn_2Jc
https://support.google.com/adsense/answer/1346295?hl=en#Unnatural_att
Unnatural Attention ention_to_ads https://www.youtube.com/watch?v=j8eT4EPf0io
https://support.google.com/admob/answer/10502938?visit_id=6379552568
Sexual Content 90141499-3578592602&rd=1#content https://www.youtube.com/watch?v=112Lw253Zuc

No Content https://support.google.com/publisherpolicies/answer/11112688 https://www.youtube.com/watch?v=XRGe72oOmF0

Unsupported Language https://support.google.com/publisherpolicies/answer/10436912?hl=en https://www.youtube.com/watch?v=aK2wcfx2CJA


Proprietary + Confidential

ChatGPT related App Policy Recommendation

1) Admob has no specific AI-related policy to be launched;


2) Chatbox ads--if not adding significant value to users, it
might be flagged as policy violation under “replicated content”;
3) AI-generated image apps usually comply with our policy
Proprietary + Confidential

Quality & Rising Stars


(Play)
SEA/AUNZ Play Partnerships 2023

Why this matters


● Increase the number of high-quality apps and games

● Reward high-quality apps and games with increased user visibility (e.g.
higher ranking in user recommendations, and dedicated spaces for
featuring promotional content)

● Developers today have a limited understanding of what we mean by


high quality, beyond low crash and ANR rates

● Long-term, quality matters greatly for the long-term health of the


Android ecosystem, including privacy and security

Confidential + Proprietary
SEA/AUNZ Play Partnerships 2023

What we launched at I/O ‘23


● A unified quality framework

● Additional public resources on quality:

○ A new quality hub

○ An explanation of why quality matters for app treatment on Play

○ A video showcasing examples of high-quality apps on Play

Confidential + Proprietary
SEA/AUNZ Play Partnerships 2023
Unified Quality Framework
A high-quality app or game
Core value User experience Technical quality Privacy & security
Useful and/or fun Deligh ul to use Makes the most of premium Designed for safety
Goes beyond mobile devices

A high-quality presence on Google Play


Store listing Promotional content
Accurate and compelling Fresh with clear user benefits

g.co/play/featuring developer.android.com/quality
Confidential + Proprietary
SEA/AUNZ Play Partnerships 2023
A closer look at quality

Deliver value to users by Delightful to use, evoking The stability, performance, Design for privacy by
being useful or fun, both on positive sentiments through and resource utilization of focusing on minimization.
first use and over time. considered and differentiated an app or game that makes Minimize permission
design the most the OS and device requests, minimize location
Addresses the needs of its hardware. access, and minimize data
target audience. visibility

Includes: Includes: Includes: Includes:


● Content and feature ● Usability ● ANR/Crash Rates ● Giving users control
depth ● Accessibility and ● Start-up time and ● Transparency
● The right form factors localization loading times ● Encryption, integrity,
● Accurate marketing ● Visual appeal and ● Rendering and authentication
assets craftsmanship ● Battery and network
● User engagement ● Clear monetization usage
metrics expectations ● App size

Confidential + Proprietary
SEA/AUNZ Play Partnerships 2023
From good to great

Confidential + Proprietary
SEA/AUNZ Play Partnerships 2023 Google Play Rising Stars
An initiative to spot and support high potential developers (in terms of Play spend) early-on

How will this work?


1. Submit nominations via go/rising-stars
2. Nominations evaluated on a rolling basis and assigned service levels based on qualitative and
quantitative signals

Developers will be assigned to one of the following levels:


● Reactive Support: Access to an alias for console questions, reviews, featuring or product support

● Nurture & Grow: Developers in this level will receive email-based, 1:1 business development support
with access to training materials and webinars

● Core: This level is for developers who are experienced and have demonstrated that they are high
potential leads

● Review Later: With self serve Google Play Getting Started Guide for the POCs to share with the
developers
Confidential + Proprietary
You will be able to track the status of your nominations at go/rising-stars-status updated fortnightly
Proprietary + Confidential

Billing/Payment
Profile Shift
Proprietary + Confidential

Change of payment profile


Step 1: Submission: https://support.google.com/adsense/contact/SJ_type_country
Step 2: Provide the following information
- country
- currency
- complete address
- name of the company
- name of the representative of the company
- email
- business or personal profile
Note:
- This link will not be available for new account with $0 earning. Advise generate revenue before using the
link above or approach your dedicated SPM for strategic support
- It is advisable to set up your payment profile to the target country instead of changing it later
- Alternative link if the above link doesn't work: https://support.google.com/admob/gethelp
Proprietary + Confidential

APP OPEN ADS BEST PRACTICES

Billing Questions of the month: Change of billing profile

Preparation for billing profile change Common issues Note


1. Earning finalized in the
1. Bank, payment currency ready? 1. Bank cannot receive the currency of existing payment profile
2. ID/Passport of that country ready? your interest will remain. It won't be
(E.g UAE,US,AU etc) 2. ID/Passport rejected for forgery possible to transfer
3. Address ready? 3. Company cannot be verified based earnings to the new profile.
4. Company registration ready? on local regulations
4. Documents not submitted on time
Proprietary + Confidential

If you haven't received your EFT/ WT payments within


10-15 days, you can fill in this form to get the SWIFT
code to track the payments
Vist the following link to track : URL
Proprietary + Confidential

Alternative option for xborder


payment
Payment Challenges
& AnyMind Solutions for your
Growth

Natalie Do
Regional Head of Publisher Engagement
AnyMind Group

© AnyMind Group. All Rights Reserved. CONFIDENTIAL


Our Approach towards your Profitability
Increasing the profitability of App by increasing access to unlimited UAC budget, and
optimizing Monetization revenue.

Revenue

Before After

Revenue optimization Budget for UAC

16
© AnyMind Group. All Rights Reserved. Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
148 (WhatsApp)
4
Difficulties to run UAC

Limitations on Money Unnecessary cost


1 Delayed cash flow 2 transfer
3 burden for UAC

Takes time to get the cash from the mediation Pakistan has the limitation on the money Developer needs to create multiple credit
network, but needs to run the campaign to gain transfer(30K USD / Year), and it will limit the card/Google Ads account. It will take the time for
the revenue. It has the huge risk to run the UAC possibilities to run the campaign, and test the new publisher and hard to focus on app production.
without having the budget for UAC. application for publishers.

16
© AnyMind Group. All Rights Reserved. Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
148 (WhatsApp)
5
Overview of AnyCredit

Key Points
We upfront payment for UAC
campaigns, auto-deduct to your app Reduce your International transfer
Data-Driven
to almost ZERO per year.*
revenues and wire-transfer final profit
to you. All the transactions are
Immediately get access to unlimited
Data-Driven
operated by AnyMind.* UAC funds for your growth

*In case UAC investment is higher deductible revenue,


Eliminate all admin & accounting
we still need you to transfer additional UAC costs, but workload for Payment Data-Driven
& Credit for
the amount to transfer will be much lower than transfer Growth/Monetization
the full UAC amount.

16
© AnyMind Group. All Rights Reserved. Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
148 (WhatsApp)
6
How does AnyCredit works?

Common process AnyCredit

App Revenue App Revenue


Dependence on Payment cycle
& threshold
Difficult to utilize your Able to use your app
Publisher budget fully due to AnyMind revenue for UAC as
remittance limits Profit much as you want
inflow
Remittance limit : 30K USD No limit
Publisher

UAC UAC

Note: Currently we prioritize the support for Google Ads Non-PK


payment profile. For PK payment profile, we will instruct carefully if
you’re interested.
16
© AnyMind Group. All Rights Reserved. Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
148 (WhatsApp)
7
How to share the revenue?

IAA
Payment from In-App Advertising

Payment for Revenue from Google/ Other Demands & Open Bidding
Partners will be transferred to AnyMind by Google & demands.

Revenue share & payment for additional UAC cost AnyMind


Payment for Revenue (after revenue share and after deducting UAC
cost) will be received by AnyMind from all demands and transferred
to you by bank transfer or Paypal transaction.
Publisher
Payment for UAC cost

AnyMind will set the budget on UAC account based on the IAA
revenue and based on growth expectations. UAC

16
© AnyMind Group. All Rights Reserved. Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
148 (WhatsApp)
8
Money Flow for AnyCredit when no new UAC budget added

1st month 2nd month 3rd month onwards


G Ads account setup G Ads operation
Publisher G Ads operation
SDK implementation
Task Budget setup Budget setup
AnyMind Revenue optimization Revenue optimization
Revenue optimization

UAC
5,000 USD 6,000 USD
Budget

Example: AnyCredit Example: AnyCredit


Example:
IAA revenue 15,000 USD
10,000 USD Re-invest as Re-invest as 17,000 USD
UAC budget,
Money UAC budget,
adjusting adjusting
1,250 USD 1,750 USD monthly 2,000 USD
flow AnyMind 5% Service charge for UAC Budget
monthly
5% Service charge for UAC Budget 5% Service charge for UAC Budget
10%-15% Revenue share for 10%-15% Revenue share for 10%-15% Revenue share for Monetization
Monetization Revenue Monetization Revenue Revenue

Re-invest Based on monthly adjustment: Based on monthly adjustment: Based on monthly adjustment:
for Ad 5,000 USD 6,000 USD 6,000 USD
Budget

Profit processed
through AnyMind 3,750 USD 7,250 USD 9,000 USD
after Ad-budget No new investment No new investment No new investment
reinvesting &
Service charges
needed needed needed

16
© AnyMind Group. All Rights Reserved. Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
148 (WhatsApp)
9
Money Flow for AnyCredit with new UAC budget added

1st month 2nd month 3rd month onwards


G Ads account setup G Ads operation
Publisher G Ads operation
SDK implementation
Task Budget setup Budget setup
AnyMind Revenue optimization Revenue optimization
Revenue optimization

UAC
UAC Budget 10,000 USD UAC Budget 14,000 USD
Budget
Top-up Top-up

Example: Example: Example: Example: Example:


IAA revenue 5,000 USD
25,000 USD 4,000 USD
10,000 USD 45,000 USD
Money AnyCredit AnyCredit
~1,250 USD ~2,000 USD ~3,300 USD
flow AnyMind 5%-8% Service charge for UAC Budget
Re-invest and
5%-8% Service charge for UAC Budget
Re-invest and
5%-8% Service charge for UAC Budget
~10%-20% Revenue share for ~10%-20% Revenue share for ~10%-20% Revenue share for
Monetization Revenue
upfront for Monetization Revenue upfront for Monetization Revenue
UAC budget, UAC budget,
adjusting adjusting
Re-invest Based on monthly adjustment: Monthly based Based on monthly adjustment: Monthly based Based on monthly adjustment:
for Ad 5,000 USD on growth
10,000 USD on growth
6,000 USD
Budget strategy strategy

Profit processed
through AnyMind ~3,750 USD ~2,000 USD ~19,800 USD
after Ad-budget With $5k UAC Budget With $4k UAC Budget
No new investment
reinvesting & Top-up and save $5k Top-up and save $10k
needed
Service charges International transfer International transfer

17
© AnyMind Group. All Rights Reserved. Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
148 (WhatsApp)
0
Thank you!
Scan to book a
schedule with us!
Let us know if you need support in
- Monetization Growth
- Policy Violation Resolving
- UAC Growth
- Overcoming Payment challenges in PK
Let’s talk: TalkwithAnyMind

Natalie Do
Email ngocddb@anymindgroup.com
WhatsApp:+84 78 5038 148

Regional Head, Publisher Growth


AnyMind Group

© AnyMind Group. All Rights Reserved. 148 (WhatsApp) 171


Contact me at ngocddb@anymindgroup.com (Email) | +84 78 5038CONFIDENTIAL
Proprietary + Confidential

Privacy Update
Proprietary + Confidential

Google Consent
Management Requirements
Proprietary + Confidential

Why we’re here

Later this year, we will require all partners using our


publisher products — Google AdSense, Ad Manager, or
AdMob — to use a Google certified CMP that
integrates with the TCF when serving ads to users in
the European Economic Area or the UK.
Proprietary + Confidential

Google Privacy & Messaging Tab

Privacy & Messaging tab

Easily deploy regulatory consent and


opt-out messages
ie. GDPR messaging, US State Regulations…

Easily deployable tools to recover revenue


from ecosystem changes
ie. IDFA messaging or Ad Blocking recovery

New monetization methods beyond


classic display ads
Proprietary + Confidential

How Should You Proceed?

Details depending on your CMP status…

TCF CMP CMP No CMP

Proactively discuss Partner should We will make available a


certification with your encourage their CMP list of Google-certified
CMP to adopt TCF AND get CMPs which pubs should
certified w/ Google look to leverage.

Regardless, publishers must use a certified CMP when serving ads in the EEA/ UK
Proprietary + Confidential

● Help Center (translated)


○ Publisher Facing (GAM, AdMob, AdSense)
Proprietary + Confidential

Troubleshooting
guide for
common issues
Proprietary + Confidential

Ad Limit
Why do you face limit?
- Google may sometimes place a limit on the number of ads your AdMob account can show.
This might be a temporary ad serving limit to evaluate your traffic quality, or it might be
because we've identified invalid traffic concerns in your AdMob account.
- More information on invalid traffic: link
Situation:
1. Account level
What you could do:
1. We will monitor your traffic and update the serving status accordingly
2. Monitor your own traffic for suspicious traffic
3. Detailed Guide: https://support.google.com/admob/troubleshooter/12205649
Note:
- No appeal for ad limit or SPM support
- Ad limit typically last for < 30 days
Proprietary + Confidential

Payment deduction
Why do you face deduction?
- Your earnings may include deductions for various reasons. Google may adjust your
earnings if it detects invalid activity in your account or for activity that is not in
compliance with Google policies. Typically due to reasons such as invalid clicks or
policy violations that lead to inflated earnings

Notes
- Admob reserve the right to deduction and it cannot be appealed, for details:
https://support.google.com/admob/answer/7085268?hl=en#zippy=%2Cid-like-to-appe
al-the-deduction-can-i-do-so
- If you have yet to receive payment 10-15 business days after 21th of each month,
you could request for swift copy and track payment with your local bank.
https://support.google.com/admob/contact/swift_cuf_admob .If its within 10-15
working days, PLEASE WAIT
Proprietary + Confidential

Play Console termination


Why do you face play console termination?
- If your app or developer account violates any of our policies, we’ll take appropriate action as
outlined below. In addition, we’ll provide you with relevant information about the action we’ve taken
via email along with instructions on how to appeal if you believe we’ve taken action in error.
Repeated or serious violations (such as malware, fraud, and apps that may cause user or device
harm) of these policies or the Developer Distribution Agreement (DDA) will result in termination of
individual or related Google Play Developer accounts.

What you could do if you have questions about your terminated play console accounts?:
1. Appeal to playteam : URL

Notes
- Any new account that you try to open will be terminated as well (without a refund of the
developer registration fee), so please do not attempt to register for a new Play Console account
while one of your other accounts are terminated.
Proprietary + Confidential

Pin Verifications Failed


Why you haven’t received your PIN mails for address verification?
You can refer to Problems with your address verification (PIN) article for common reasons of why you haven’t received your PIN mails.
Also, we covered some most common questions from publishers:
● Why haven't I received my PIN mail?
● What is a valid payment address?
● My address verification failed, what should I do?
● I haven’t passed address verification after 4 months and my ads are not showing now. What should I do?
● I requested multiple PINs, should I wait for the latest PIN number?

What you could do if you have trouble receiving pin in PK:


1. Double check on address. Make sure you include the 5-digit Pakistani postal code in your payment address for letter delivery.
2. The mail is delivered by local post office 'Pakistan Post', you can check with a local post officer if you've had to wait for more than 3
weeks.
3. If you haven't received your PIN after 3 weeks, you can request a replacement PIN..
4. If you have requested 3 additional replacement PINs yet still not received, you could refer to PIN troubleshooter for further assistance.
Proprietary + Confidential

Admob Account disapproved


Why do you face new admob account disapproved?
- Every approval process is done independently; Each case will be treated as a
unique case
-If your account has been inactive for > 6 months (Definition: Served 0 ads imp), you
have to go through approval process again

What you could do?


- Not much could be done if you cannot be granted the approval
- Do not transfer or sale of accounts, you take your own risk for such transactions. its
against the TOS and it might get banned!
Proprietary + Confidential

Admob Account suspension


Why do you face admob account suspension?
- We may temporarily suspend your account if our policies are repeatedly or egregiously violated. We may
also temporarily suspend your account if there’s an issue with your payment information. This could be due
to an issue with your payment information in AdMob or a billing or payment issue in another Google product
(for example, Google Ads).

What you could do if you have questions about your suspension:


1. Support center/SPM to provide more details to payment team

Notes:
- If your account is suspended, it’ll be placed on immediate payment hold and no ads will be displayed for
approximately 30 days for policy or spam. As soon as the suspension period has ended, we’ll automatically
re-enable your account, remove the payment hold, and begin displaying ads.Please note that we’ll continue
monitoring your account for compliance. If additional violations are accrued then we may need to disable
your entire account. If this occurs then we may withhold earnings associated with violations, up to your total
earnings in the past 60 days, in order to refund impacted advertisers (where appropriate and possible).
Proprietary + Confidential

Ads not showing


What you could do if your ads is not showing
1. Ad inspector : URL
2. Common Error code and reason: AND & IOS
3. SDK integration issue: AND & IOS
4. More guide can be found: URL
5. Wait for 24 hours at least
Proprietary + Confidential

Unable to resolve policy violation despite numerous try


Checklist
1. Have you resolved issues in ALL your past versions?
2. Have you had repeated action in the past? If yes, you might need to consult your
account manager

Notes:
- Use firebase remote-config, such that you could make changes to your placement over the cloud in
all your past versions
- DO NOT DO THIS: Whenever a policy warning arises, remove all the ads placement hoping system
will approve your app and afterward add back the ads placement.
Proprietary + Confidential

eCPM Myth
Advise:
1. eCPM is a result of all the best practices highlighted in this playbook. There is no single explanation
to your eCPM fluctuations. Focus on adoption of best practices, premium format, publish in the right
market, result will eventually shown
2. eCPM is likely to be impacted by traffic because when you compare eCPM from today from eCPM two years
from now, you aren’t comparing the same thing because the makeup of your traffic will be different for these
two periods of time. There are cases where an app experiences a lot of international growth, and that
international traffic might not monetize as well as domestic traffic.
a. For example, one publisher who had seen a slight decrease in her eCPM over the years, despite the
uplift in revenue. What we saw was that a lot of the traffic was coming from countries outside of the US
such as Latin America and Asia and generally cost per click is driven by purchasing power of the user
in any given country. as a result, even though she was making more revenue, her eCPM had
decreased slightly but that was mostly because of the makeup of her traffic.
b. The way that user behavior can impact eCPM is based on how users interact with your app. So lets
say for example that your app grows quite a bit, and you have a lot of return users. return users are
less likely to click on ads than unique users (users who are coming to your app for the first time).How
users interact with your app impacts your eCPM, if you have a lot of return users vs unique users, they
aren’t as likely to click on ads as often as users who come one time. if you have a app with a lot of
regular users, they will click less than users who come for certain features and then leave immediately.
Proprietary + Confidential

Legal concerns on contents


Note: Legal standards vary greatly by country/region. Content that violates a specific law in one country/region may be legal in others.
Typically, we remove or restrict access to the content only in the country/region where it is deemed to be illegal. When content is found
to violate Google’s content or product policies or Terms of Service, however, we typically remove or restrict access globally. Note: This
is not under our team's decision but our legal team*

What you could do?


- Submit your concerns with this: URL
Proprietary + Confidential

How to proceed with ad testing


Note
1. It's important to enable test ads during development so that you can click on
them without charging Google advertisers. If you click on too many ads without
being in test mode, you risk your account being flagged for invalid activity.

Notes:

- Leverage on test devices for ads testing, guide can be found here: URL
-
Proprietary + Confidential

What if ads testing failed


Note
1. It's important to enable test ads during development so that you can click on
them without charging Google advertisers. If you click on too many ads without
being in test mode, you risk your account being flagged for invalid activity.

Notes:

- Leverage on test devices for ads testing, guide can be found here: URL
-
Proprietary + Confidential

Diminishing Clicks
Note
1. Google is protecting the digital ecosystem by ensuring that users engage with
ads on purpose.
Checklist
1. Check your format implementation is policy compliant, refer to slide 145/146
2. You could leverage Firebase & 1st party data to identify potential invalid users
who might have clicked ads more than the expected frequency. Create an
Audience and apply it towards Remote Config to achieve this use case.
3. Impose an ads frequency under the the ad unit setting for formats such as
rewarded and interstitial

You might also like