Do it yourself
$109 per platform, one-time
The WebViewGold license: a finished Xcode or Android Studio project. Paste your URL, set name and icon, switch on features, build and submit. Free updates forever.
See plans on the main pageGoogle Play rejection
Google is fine with ads. It is not fine with ads that surprise the user, cover the content, appear before the app is usable, or reach children through an uncertified network. WebViewGold's AdMob integration has a handful of settings that decide which side of that line you land on.
From $109 one-time per platform, or let our team do it all from $698.
The policy has three parts. Placement and timing: full-screen ads must not appear unexpectedly, for example at app start, between every tap, before content has loaded, or in a way that cannot be dismissed; ads must not be confused with app content or system notifications and must stay inside the app. Declarations: the "Contains ads" answer in App content, the advertising ID in the Data safety form and the content rating must agree with what the app does. Audience: apps that include children in their target audience may only use ad SDKs certified for families and must not show inappropriate ad content.
Reviewers do not read your AdMob settings. They install the app, tap around for a minute and watch what happens. An interstitial on the second tap, before they have seen your product, is enough for a rejection.
Interstitials at launch, during loading, or right after the splash screen are the classic violation. Show them after a completed action, at natural breaks.
Full-screen ads need a visible close option after a short moment; ads that trap the user or re-open themselves are prohibited.
No banners styled as buttons of your app, no ads that imitate system dialogs or notifications, no ads in the status bar or on the lock screen.
If AdMob is enabled in Config.java, answer yes under App content, Ads, and declare the advertising ID in Data safety. The reverse mismatch, ads declared but none shown, is harmless; the first one is not.
For target audiences that include children, only ad SDKs from Google's families-certified list are allowed, with child-directed treatment configured. The simplest compliant choice for a children's app is no ads.
Ad content must be appropriate for the age rating of the app. Configure content filters and the maximum ad content rating in your AdMob account.
All options are in Config.java; the IDs go into strings.xml.
Create the app in your AdMob account, then paste the app ID and the banner and interstitial unit IDs into strings.xml as described in the AdMob documentation. A missing or wrong app ID crashes the app at launch, which shows up as a broken-functionality rejection instead.
Set SHOW_BANNER_AD to true for a banner that sits outside the WebView. Make sure your web app's bottom navigation or floating buttons are not hidden behind it; the custom CSS injection can add bottom padding when the page runs in the app.
Keep SHOW_AD_AFTER_X high enough that a reviewer can explore the app before the first full-screen ad, and leave INCREMENT_WITH_TAPS false so typing and scrolling do not count toward the next ad. Counting page loads instead of taps makes the timing predictable.
Add URL fragments such as "/thank-you/" or "/result" to AD_TRIGGER_URLS so interstitials appear after a completed action rather than on a counter. This is the placement Google describes as acceptable, and it converts better too.
Rewarded ads are user-initiated, which makes them the safest format. Enable ENABLE_REWARDED_ADS and trigger them from your web app when the user chooses to watch an ad for a benefit; keep USE_REWARDED_ADS_WHERE_POSSIBLE false if your website code decides when to play them.
Leave ASK_FOR_AD_CONSENT true so Google's consent management shows the required message to users in regions that need it, and configure the message in your AdMob account. Then answer yes under App content → Ads and add the advertising ID to Data safety.

Great way of converting your web app to a native app! Fast turn-around, and a great way to get your apps into the app stores without the need to develop a full native app!
| Passes | Flagged | |
|---|---|---|
| First impression | Splash, content, then ads after real use | Interstitial right after launch or on the first tap |
| Frequency | One interstitial after a completed task or a generous page count | Ads every few taps, ads while the user types |
| Banner | Fixed banner that never covers navigation | Banner overlapping buttons or appearing to be part of the page |
| Rewarded | Opt-in with a clear benefit, closable | Forced "reward" ads with no opt-out |
| Children | No ads, or families-certified SDK with child-directed settings | Default AdMob in an app that appeals to children |
INCREMENT_WITH_TAPS false.ASK_FOR_AD_CONSENT true.Yes. Any ad format, including rewarded and banners, means the app contains ads. The label appears on your listing and reviewers check it against what they see.
No. Full-screen ads before the user has done anything in the app are the most common ads-policy rejection. Show them after a completed action or at a natural break.
AdMob has separate policies, for example about invalid traffic and clicking your own ads during testing. Use test ads and a registered test device during development, and only switch to live ad units for the release build.
Same result, different amount of work on your side. All three come with the approval guarantee and 24/7 human support.
$109 per platform, one-time
The WebViewGold license: a finished Xcode or Android Studio project. Paste your URL, set name and icon, switch on features, build and submit. Free updates forever.
See plans on the main page$349 per license, one-time add-on
No Mac, no Xcode, no Android Studio: configure in the browser, we build both apps in the cloud and hand them to App Store Connect and the Play Console.
How the Cloud Builder works Try the free demo$698 per platform $798
Send us your URL and icon. Our team configures, builds and delivers your app within 72 hours, white-label, with source projects. Both platforms for $1,158.
Full Service details Powered byWinter Sale prices valid until December 31, 2026.
App Store & Google Play approval guarantee – or your money back within 14 days
Rather hand it over? Full Service: we configure, build and deliver within 72 hours, from $698 per platform. Questions? Chat with us 24/7.
Refunds are granted under the conditions listed in our FAQ: a non-content rejection by Apple and/or Google, claimed within 14 days after purchase.