Publishing an HTML5 game on Google Play
Games are the one category where a website wrapped as an app is not suspicious — a game is the functionality. The Play Console asks different questions of games, and the ads and purchases rules bite harder. Here is the game-specific path.
App type and category
When you create the app in Play Console, choose Game, not App. Games get their own store surfaces, a category picker (Arcade, Puzzle, Casual…) and the game-specific questions below. Changing type later is possible but resets some listing fields.
Content rating: IARC for games
The IARC questionnaire asks about violence, fear, sexual content, language, controlled substances, gambling themes, and interactive elements (users interact, shares location, in-app purchases). Answer for what the game contains — cartoon violence in a platformer is a specific option and yields a low rating. Undeclared content found in review is a metadata violation plus a re-rating.
Ads in a game
- Declare "contains ads" if any ad network is present, web or AdMob.
- Rewarded ads must be opt-in: the player chooses to watch for a reward, with a clear decline option. Auto-playing a rewarded ad is a violation.
- Interstitials may not appear at app launch, before the player has interacted, or in a way that blocks the game unexpectedly. Between levels is the accepted pattern.
- Banners may not sit where gameplay taps land.
- If the game targets children or could appeal to them, the Families policy restricts ad networks to Families-certified ones and forbids personalised ads.
If your web game already runs a web ad network, don't also enable AdMob in the builder on the same screens.
In-game purchases: Play Billing
Virtual currency, skins, level packs, remove-ads purchases — all digital goods consumed in the app, all Play Billing only. A WebView wrapper that sells them through Stripe or PayPal is rejected under the payments policy. Options:
- Make the Play version free with no purchases (ad-supported), and keep web purchases on the web version.
- Integrate Play Billing natively — beyond a wrapper; requires a native bridge into the game's JavaScript.
- List as a Trusted Web Activity and use the Digital Goods API from the game's JavaScript, which routes purchases through Play Billing. The sister site FreeWebToApp covers making the game a PWA first.
Declare purchases in the console's pricing settings and in the IARC questionnaire.
Builder settings for games
- Orientation: lock to what the game supports. Landscape for most action games; portrait for casual.
- Screen mode: immersive (hides status and navigation bars).
- Splash: black or the game's background colour so the canvas appears seamlessly.
- Exit confirmation: on, so the back gesture doesn't kill a session.
- Pull to refresh: off — a downward swipe in a game must not reload it.
- Offline screen: on; if the game is self-contained, the WebView cache may keep it playable offline for a while, but don't promise offline play unless you've tested it.
Performance and the pre-launch report
Play's pre-launch report runs your game on real low-end devices and flags crashes, ANRs (the UI frozen for 5 seconds) and excessive memory. WebGL games that assume a desktop GPU are the usual offenders. Test on a cheap phone; cap the render resolution; unload textures between levels. A report full of red slows review and, after launch, drags the listing down in Android vitals.
Listing assets for games
Screenshots in the locked orientation from the installed game — gameplay, not menus. A promo video matters more for games than for any other category; the promo video tool handles short loops from captures. Feature graphic: key art, not text. The listing guide has the game-specific notes.
Frequently asked questions
Does the minimum-functionality policy apply to games?
A game is functionality, so a wrapped HTML5 game is not the pattern the policy targets. Reviewers still check that it works, that ads follow the ads policy and that purchases use Play Billing.
Can I sell coins or skins through my own web payment inside the app?
No. Digital goods in a Play-listed app must use Play Billing. Remove purchases from the Play version, integrate Play Billing natively, or use the Digital Goods API in a Trusted Web Activity.
Can I show rewarded video ads?
Yes, if the player opts in each time with a clear choice to decline. The builder's rewarded flow is built that way.