---
title: Make mobile user acquisition video ads with testable hooks
display: 'Make mobile user acquisition *video ads* with testable hooks'
nav_title: Mobile UA video ads
summary:
  - "Two vertical game ads that share one gameplay body and end card and differ only in their generated hook."
  - "Generate only the hook from an approved still; build the body and end card from real game assets in code."
  - "Each new hook is one short video generation; the body, captions and end card are reused at no cost."
description: Build vertical video ads as hook, body and end card, generate two hooks from your game art, and assemble variants that share one body for A/B tests.
section: playbooks
order: 24
type: playbook
topic: Brand and marketing
level: Build
roles: [marketer]
time: { read: 10, do: 45, wait: 8 }
needs: ["Any plan with credits", "Approved game art: a character, a prop, buildings, UI and icons", "Music and a few sound effects (see Playable prototype assets)", "ffmpeg or any video editor"]
last_verified: 2026-10-16
models_checked: ["MiniMax H3", "GPT Image 2.5 Sunburst", "Seedance 2.5"]
hero: playbooks/mobile-ua-video-ads/both-ads-contact-sheet-pipsqueen.webp
related: [ad-variations-family, creator-style-product-video, key-art-and-store-assets, animate-a-still, game-ui-kit, game-trailer-cinematic]
run_in: [model_minimax-h3, model_openai-gpt-image-2-5-sunburst]
# the use case made, on scenario.com/explorations, and the platform workflows that run it
made_with:
  - { slug: game-ua-ads, title: "Want to Play" }
  - { slug: tap-to-install, title: "Tap to Install" }
  - { slug: playable-ads, title: "Playable Ads" }
run_with:
  - { id: wflow_gaming-ad-localizer, name: "Gaming Ad Localizer" }
  - { id: wflow_EpDiPMLkZk6zQhtbV65fg47a, name: "Multi-Format Ad Generator" }
thumb: playbooks/mobile-ua-video-ads/thumb.webp
video: tutorials/mobile-ua-video-ads.mp4
chapters:
  - { at: 0, title: "The video ads to make", image: "/media/images/playbooks/mobile-ua-video-ads/ch-01-the-video-ads-to-make.webp" }
  - { at: 44, title: "A vertical first frame", image: "/media/images/playbooks/mobile-ua-video-ads/ch-02-a-vertical-first-frame.webp" }
  - { at: 54, title: "Write the safe zones into the prompt", image: "/media/images/playbooks/mobile-ua-video-ads/ch-03-write-the-safe-zones-into-the-prompt.webp" }
  - { at: 63.5, title: "One still per hook", image: "/media/images/playbooks/mobile-ua-video-ads/ch-04-one-still-per-hook.webp" }
  - { at: 71.5, title: "Animate from the first frame", image: "/media/images/playbooks/mobile-ua-video-ads/ch-05-animate-from-the-first-frame.webp" }
  - { at: 98, title: "Real game assets, animated in code", image: "/media/images/playbooks/mobile-ua-video-ads/ch-06-real-game-assets-animated-in-code.webp" }
  - { at: 113, title: "An end card that matches the store", image: "/media/images/playbooks/mobile-ua-video-ads/ch-07-an-end-card-that-matches-the-store.webp" }
  - { at: 121, title: "Join, caption, mix", image: "/media/images/playbooks/mobile-ua-video-ads/ch-08-join-caption-mix.webp" }
  - { at: 134.5, title: "Sound off, phone size", image: "/media/images/playbooks/mobile-ua-video-ads/ch-09-sound-off-phone-size.webp" }
  - { at: 178, title: "Recap", image: "/media/images/playbooks/mobile-ua-video-ads/ch-10-recap.webp" }
steps:
  - title: "A vertical first frame"
    text: "Each hook starts as a still. Create › Images › GPT Image 2.5 Sunburst, Reference Images › Select from Library › Queen Pip, Dimensions 9:16."
  - title: "Write the safe zones into the prompt"
    text: "She charges straight at the camera, and the prompt keeps the top and bottom of the frame empty, because that's where the platform puts its buttons and where the caption will go."
    prompt: |-
      Reference 1 is Queen Pip: copy her face, brown hair bun, oversized tilted gold crown, ermine cloak, blue and gold dress and toy-mace scepter exactly. Reference 2 is the world and the art style. Vertical mobile ad frame: Queen Pip rides her shaggy white battle goat with curled horns straight toward the camera across a green meadow, scepter raised high, cloak flying, mouth open in a fierce battle cry; a line of stubby knights with round blue shields charges behind her and a wooden goblin fort stands far behind. Low camera, dynamic, bright sunny sky. The queen and the goat sit in the middle third of the frame; keep the top 15 percent as open sky and the bottom 20 percent as plain grass with no important detail. No text, no letters, no logo, no UI.
  - title: "One still per hook"
    text: "Hook A is the queen, hook B a treasure chest bursting with coins, with the same safe zones. Only the hook changes; both ads share the same body and end card."
  - title: "Animate from the first frame"
    text: "Create › Videos › Minimax H3, hook A's still in First Frame, Duration 5 s, Resolution 768P. The prompt says the first second must grab attention and where the scepter stays: in the first take it swung across her face and turned into a smear."
    prompt: |-
      Vertical mobile game ad, the first second must grab attention. The little queen rides her shaggy battle goat straight toward the camera at full gallop, shouting a battle cry, cloak streaming behind her; the knights charge behind her. The camera pulls back fast and low ahead of the goat. She holds her scepter raised high above her crown the whole time and shakes it there; the scepter never passes in front of her face, and her face stays sharp and fully visible. Keep her face, crown, ermine cloak, blue dress and scepter, and the goat's curled horns and harness, exactly as in the first frame. Chunky stylized 3D game art, bright sunny light. No text.
  - title: "Real game assets, animated in code"
    text: "The body isn't generated: it shows the real game (the stable, the coins, the progress bar) animated frame by frame in code, so the numbers are exact and the caption is easy to translate."
  - title: "An end card that matches the store"
    text: "The end card is code too: the title, a button and one availability line. The call to action must match what the game offers right now."
  - title: "Join, caption, mix"
    text: "A script joins the three parts, adds each hook's caption, and mixes the music and sound effects at fixed points. A new variant is one line: a new hook file and its caption."
agent_steps:
  - title: "Connect the Scenario MCP"
    text: "Connect your agent and sign in once at [mcp.scenario.com](https://mcp.scenario.com). Then tell it which Scenario team and project to use, so every file lands there."
  - title: "Give the agent the files"
    text: "Queen Pip's approved character image first, then the key art for the world and the style; for hook B, the game's gold coin and the town hall. Add the real game assets for the body and the end card (the stable at levels 1 and 2, the coins, the progress bar, the three-slice button), the music loop and the sound effects. A local agent reads them from a folder and uploads the images with upload_asset."
  - title: "Brief the agent: the first frames"
    text: "Each hook starts as a still with the safe zones written into the prompt: the platform puts its buttons at the top and bottom, and the caption goes there too."
    prompt: |-
      Make the first frame of hook A with GPT Image 2.5 Sunburst (model_openai-gpt-image-2-5-sunburst). Pass referenceImages as an array: Queen Pip first, the key art second. Size 1152 x 2048 (9:16). Quote the cost with a dry run first and wait for my go.

      Prompt, word for word:
      Reference 1 is Queen Pip: copy her face, brown hair bun, oversized tilted gold crown, ermine cloak, blue and gold dress and toy-mace scepter exactly. Reference 2 is the world and the art style. Vertical mobile ad frame: Queen Pip rides her shaggy white battle goat with curled horns straight toward the camera across a green meadow, scepter raised high, cloak flying, mouth open in a fierce battle cry; a line of stubby knights with round blue shields charges behind her and a wooden goblin fort stands far behind. Low camera, dynamic, bright sunny sky. The queen and the goat sit in the middle third of the frame; keep the top 15 percent as open sky and the bottom 20 percent as plain grass with no important detail. No text, no letters, no logo, no UI.

      Then make hook B's first frame the same way, with the gold coin and the town hall as references: a wooden treasure chest bound in blue-painted iron bursting open in the cobbled square in front of the round stone keep, gold crown coins spraying toward the camera, and the same last two sentences about the safe zones and no text. Show me both stills before you animate anything.
  - title: "Animate each hook"
    text: "In the first take the scepter swung across her face and turned into a smear, so the prompt says where it stays."
    prompt: |-
      Animate both approved stills with MiniMax H3 (model_minimax-h3): firstFrameImage set to the still, duration 5, resolution "768P". Start both with wait: false and collect them with one jobs_wait. Quote the cost first and wait for my go.

      Hook A prompt, word for word:
      Vertical mobile game ad, the first second must grab attention. The little queen rides her shaggy battle goat straight toward the camera at full gallop, shouting a battle cry, cloak streaming behind her; the knights charge behind her. The camera pulls back fast and low ahead of the goat. She holds her scepter raised high above her crown the whole time and shakes it there; the scepter never passes in front of her face, and her face stays sharp and fully visible. Keep her face, crown, ermine cloak, blue dress and scepter, and the goat's curled horns and harness, exactly as in the first frame. Chunky stylized 3D game art, bright sunny light. No text.

      Hook B prompt, word for word:
      The treasure chest bursts open wider and a fountain of gold crown coins sprays straight toward the camera, coins spinning and tumbling past the lens, sparkles in the air, more coins landing and bouncing on the cobblestones. The camera is locked. Keep the chest, the gold coin design with the embossed crown and the stone keep behind exactly as in the first frame.
  - title: "Check the hooks, then build the ad in code"
    text: "Accept when motion starts in the first frame, the queen, goat or chest keeps its design, hands and faces are intact in every frame, and nothing smears across a face. Reject a morph, a smear or motion that runs backward, and rerun only that hook. The body and the end card are not generated: they show the real game."
    prompt: |-
      Check each hook frame by frame and tell me if the character or the chest changes design, if anything passes in front of her face, or if the motion runs backward. Then, in code: build a 4.5 second body from the real assets (a tap on the level 1 stable, six coins flying from the counter from 1,500 down to 900, the progress bar filling, a flash, the level 2 stable with a bounce, the level ring with a 2, the knight hopping in, caption "Upgrade your village"), and an end card with the PIPSQUEEN title, "Build your kingdom", a "Pre-register" button from the three-slice button and one availability line. Conform everything to 1080 x 1920 at 30 fps, trim each hook to its first 3.8 seconds, add its caption ("Charge into battle!" or "Open the royal treasury"), join hook, body and end card, replace the hook audio with the music loop and the sound effects, and export H.264 with AAC.
  - title: "Review with the sound off and report"
    text: "The story must read from images and captions alone, on a phone-sized preview. MiniMax H3 adds its own sound, so check that none of it is left in the mix. The call to action must match what the store offers right now."
    prompt: |-
      Run speech-to-text on each hook alone and confirm none of its audio is in the final mix. Check that no caption covers a face or sits in the top 15 percent or bottom 20 percent of the frame. Create a collection for this campaign with the two stills and the two hooks, and report the models, every asset ID, the paths of the two exported ads and the total cost spent.
updated: 2026-10-16
canonical: https://learn.scenario.com/playbooks/mobile-ua-video-ads
---

Last updated: 2026-10-16

# Make mobile user acquisition video ads with testable hooks

> Build vertical video ads as hook, body and end card, generate two hooks from your game art, and assemble variants that share one body for A/B tests.

In short:

- Two vertical game ads that share one gameplay body and end card and differ only in their generated hook.
- Generate only the hook from an approved still; build the body and end card from real game assets in code.
- Each new hook is one short video generation; the body, captions and end card are reused at no cost.


9:16 ads in three parts (a generated hook, a gameplay body, an end card), so you can test a new hook and keep the rest: user acquisition ads live or die in the first two seconds. The game is Pipsqueen by Brightkeep Games, a cozy kingdom builder.

:::note As of October 2026
The models, settings and screens in this article are the ones Scenario offered in October 2026. New models and updates arrive often, so check the app for newer options before you choose.
:::

![Two vertical ads as contact sheets: top, Queen Pip charges on her battle goat; bottom, a treasure chest bursts into gold coins; both then show the same stable upgrade and end card](https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/ec88a1459c2de72bdd6ecbb38de0c7b0753d8bdde07097e5aa7b787c9c36eaeb.webp "Two ads, one second per frame. Only the hook differs.")

## The brief

| Field | Brief |
|---|---|
| Goal | Two 9:16 ad variants for a mobile kingdom builder, A/B test on hook |
| Format | 1080x1920, about 11 s, sound on and readable with sound off |
| Structure | Hook (3.8 s, generated) + body (4.5 s, gameplay) + end card (2.5 s, title and call to action) |
| Fixed | Body, end card, music, caption style, call to action |
| Varies | The hook only (A: character action; B: prop action) |
| Accept when | Motion starts in the first frame; captions sit outside the top 15 percent and bottom 20 percent; nothing in the ad claims a feature the game does not have |

:::video https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/eb51015154779716b7ac8c37b36bf024e05a664be1c01b486783694ee504c156.mp4
Variant A: Queen Pip charges, then the stable upgrade and the end card.
:::

The body and end card reuse earlier playbooks: the goat stable at levels 1 and 2, the town hall and the windmill from [Isometric tiles and buildings](https://learn.scenario.com/playbooks/isometric-tiles-and-buildings.md), the progress bar, level ring and button from [Game UI kit](https://learn.scenario.com/playbooks/game-ui-kit.md), the coins, the knight, the music loop and the coin and click sounds from and the whoosh from [Game trailer cinematic](https://learn.scenario.com/playbooks/game-trailer-cinematic.md). Queen Pip comes from [Your first video](https://learn.scenario.com/start/your-first-video.md).

## Approach

:::flow
Hook stills | GPT Image 2.5 Sunburst, 9:16, safe zones | image
Animate hooks | MiniMax H3, 768P, 5 s | video
Body | Real buildings, UI and coins, animated in code | video
End card | Title, button, availability line | image
Assemble | Hook, body, end card, music, cues | video
Sound-off check | Phone-sized preview |
:::

- **Plan the test first.** Each round changes one variable, usually the hook, and keeps the rest fixed. Name files by their variables (`hook-a-queen_cap1_end1.mp4`) so results map back to the change.
- **Separate what you test from what you keep.** Hooks change every week, bodies and end cards rarely, so a new hook is one video generation, not a new ad. For controlled variations of a still campaign, see [Ad variations family](https://learn.scenario.com/playbooks/ad-variations-family.md).
- **Generate only the hook.** The body must show the real game, assembled in code from its actual buildings, UI and items. Counts, timing and captions are code too, exact and easy to translate ([Do the exact part in code](https://learn.scenario.com/browse)).
- **Start each hook from an approved still** ([Approve the still first](https://learn.scenario.com/browse)). A 9:16 first frame, subject in the middle third, keeps identity and style and leaves room for captions and the platform's interface.

Models, as of October 2026: MiniMax H3 at 768P for hooks (first in the picker for animating a still); Seedance 2.5 for a higher-resolution final of the winner; GPT Image 2.5 Sunburst for both first frames.

## Steps

:::steps
1. **Make hook A's first frame.** The Pipsqueen key art carries a generated logo, so it cannot be cropped into a clean first frame. Open **Create**, choose **Images**, pick **GPT Image 2.5 Sunburst**, attach Queen Pip and the key art under **Reference Images**, and write the safe zones into the prompt. This run set a custom 1152x2048 (9:16) through the Scenario MCP; in the web panel, **Dimensions** offers presets only, so pick 9:16 (1088x1920):

   ```text
   Reference 1 is Queen Pip: copy her face, brown hair bun, oversized tilted
   gold crown, ermine cloak, blue and gold dress and toy-mace scepter
   exactly. Reference 2 is the world and the art style. Vertical mobile ad
   frame: Queen Pip rides her shaggy white battle goat with curled horns
   straight toward the camera across a green meadow, scepter raised high,
   cloak flying, mouth open in a fierce battle cry; a line of stubby knights
   with round blue shields charges behind her and a wooden goblin fort stands
   far behind. Low camera, dynamic, bright sunny sky. The queen and the goat
   sit in the middle third of the frame; keep the top 15 percent as open sky
   and the bottom 20 percent as plain grass with no important detail. No
   text, no letters, no logo, no UI.
   ```

2. **Make hook B's first frame** the same way, with the game's gold coin and the town hall as references: "a sturdy wooden treasure chest bound in blue-painted iron bursts open in the cobbled square in front of a round stone keep... a fountain of gold crown coins sprays up and out toward the camera, the nearest coin large and sharp in the foreground", with the same safe-zone sentence.

   :::compare
   ![Hook A first frame: Queen Pip on her battle goat charging toward the camera, knights behind her](https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/4d34106fb8a334a7210c5edc278e7ebf6e3f54864e32ecfd82290571ba883a1a.webp "Hook A first frame.")
   ![Hook B first frame: a treasure chest bursting with gold coins in front of the stone keep](https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/970a249c7f69ab89a2d45c8be6978d168ae20fd571aaf5aa0c80fba9ee1709c1.webp "Hook B first frame.")
   :::

3. **Animate each hook.** Open **Create**, choose **Videos**, pick **Minimax H3**. Add the still under **First Frame**, set **Duration** to 5 seconds and **Resolution** to 768P under **Settings** (the default, 2K, costs more). Hook A's kept prompt:

   ```text
   Vertical mobile game ad, the first second must grab attention. The little
   queen rides her shaggy battle goat straight toward the camera at full
   gallop, shouting a battle cry, cloak streaming behind her; the knights
   charge behind her. The camera pulls back fast and low ahead of the goat.
   She holds her scepter raised high above her crown the whole time and
   shakes it there; the scepter never passes in front of her face, and her
   face stays sharp and fully visible. Keep her face, crown, ermine cloak,
   blue dress and scepter, and the goat's curled horns and harness, exactly
   as in the first frame. Chunky stylized 3D game art, bright sunny light.
   No text.
   ```

   Hook B: "The treasure chest bursts open wider and a fountain of gold crown coins sprays straight toward the camera, coins spinning and tumbling past the lens, sparkles in the air, more coins landing and bouncing on the cobblestones. The camera is locked. Keep the chest, the gold coin design with the embossed crown and the stone keep behind exactly as in the first frame."

   [Quote before you run](https://learn.scenario.com/browse): a hook costs several times the still. The price shows on the **Generate** button.

4. **Build the body from real game assets:** 4.5 seconds drawn frame by frame in code. A tap on the level 1 stable, six coins flying from the counter (1,500 down to 900), the progress bar filling, a flash, the level 2 stable with a bounce, the level ring with a 2, and the knight hopping in. Caption: "Upgrade your village".

   ![The body: the level 2 stable with the knight, the level 2 ring, the coin counter at 900 and the caption Upgrade your village](https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/c3aac34f94348d951124b4e3b0de8001ed830cedbb5fea805f83df939a5ae7ef.webp "Body: real buildings, UI and coins, animated in code.")

5. **Build the end card:** the PIPSQUEEN title set in code, "Build your kingdom", a "Pre-register" button made from the kit's three-slice button, and one availability line. The call to action matches what the game offers at that moment.

   ![End card with the PIPSQUEEN title, a blue Pre-register button and the line Coming soon on mobile over a blurred village](https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/69ebebcec4312d3338a2d7cff749584366c7a8374c5bd332086751d641c4152e.webp "End card: title, button and line set in code.")

6. **Assemble each variant.** [Conform the clips](https://learn.scenario.com/browse) to 1080x1920 at 30 fps. Trim each hook to its first 3.8 seconds, overlay its caption ("Charge into battle!", "Open the royal treasury"), then join hook, body and end card. Mix the music loop under everything, the whoosh on the first frame, a coin on each coin landing and on the upgrade, a click on the tap and on the button press. Export H.264 with AAC.

7. **Check each variant on a phone-sized preview with sound off.** The story must read from images and captions alone. Then run speech-to-text on each hook alone: MiniMax H3 adds its own sound, and hook A's takes came with spoken battle cries ("For victory!", "Charge forward and attack!"). The ad replaces all hook audio with the mix.
:::

**With the Scenario MCP:** run `model_minimax-h3` with `firstFrameImage`, `duration: 5`, `resolution: "768P"` and `wait: false` for each hook, then one `jobs_wait`. A first frame from your own disk goes through `upload_asset` first.

:::video https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/f0b2cac050766bf207726b17576b186b0bf0da35ba6fd60d92db7e14e77da3f5.mp4
Variant B: the treasure chest hook, same body and end card.
:::

## Check the result

:::check
**Accept when:** motion starts in the first frame; the character or prop keeps its design through the clip; hands and faces are intact in every frame; captions never cover a face; the body shows real buildings, UI and items from the game; the call to action matches what the store page offers.
**Reject when:** the hook morphs the character or prop, a prop smears across a face, motion runs backward, a caption sits in a platform's interface zone, or the body shows a feature that is not in the game.
:::

- **Hook A, take 1, rejected.** The queen swings her scepter across her face; around 1 to 2 seconds the scepter turns into a smear and her face disappears behind it.
- **Hook A, take 2, kept.** The prompt now keeps the scepter above her crown and her face visible. Face, crown, cloak and the goat's horns hold for all 5 seconds.
- **Hook B, kept on the first run.** Coins burst toward the lens and settle on the cobblestones; the coin design and the keep hold.

Captions sit at about 68 to 73 percent of the height, above the bottom interface zone and below the faces in both hooks.

:::quiz Check yourself
? Where does a caption go in a 9:16 ad, for the feed and the stories placement?
- [ ] In the top 15 percent of the frame, above everything else
- [x] In the lower middle, above the bottom interface zone and clear of faces
- [ ] In the bottom 20 percent, where viewers expect subtitles
> Captions stay outside the top 15 percent and bottom 20 percent, where the platform's interface sits. In this run they sit at about 68 to 73 percent of the height.

? Two takes of hook A, each paused at 2 seconds. Which hook goes into the ad?
![Queen Pip on her goat, her scepter blurred across the middle of her face so only one eye shows](https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/fa3a341848a2609879e8f9b8f407fe70264cafbf3ee91636774c37b0c3e30e23.webp "Take A")
![Queen Pip on her goat shouting, her scepter raised above her crown, her face fully visible](https://ufgc0c9mhl4ueq76.public.blob.vercel-storage.com/academy/4c17faceedb813ffa1b0f0f0d7e892b8be35a9aad589fb773eb72030b91d36e5.webp "Take B")
- [ ] Take A: the swing is the most dynamic moment of the hook
- [ ] Take A, if you trim around the blurred frames
- [x] Take B: her face and the scepter stay clear through the charge
> A prop that smears across a face is on the Reject list, and in a 4-second hook there is no room to trim around it. Take B keeps the scepter above her crown because the prompt says where it stays.
:::

## Make it repeatable

- **A hook library.** Each hook clip with its first frame and prompt in a collection; each round adds two to four hooks.
- **One assembly script.** This run's Python script draws the body and end card and calls ffmpeg to join hook, caption, body and end card with audio cues at fixed offsets; a new variant is one line with a new hook file and caption.
- **Localization.** Captions, counter and end card text are code: translate, re-run the script. For still ads, the **Gaming Ad Localizer** App under **Workflows**, **Apps** adapts ad copy by country.
- **Approval.** Route each new hook through an **Approval** node (identity, hands, faces, motion direction) before it joins an assembly ([Approval and review steps](https://learn.scenario.com/workflows/approval-and-review-steps.md)).

## Runs and time

| Step | Model | Runs | Wait |
|---|---|---|---|
| Hook A and hook B first frames, 9:16 | GPT Image 2.5 Sunburst, 2 references each | 2 | about 42 s each, in parallel |
| Hook A (2 takes) and hook B, 5 s, 768P | MiniMax H3 | 3 | about 191 s, 231 s and 171 s |
| Body, captions, end card, mix | Pillow and ffmpeg | 0 | about 40 s on a laptop |

Five runs, about 8 minutes of wait. The three hook takes are nearly all the cost; the music and sound effects were reused from earlier runs, including [Game trailer cinematic](https://learn.scenario.com/playbooks/game-trailer-cinematic.md).

## Variations

- **More hooks per round:** a failure hook (the stable roof collapses), a satisfying hook (a full row of upgrades), a character close-up, the body fixed.
- **Test a concept before you build it:** three or four rough hooks on different themes from quick stills; produce the full ad only for the winner. Show only what the game offers or will offer.
- **Creator-style ads:** a person-to-camera format for the same test ([A creator-style product video](https://learn.scenario.com/playbooks/creator-style-product-video.md)).
- **Square and landscape placements:** reframe the first frame and re-animate, or crop to 4:5 if the subject stays centered ([Make every format from one master](https://learn.scenario.com/playbooks/key-art-and-store-assets.md)).
- **Playable ads:** same sprites, UI and sounds.
- **Non-game apps:** hook, product demo and end card fits any mobile app ad.
- **Finishing the winner:** re-generate it with **Seedance 2.5** at a higher resolution from the same first frame and prompt.

## If it breaks

- **The character changes during the hook.** Shorten the motion described, keep "Keep her face... exactly as in the first frame", and trim before the drift starts.
- **A prop crosses the face.** Say where the prop stays ("raised high above her crown the whole time") and that the face stays visible.
- **The hook comes with speech.** MiniMax H3 generates its own audio; mute the hook track or replace it with your mix, and check it with speech-to-text.
- **The prop flies backward.** Say which side leads ("front face first") and check the direction frame by frame; reversing the clip in the editor costs nothing.
- **Captions cover the subject.** Plan a clear caption band in the first frame, or move the caption per hook.
- **The hook is strong but the ad underperforms.** Test the body and end card separately, and rule out a gap between what the hook promises and what the body shows.

Source: https://learn.scenario.com/playbooks/mobile-ua-video-ads
