Liftoff (Vungle) playable specs at a glance
| File format | A single .html file, or a .zip with one folder of assets. In a ZIP, one HTML at the root; if there are several, one must be index.html. |
|---|---|
| Max file size | 5 MB for the HTML or ZIP upload |
| Assets | Can be separate files; Liftoff serves them from its CDN. Relative paths only (./img/logo.png), ASCII file names, case-sensitive. |
| MRAID | Provided by the environment. Wait for ready and check mraid.viewable. No iframes. |
| CTA call | mraid.open(); with no URL, or window.Liftoff.open(); inside window.Liftoff.ready()Never window.location. |
| Close button | Don't add one. Keep a 50×50 px area clear in both top corners. |
| Sound | Only after a tap or click. Audio on page load can get the creative rejected. |
| Orientation | Responsive, portrait and landscape where possible. Served full screen at 320×480, 480×320, 768×1024 or 1024×768. |
| Where it runs | Full-screen interstitials, and as an interactive end card after a video |
| Testing | Creative QA and preview when you upload in Liftoff's Ads Manager. Content review usually within 24 hours. |
Required code
Liftoff injects MRAID. Wait until it's ready, then wire the install button to mraid.open() without an argument. Liftoff intercepts the call and adds the store URL and tracking:
function start() {
// build the scene, then:
installButton.addEventListener("click", function () {
mraid.open(); // no URL: Liftoff supplies it
});
}
if (window.mraid) {
if (mraid.getState() === "loading") {
mraid.addEventListener("ready", start);
} else {
start();
}
} else {
start(); // plain browser
}
Liftoff's own API does the same job:
window.Liftoff.ready(function () {
installButton.addEventListener("click", function () {
window.Liftoff.open();
});
});
Calling either before the API is ready causes unresponsive or unattributed clicks. Some exchanges don't fire viewableChange if the ad is already visible, so check mraid.viewable rather than waiting for the event.
Liftoff Accelerate vs. the old Vungle spec
Liftoff and Vungle merged, and their playable docs come in three flavors. Make sure you're reading the right one:
- Liftoff Accelerate (current). For advertisers uploading in Liftoff's Ads Manager. Everything on this page above this section.
- Vungle Adaptive Creative (older). For playables uploaded to Liftoff Direct (advertiser.vungle.com) and shown in the Vungle SDK. The file is
ad.htmlorindex.htmlin a flat ZIP, all files at the same level, under 5 MB, with every asset local and no mraid.js. The CTA isparent.postMessage('download', '*'), and a playable must also sendparent.postMessage('complete', '*')once the player has seen most of it. Never fire both together. It also listens forad-event-pauseandad-event-resumeto pause audio, and supports theSTART_MUTEDtoken. Test it with the Creative Verifier app. - Vungle Exchange (programmatic). For DSPs bidding MRAID 2.0 playables into Liftoff's exchange through OpenRTB, using
mraid.open(url).
The two Vungle articles disagree on when to send complete: one says after 3 or more interactions, the other after 5 or more when there's no clear ending. Sending it at your end screen satisfies both.
Creative rules
- Open the store only after a deliberate tap. No redirects on load or on a timer.
- Keep a clear install button on screen the whole time, plus clear branding.
- No fake notifications, system alerts or countdowns, no strobing buttons, no auto-download tricks.
- Fonts default to the platform's (Roboto on Android, Helvetica Neue on iOS). Bundle your font if the look matters.
- Expect small regulatory watermarks in the corners, and Liftoff's close button in the top corners.
- Label AI-generated content when you upload.
How to test a Liftoff playable
Liftoff Accelerate has no standalone validator. Upload the file in Ads Manager (Creative Manager → Add). The Creative QA step scans it for a click event; if it can't find one, you click the install button yourself in the preview. Content review, when it applies, usually takes under 24 hours.
Why Liftoff rejects playables
- Creative QA finds no click event: the install button doesn't call
mraid.open()orLiftoff.open(). - The CTA fires before the API is ready, so clicks don't register.
- It uses
window.location, or redirects without a tap. - Absolute asset paths or URLs, non-ASCII file names, a file-name case mismatch, or an iframe.
- Sound plays on load.
- The creative has its own close button.
- The upload is over 5 MB.
Liftoff doesn't publish a rejection list; these come from its integration and creative guidelines.
Common questions
What is the file size limit for Liftoff playable ads?
5 MB for the HTML file or ZIP you upload to Liftoff Accelerate. The older Vungle Adaptive Creative spec also caps the ad at 5 MB.
Should Liftoff playables call mraid.open with a URL?
No. On Liftoff Accelerate, call mraid.open() with no argument, or window.Liftoff.open(). Liftoff intercepts the call and adds the destination URL. Never use window.location.
Are Vungle and Liftoff playable specs the same?
Not quite. Liftoff Accelerate uses MRAID with mraid.open() or Liftoff.open(). The older Vungle Adaptive Creative spec bans mraid.js and uses parent.postMessage('download', '*') and parent.postMessage('complete', '*') instead.
Can a Liftoff playable load files from outside the HTML?
Yes, from inside its own ZIP. Liftoff hosts ZIP contents on its CDN, so assets can be separate files referenced with relative paths. Absolute URLs aren't allowed.
Should a Liftoff playable have a close button?
No. Liftoff adds its own. Keep a 50 by 50 pixel area clear in both top corners.
How do I test a Vungle playable?
Install Liftoff's Creative Verifier app on a phone and load the ZIP from the phone's browser. It checks for index.html and the download postMessage. For Liftoff Accelerate, use the Creative QA and preview step in Ads Manager.
Sources
Networks change their specs without notice. These are the pages this summary was checked against. If anything here disagrees with them, follow the network.
- Liftoff Accelerate: Interactive ad integration
- Liftoff Accelerate: Creative guidelines
- Liftoff Accelerate: Managing and uploading creatives in Ads Manager
- Liftoff Accelerate: Ad formats
- Liftoff Monetize: Adaptive Creative asset requirements
- Liftoff Monetize: Dos and don'ts of Adaptive Creative
- Liftoff Monetize: Test your playable with the Creative Verifier
- Liftoff Monetize: HTML and MRAID creatives submission guidelines