Try for free
Learn/Strategy

How do you know a playable ad is working?

The metrics that matter for playable ads, what to compare them against, how long to wait, and when to cut, iterate or scale. A method for UA teams.

Written by Yonathan Avivi, Head of Marketing, Genie Labs

Technical review by Yotam Wolf, CTO · Published Oct 26, 2026 · 11 min read

Cut, iterate
or scale. The metrics that decide.

A playable ad is working when it brings in installs at an IPM and CPI at least as good as your current best creative on the same network, and those players retain and pay back on your D7 target. Engagement inside the ad tells you why it wins or loses; D7 retention and early ROAS tell you whether to keep paying for it.

Everything else is a supporting signal. The rest of this page is the method: which numbers to read, in what order, against which baseline, and how much data you need before you decide.

Key takeaways
Judge a playable in three layers: delivery (IPM, CTR, CPI), player quality (D1, D7 retention, early ROAS), and in-ad behavior (engagement, completion). Decide on the first two. Diagnose with the third.
Compare against your own best video or playable on the same network, same geo, same week. Never compare across networks; each one counts impressions and clicks differently.
Do not decide on the first days of spend. Set a minimum sample before launch and wait for the D7 cohort to mature.
Cut when delivery and quality both trail the control. Iterate when one layer is strong and the other is weak. Scale when both beat the control on enough data.
Genie Playable builds each new version from the last one, without a developer, so the thing you change after a read is the only thing that changes.

Which metrics tell you a playable ad is working?

Read them in this order. The order matters, because a playable can look great on one layer and fail on the next.

MetricHow to calculate itWhat it tells youUse it to
IPM (installs per mille)Installs ÷ impressions × 1,000How well the playable turns attention into installs. The network's algorithm reacts to this most.Decide if it can win delivery
CTRClicks ÷ impressionsHow often players tap through. On playables, many clicks happen after play, at the end card.Diagnose the CTA and end card
CVR (click to install)Installs ÷ clicksWhether the store page delivers on what the ad promised.Spot misleading hooks
CPISpend ÷ installsWhat a user costs you. Moves with bids and auction pressure, not only with the creative.Check efficiency against target
Engagement rateFirst interaction ÷ playable displayedWhether the hook gets a first tap.Fix the opening seconds
Completion ratePlayers reaching the end state ÷ players who startedWhether the challenge length and difficulty fit.Fix difficulty and fail state
D1 and D7 retentionPlayers active on day one or day seven ÷ installs (from your MMP)Whether the playable attracted players who like the real game.Catch hooks that mislead
Early ROAS (D0, D3 or D7)Cohort revenue ÷ cohort spendWhether the players pay back on your model.Decide what stays live and scales

Engagement and completion live inside the ad. You only get them if the playable fires events and the network reports them. AppLovin documents a fixed set of in-playable events for this. The full event list and what each network allows is on our page on what to track inside a playable ad.

Why isn't IPM enough on its own?

Because the network loves what converts, and your business loves what pays back. Those are often different playables.

UA consultant Matej Lancaric reviewed about 360 creatives that ran for 30 days for one game across four networks, in an analysis published in August 2026. His read: "IPM tells you what the algorithm loves. ROI tells you what your business loves." On Meta, a set with lower IPM returned more than a set with higher IPM.

A playable is a strong candidate for this trap. A satisfying puzzle with a fail state can pull a lot of curious installs from people who never open the game again. That shows up as high IPM, low CPI and weak D7. If the playable shows gameplay the real game does not have, the gap gets wider. We cover that risk in playable vs video vs end card.

What should you compare a playable against?

Three baselines, in order of how much you should trust them.

BaselineWhy it worksWatch out for
1. Your current best creative on the same network, geo and week (the control)Same audience, same auction, same attribution rules. The only clean comparison.A long-running control has history; the new playable starts cold. Give it the same sample before you judge.
2. Your video baseline on that networkTells you if the playable earns its higher production cost.Playables often win IPM and lose D7, or the reverse. Compare both layers.
3. Published genre or market benchmarksUseful sanity check when you have no history.Benchmarks mix very different games. Never use them to make the final call.

Never compare across networks. AppLovin, Meta, Google and Unity define impressions, engagements and click attribution differently, and self-attributing networks often leave creative-level revenue unassigned. A playable's IPM on AppLovin and a video's IPM on Meta are different numbers that happen to share a name.

When you do need a published reference, use ones with a clear method:

·Playable vs non-playable delivery. Liftoff's 2025 Mobile Ad Creative Index found impression-to-install rates for playables were eight times those of non-playable formats for top-spending games, and 16 times for other game advertisers (2024 data). That is a format-level average. It does not mean your playable should beat your video by that margin.
·Retention. GameAnalytics' 2026 benchmarks put median mobile D1 retention around 22% and median D7 just under 4% across 2025, with the top 25% of games at roughly 6 to 7% D7. Your own game's organic retention is a better bar: a playable cohort that retains well below your organic users is pulling the wrong players.
·IPM by genre. AppsFlyer reported hypercasual game ads generated about 48 installs per thousand impressions in its 2024 creative report. Midcore and casino games run far lower. Use your own history.

More sourced numbers, each with its method and year, are on our playable ad statistics page.

One read in. One focused change out. Genie Playable builds the next version from the last one, so if the read says "fix the fail state," the fail state is the only thing that changes. No developer in the loop.

Try Genie

How long should you wait before judging a playable?

Long enough to reach a sample you chose before launch, and long enough for the D7 cohort to mature. Not a number of days you picked because the dashboard looked bad on day two.

The networks say the same thing in their own words:

·Google recommends excluding the first five to ten days of an App campaign experiment so the learning period does not skew results, and lets you read results at 80%, 85% or 95% confidence.
·Unity's Creative Testing docs give no fixed number. They tell you to calculate the required impression sample with a sample size calculator and to check significance before you change your UA plan.
·UA practitioners who publish their method, such as RocketShip HQ, size tests by conversions per day rather than by days: roughly ten conversions a day per creative is comfortable, two or three is a floor when conversions are expensive.

A method that works on any network

01Pick the decision metric before launch. IPM for "can it win delivery," D7 ROAS for "should it scale."
02Set the minimum sample. For IPM, estimate impressions per variant with a sample size calculator. As a rough guide, telling an IPM of 15 from an IPM of 18 with 95% confidence and 80% power takes about 28,000 impressions per variant. Smaller gaps need far more. The worked example is in our guide to A/B testing playable ads.
03Set the spend floor. Multiply the installs you need by your expected CPI. If the playable needs 400 installs at a $2.50 CPI, budget at least $1,000 for the read.
04Wait for the cohort. D7 ROAS for installs on day ten is not readable until day 17. Read delivery early, quality late.
05Read once, at the planned point. Checking every morning and stopping when it looks good is how false winners get scaled.

Teams we talk to most often go wrong at step five. A playable gets a slow start because the network is still exploring, someone pauses it on day three, and the test never produces an answer. If you cannot afford the sample, test fewer variants, not shorter. Our page on how many playables to test covers the budget math.

When should you cut, iterate or scale a playable?

Once you have the sample, the call is usually clear. Put the delivery read and the quality read side by side.

Delivery (IPM, CPI) vs controlQuality (D7 retention, early ROAS) vs targetCallWhat to do next
BetterAt or aboveScaleMove budget, then start the next variant before fatigue sets in
BetterBelowIterateThe hook pulls the wrong players. Make the playable show the real game more honestly
WorseAt or aboveIterateRight players, weak conversion. Work on the first three seconds, CTA and end card
WorseBelowCutKeep the learnings, drop the concept
Not enough dataNot enough dataKeep running or stop the testDo not make a call. Extend, or accept the test was too small

Use in-ad data to choose what to iterate

Once a playable lands in an "iterate" row, the in-playable funnel tells you where to work:

·Low engagement rate: the hook or the first instruction is unclear. Google's own guidance for HTML5 ads is to get players doing the interaction within three or four seconds.
·High engagement, low completion: the challenge is too long or too hard. Shorten it or move the fail state earlier.
·High completion, low CTR: the end card or CTA is weak, or the win state leaves nothing to want.
·Good CTR, low CVR: the store page does not match the ad. Check screenshots and the first-time experience.

Change one of these at a time. Our guide to iterating a winning playable goes deeper on what to vary.

What makes playable results hard to read?

·Mixed reporting. TikTok's help center notes that when an ad group runs both video and playable ads, performance is reported at the ad group level, with no per-ad breakout for individual playables. Test playables in their own ad group there.
·Uneven in-ad analytics. AppLovin, Mintegral and Unity allow some in-playable tracking. Most other networks do not, so engagement data exists for some placements and not others.
·Self-attributing networks. Creative-level revenue is often only partly attributed, so D7 ROAS per playable can be noisy. Read it at the creative-set or campaign level where needed.
·Fatigue. A playable that won last month can lose this month with no change. Recheck winners against a fresh control.

Same playable, every network. Genie Playable exports optimized builds for Meta, AppLovin, Unity Ads, Liftoff, Google Ads, TikTok Ads, Pangle and Mintegral (Moloco coming soon), so the version you compare on each network is the same creative.

Book a demo

Where does Genie Playable fit?

Genie Playable is where you make and remake the playables you are measuring. It builds a playable from your APK or HTML build plus the assets in Genie, from a format that is already working, or from scratch from a brief with Genie Agent. You iterate from the last version, without a developer. That matters for measurement: when a read says "change the end card," you change the end card and nothing else, and the next test is clean.

What Genie Playable is not: it is not an MMP or an analytics dashboard, and it does not decide for you whether a playable is working. Your network reporting and your MMP do that. We do not publish performance lift numbers for Genie Playable.

It is a good fit if you want more playable variants per month without adding developer time. It is not the right fit if you already have an in-house playable team shipping at the pace you need, or if you run mainly on a network we do not export to yet.

Pricing has two tracks. Self-serve starts at $490 a month, or $249 a month for startups, and sign-up is free, with enough tokens to create your first two playables before you pay. Larger companies usually take the custom plan: a full one-month pilot where the Genie team onboards you and helps you build the playables you want.

Make the next version count. Measurement tells you what to change. Genie Playable makes the change, from your game, without a developer.

Try Genie

FAQ

Sources

  1. 01AppLovin, Playable analytics integration
  2. 02Google Ads Help, Monitor your App asset experiment
  3. 03Google Ads Help, Make better creative assets for App campaigns
  4. 04Unity Grow, Creative Testing configure
  5. 05Unity Grow, Creative Testing analyze
  6. 06TikTok Ads Help, How to create Playable ads on TikTok Ads Manager
  7. 07Liftoff, 2025 Mobile Ad Creative Index press release (vendor data)
  8. 08GameAnalytics, 2026 Mobile and PC Gaming Benchmarks (vendor data)
  9. 09AppsFlyer, Creative optimization data report, May 2024 (vendor data)
  10. 10Matej Lancaric, How to find a winning creative, August 2026
  11. 11RocketShip HQ, How to test ad creatives on AppLovin, 2026

Keep reading

All articles →
One change
per test. Test design in plain language.
Playable ads · 11 min read

How do you A/B test playable ads?

Track the tap,
not just the install. The events worth measuring inside a playable.
Playable ads · 8 min read

What to track inside a playable ad

Ship more.
Learn faster. Monthly volume by budget and stage.
Playable ads · 6 min read

How many playables should you test a month?

Ready to ship playables from your game?

Try for freeBook a demo

How to make a playable ad from your own game (without rebuilding it)

Three ways to turn your game into a playable ad: engine export, HTML5 rebuild, or building from your APK. Steps, specs, testing and mistakes to avoid.

Written by Yonathan Avivi, Head of Marketing, Genie Labs

Technical review by Yotam Wolf, CTO · Published Sep 26, 2026 · Updated Sep 26, 2026 · 11 min read

A playable ad from your own game is a 30 to 90 second interactive slice of your game: your characters, your art and one clear mechanic, packaged as a small HTML5 file an ad network can run. You can't ship your game build as it is. Networks cap playables at about 5 MB in a single HTML file or ZIP, with strict rules on code and clicks. So you have three options: export a stripped-down scene from your engine, rebuild the moment in an HTML5 framework, or use a tool that builds the playable from your game's build and assets. This guide walks through all three.

Key takeaways
{{ k }}

What does "a playable ad from your own game" actually mean?

It means the player sees your game, not a generic template with your logo on top. Studios that do this well keep three things fixed and treat the rest as open.

Keep fixedOpen to change
{{ r.ak }} {{ r.av }}{{ r.bk }} {{ r.bv }}

This matches what UA and creative leads tell us. Brand fidelity is non-negotiable. Gameplay is often borrowed from whatever is trending. The catch is policy. The UK ASA now treats even a genuine but non-core mechanic as potentially misleading, and Google Play bans ads that don't represent the app. The closer your playable is to what players actually get, the safer it is, and the better it tends to retain.

Why can't I just ship my game build as a playable?

Ad networks run playables inside their own ad containers, not as apps. Every playable has to fit this box:

SizeAbout 5 MB on every major network (AppLovin, Meta, Google, TikTok, Unity, Mintegral, Moloco, Snapchat). A WebGL export of a real game is usually far bigger. An empty Godot export is already over the limit.
FormatOne self-contained HTML file with every asset inlined (AppLovin, Unity, Moloco), or a ZIP with an index.html (Google, TikTok, Mintegral, Snapchat). Meta accepts both.
No external callsNothing loads from your servers at runtime.
Click-out callmraid.open() on AppLovin and Unity, FbPlayableAd.onCTAClick() on Meta and Moloco, ExitApi.exit() on Google, window.openAppStore() on TikTok, window.install() on Mintegral.
Behavior rulesMuted until the first interaction, no store redirect on the first tap, no auto-redirects, works in portrait and landscape.

The full list lives in our Playable ad specs by network (2026).

What are the three ways to turn my game into a playable?

1. Engine export 2. HTML5 rebuild 3. Build from your APK or HTML and assets
{{ r.k }} {{ r.a }} {{ r.b }} {{ r.c }}

Most studios mix routes: a hand-built hero playable for a launch, and faster tooling for the weekly variations that keep a campaign alive.

What buyers expect to pay and wait: roughly $3,000 to $8,000 and two to four weeks per new playable from an external studio, and roughly $600 to $2,000 in-house once the setup exists. Nobody has a clean source for these numbers, so treat them as market expectations. One mid-size studio we spoke to put it simply: the market norm is "two weeks onwards", and their target is under a week.

Your game is already the brief.

Upload your APK or HTML build. Genie Playable turns it into a playable ad with your own art, characters and live events, ready for 10 ad networks.

Try it free on your game

How do I make a playable ad from my game, step by step?

01\Pick the moment worth playing

Choose one mechanic a stranger understands in three seconds. Good sources: your core loop at its most satisfying, the live event running now, or a format already converting in your genre. If you can't explain the moment in one sentence, it's too complex. One mechanic beats two.

“Merge plus puzzle looks clever and almost always tests worse.”
Segwise

02\Script the arc

Almost every playable follows the same shape:

{{ a.n }} {{ a.k }} {{ a.v }}

03\Prepare your assets

Export characters, backgrounds, UI and sounds from your game, then cut hard. Compress images, use sprite sheets, trim audio to short loops and subset fonts. Base64 inlining adds about a third to file size, so aim for 2 to 3 MB in total and treat 5 MB as the ceiling.

04\Build it

Whatever route you use, keep the logic in plain HTML and JavaScript, make the layout work in 9:16 and 16:9, and keep sound off until the first tap.

05\Package it for each network

This is where engineer time quietly disappears. "A unit that passes on AppLovin can bounce on Unity," as Segwise puts it. Each network needs the right file format, the right click-out call and any required hooks. Mintegral, for example, expects gameReady() and gameEnd() calls. Build once and generate network variants from one source. Hand-editing copies is how bugs creep in.

06\Test before you upload

{{ t.k }}{{ t.v }}

Then test on a real low-end Android phone. A desktop browser hides most of the problems.

07\Launch and measure

Give each playable enough data before you judge it. A common rule of thumb is about 50 conversions in four days, or 100 in seven. Judge on D7 ROAS and retention, not CPI alone. If you can, add events inside the playable (start, first interaction, win or lose, CTA tap, drop-off point), because network dashboards only show the last step.

08\Plan the next version before this one fatigues

Top-grossing games ship dozens of new playables a month, and most of that volume is variations of a winner. Leading teams put roughly 70% of output into variations and 30% into new concepts. Decide now which single thing you'll change next: the hook, the fail state, the character, the event skin or the end card.

What should I keep from my game, and what can I borrow?

Keep everything that helps a player recognise your game after install: art, characters, UI language, sound. Borrow structure freely, whether that's a proven hook, a pacing pattern or a format working in another genre. Racing and narrative studios often tell us their game "isn't playable". The honest read: a playable doesn't need your full core loop. It needs one true moment from your world.

What are the most common mistakes?

Mistake What happens Fix
{{ m.a }}{{ m.b }}{{ m.c }}
The next version, not a new brief.

When a playable fatigues, Genie Playable lets your UA or creative team change the hook, the character or the event skin on the last version and ship it again. No dev queue.

Book a demo

Where does Genie fit?

Genie Playable takes the third route, and adds two more ways in. You can build from your game: your APK or HTML build together with the assets, narrative, mechanics and live events already in Genie. You can start from a format that's already working and rebuild it with your game inside. Or you can start from scratch and describe the playable to Genie Agent.

Genie Core keeps every version on brand, and Genie Playable exports network-ready variants for Meta, AppLovin, Unity Ads, Liftoff, Google Ads, TikTok Ads, Pangle and Mintegral from one source, with Moloco coming soon. No developer is needed at any step, and your team makes the final call on every version. Sign-up is free and covers your first two playables. Try it on your game.

Where to go next

First playable? Follow how to make a playable ad step by step, then run it through the playable ad best practices checklist. Once it's live, read how to know if your playable ad is working and how to A/B test playable ads.

FAQ

{{ f.a }}

Sources

  1. {{ s.n }}{{ s.name }}

{{ a.h1a }} {{ a.h1b }}

{{ a.desc }}

Written by {{ a.author }}

{{ a.meta }}

Ready to ship playables from your game?