Playable ads: the complete guide for mobile games.
A playable ad is an interactive ad that lets someone try a small part of a mobile game before installing it. Instead of watching a video, the player taps, swipes or makes a choice, and the ad ends on a button that opens the app store. This guide covers how they work, where they run, each network's file specs, what works, and what they cost.
Get a playable madeWhat are playable ads?
Playable ads are short, interactive slices of a game that run inside an ad. They are usually built in HTML5, load inside the ad network's player, and last from a few seconds to about a minute. The player learns one mechanic, plays it, and reaches an end screen with a single call to action: install the game.
They exist because a game is easier to show than to describe. A video asks someone to imagine playing; a playable lets them do it. That has made playables a standard format in mobile game user acquisition, next to video and static ads, on the major networks that run app-install campaigns.
How playable ads work
Nearly every playable ad follows the same three parts:
- Hook and tutorial. In the first seconds, a hand, an arrow or one short line shows what to do. Unity's Luna playable guide calls the tutorial the most important part of the experience.
- Gameplay. A slice of the core loop: a level, a puzzle, a choice. AppAgent puts typical interactive gameplay at 15 to 60 seconds.
- End card. A full-screen message and one clear button. When the player taps it, the ad calls the network's own function to open the store, such as
mraid.open()on AppLovin and Unity orFbPlayableAd.onCTAClick()on Meta.
Several networks also forbid sending people to the store automatically or on their first tap: the player has to choose to go.
Playable ads vs video ads
They do different jobs. A video ad earns attention in a feed and can tell a story in 15 or 30 seconds. A playable ad asks for more effort, so it reaches fewer people, but the ones who play have already tried the game before they reach the store page.
Liftoff's 2025 Mobile Ad Creative Index, built on over 4.7 trillion impressions, found that playables' impression-to-install rate was 8 times that of non-playable formats for top spenders, and 16 times for other game advertisers. Many studios run both formats, and some networks pair them: Meta shows a short video before the playable.
Making the video side too? See AI video ads for mobile games.
Where playable ads run
Playables run on the networks that serve app-install campaigns: Meta (Facebook and Instagram), Google Ads App campaigns, AppLovin, Unity Ads, Liftoff and Vungle, TikTok and Pangle, and Mintegral, among others.
One recent change: Unity shut down direct campaigns on the ironSource Ads network on 30 April 2026 and moved advertisers to Unity Ads. Only the ironSource programmatic exchange still runs, with a 4 MB limit and MRAID 2.0.
On TikTok, playable ads are now available only in Smart+ app-promotion campaigns, according to TikTok's help center (September 2026).
Playable ad specs by network
Each network wants its own file. The details below come from each network's own documentation, checked in October 2026. Networks change these rules, so check the source before a big upload.
| Network | File | Max size | MRAID | Store click |
|---|---|---|---|---|
| Meta (Facebook, Instagram) | Single HTML file, or ZIP with index.html | 5 MB (Help Center); the developer docs still say 2 MB for one HTML file | No: must work without mraid.js | FbPlayableAd.onCTAClick() |
| Google Ads (App campaigns) | ZIP, up to 512 files | 5 MB | Optional | ExitApi.exit() from exitapi.js |
| AppLovin | Single HTML file, assets inline (base64) | 5 MB | Yes, MRAID 2.0 | mraid.open() |
| Unity Ads | Single inlined index.html | Under 5 MB | Yes, MRAID 3.0 | mraid.open() |
| Liftoff / Vungle | Single HTML file or ZIP | Up to 5 MB (recommended) | Yes | mraid.open() (not window.location) |
| TikTok / Pangle | ZIP with index.html and config.json | Under 5 MB compressed | No: must not use mraid.js | window.openAppStore() via TikTok's playable SDK |
| Mintegral | Single HTML file | 5 MB | Not stated by Mintegral | Not stated by Mintegral |
The short version: 5 MB is the usual ceiling. AppLovin, Unity and Liftoff use MRAID and mraid.open(); Meta, Google and TikTok use their own store-click functions, and Meta and TikTok say not to include mraid.js. None of the spec pages sets a maximum length for a playable.
Rules most networks share
- No external network calls. Everything the playable needs is inside the file (AppLovin, Meta, Unity, TikTok, Liftoff).
- No store redirect without a deliberate tap, and not on the first tap (AppLovin, Unity).
- Sound only after the player interacts (AppLovin, Google, Liftoff).
- Portrait and landscape (AppLovin, Unity, Liftoff). Meta asks for portrait-first and responsive.
- Leave the close button to the network: don't cover it and don't draw your own (Unity, Liftoff).
- Test before uploading in the network's own tool, such as AppLovin's Playable Preview or the Google Ads HTML5 Validator.
What makes a playable ad work
- Show what to do in the first seconds. A finger icon, an arrow or a highlighted move. If the player has to guess, they leave.
- One mechanic, easy to start and slightly challenging. The thing the game is built on, not a tour of its features.
- Match the real game. The same art and feel the player finds after installing, so the ad doesn't promise a different game.
- Give feedback and hints. React to good and bad moves, and nudge players who stop.
- End on a full-screen call to action. A short message, the game's branding and one button; Unity's Luna guide suggests making the whole end screen clickable.
- Test one change at a time: the hook, the difficulty, the end card, winning or losing.
How much do playable ads cost?
Published prices vary a lot, mostly with how custom the playable is:
- Template-based or similar to an earlier build: mraid.io lists $290 for an ad similar to its portfolio, $590 for a unique one and $1,490 for a complex one.
- Custom builds from an agency: AppAgent puts an outside build at $3,000 to $8,000 per playable, with a 2 to 4 week turnaround.
- Made in-house: cheaper per playable once a team and tools are set up, but that setup is the cost.
Creatiles builds playables from a game's APK and one recording, with a file for each network, aiming to deliver within 24 hours. See playable ad production and pricing.
Playable ad examples
These are recordings of 2D story playables made with Creatiles: the player makes the choice that moves the story on. See twelve, story and 3D, with what each one shows, in the playable ads examples.
Quick answers
How long should a playable ad be? No network's spec page sets a maximum. The gameplay part typically runs 15 to 60 seconds, then the end card.
Do playable ads need MRAID? Depends on the network. AppLovin, Unity and Liftoff use MRAID; Meta and TikTok say not to include mraid.js; Google makes it optional.
What size can a playable ad be? Usually up to 5 MB. Keep a single HTML file for Meta under 2 MB to be safe, and the ironSource exchange under 4 MB.
How are playable ads made? In HTML5, usually with a game engine export or a playable tool, then packaged once per network. Studios build them in-house, hire an agency, or use a service.
Sources
Checked October 2026. Specs and prices are the sources' own figures.
- Meta Business Help Center: playable ad specs
- Meta for Developers: playable ads
- Google Ads Help: HTML5 ads for App campaigns
- AppLovin: creative best practices and guidelines
- Unity Ads: playable specifications
- Unity Ads: playable best practices
- Unity Luna: playable must-have features
- Unity: ironSource Ads sunset
- Liftoff: interactive ad integration
- TikTok Ads: playable ads
- Mintegral: asset specs
- AppAgent: What are playable ads?
- mraid.io: playable ad prices
- Liftoff 2025 Mobile Ad Creative Index (press release)