Monetization: Disruptive Ads policy

Ads Policy: Disruptive or Unexpected Interstitial Ads

Medium RiskEasyTypical Fix: 1-2 days0 Reports
Also known as:Issue found: Disruptive AdsFull-screen ads shown on app launch or exitAds interfere with core app functionalityInterstitial ad missing a functioning close buttonAd impersonates a system notification or dialog

Our Take

Google rejects apps that show full-screen interstitial ads at unexpected moments — such as on app launch, on exit, or interrupting an in-progress task — rather than at natural breaks like the end of a level or chapter.


This falls under the Ads policy's Disruptive Ads and Better Ads Experiences clauses, which prohibit ads that force a user to interact before they can use the app and require a functioning close control. It's commonly triggered by App Open ads misconfigured to fire on every cold start, back-to-back interstitials stacked without a user action between them, or ad creatives that visually mimic system notifications or OS dialogs.

Resolution Guide

01

Audit every interstitial trigger point

List every place in your code that calls an interstitial's show() method and check whether it fires on cold launch, app exit/back-press, or mid-task rather than at a natural content break.

02

Move launch-time monetization to App Open ads, not interstitials

Google explicitly recommends the App Open ad format (not a standard interstitial) for monetizing app launch or return-to-foreground moments, since it's designed for that placement.

03

Only trigger interstitials at natural transitions

Acceptable placements are things like end-of-level, after a score screen, or end-of-chapter — moments where the user has completed a discrete action, not mid-task interruptions.

04

Cap frequency and prevent stacking

Limit interstitials to no more than one per two user actions, and never trigger a second interstitial immediately after the first closes without an intervening user action in between.

05

Verify the close button is visible and functional

Standard interstitials can delay the close button up to 5 seconds; high-engagement video interstitials up to 12 seconds; third-party bidding video interstitials up to 30 seconds. Beyond those windows, the close control must be visible and tappable — don't hide or disable it further.

06

Remove any ad creative that mimics system UI

Check third-party ad networks' creative for anything styled like an Android system notification, permission dialog, or another app's interface — this violates the Deceptive Ads / Unauthorized Use of System Functionality clause even if the ad content itself is otherwise compliant.

07

Test with ad frequency capping enabled in your mediation setup

If using mediation (AdMob, ironSource, etc.), configure frequency capping and placement rules at the mediation layer, not just in your app code, so all demand sources respect the same timing rules.

08

Re-test the full user flow before resubmitting

Walk through cold launch, normal usage, and app exit on a physical device to confirm no interstitial fires outside the natural-break points you've defined, then resubmit for review.

Example Rejection Email

From:Google Play Developer Support
Subject:Policy violation - Ads Policy: Disruptive or Unexpected Int
Google Play Console — Policy status Issue found: Disruptive Ads Your app doesn't comply with our Ads policy. We found that your app shows full-screen interstitial ads at unexpected times, such as on app launch, on exit, or interrupting a task the user has chosen to complete. Ads must appear at natural transition points and must not force a user to interact with an ad before they can use the app. Action required: - Remove or reposition interstitial ads shown on app launch, app exit, or mid-task - Ensure interstitials only appear at natural breaks (e.g., end of level, after task completion) - Confirm a visible, functioning close button is present on every interstitial - Limit ad frequency so interstitials do not appear back-to-back without an intervening user action Learn more: https://support.google.com/googleplay/android-developer/answer/9857753

Consider Appealing

Appeal only if you've already restricted interstitials to natural break points and believe the rejection was triggered by a third-party ad network's creative or mediation misfire outside your control — include mediation config screenshots and a screen recording showing your actual trigger logic. If your interstitials genuinely fire on launch, exit, or mid-task, don't appeal — Google's notices for this policy are typically terse (just "Disruptive Ads" with no detail), so isolate the trigger yourself by removing ad placements one at a time, fix the timing, and resubmit rather than requesting reconsideration on unchanged behavior.

Generate Appeal

Before & After

Before — Rejected

A casual game shows a full-screen interstitial every time the app is opened (including returning from the background) and stacks a second interstitial immediately after the level-complete ad closes.

After — Approved

The launch-time ad is replaced with Google's App Open ad format capped to once per session, and the level-complete interstitial is capped to once every two levels with no back-to-back stacking.

What changed: Using the format Google designates for launch moments and enforcing a minimum gap between interstitials removes both unexpected-timing and back-to-back-stacking triggers for the Disruptive Ads policy.

Community Solutions · 0

Sign in to share your solution.