An AI UGC ad for a mobile app works best as a sandwich: an AI creator says the hook, your real screen recording shows the app doing the thing, and the creator comes back for the call to action. The board is a creator still, a voice node and a lip-sync node for the two talking clips, and the Video Editor timeline to put them around the recording. The rule people miss: the app's screen is the one part you never generate. A video model will happily draw a phone with an interface on it, but the interface it draws is not your app, and an ad that shows features your app does not have is a misleading ad.
There is a second surprise. This format is for paid social ads. It is not an App Store preview: Apple's rules for app previews forbid exactly the presenter footage this ad is built on.
TL;DR
| Step | Node or model on 8frame | Price in credits | Input |
|---|---|---|---|
| Creator still | Nano Banana 2 | 11 per image at 1K | Prompt, or photos of a consenting person |
| Voice for the hook and CTA | ElevenLabs text to speech | 13 per started 1,000 characters | Your script lines |
| Talking clips | Pruna Avatar | 3.375 per second at 720p (5 s = 17), up to 35 s | Creator still plus audio |
| Alternative talking clip | OmniHuman v2 | 71 for 5 s, 14.175 per second of audio, 4 to 35 s | Creator still plus audio |
| Optional reaction shot | Kling v3 Standard | 86 for 5 s with sound, 57 silent | Creator still as start image |
| Screen recording | your phone | no generation | Real capture of the app |
| Assembly | Video Editor timeline | no generation | All of the above |
Why the screen stays real
Generated screens fail in two ways. They invent: menus, numbers and buttons the app does not have. And they drift: the interface changes between frames. Both are worse than ugly, because they show the viewer a product that does not exist. TikTok's ads policy bans misleading product claims, including "Product effect comparisons, such as before-and-after results, which may cause viewers to have a false or distorted impression" (last updated April 2026). An invented feature on screen is the same problem in another form.
So the screen recording is the evidence, and the AI creator is the presenter. That split also makes the ad cheaper to update: when the app changes, you record the screen again and keep the creator clips.
The board, node by node
The UGC ad script board for this is planned for 8frame's templates, not live yet. Build it on an empty board from the 8frame canvas.
1. Record the screen first
Record the flow on a real phone: open the app, do the one thing the ad promises, show the result. Keep it to the single job the hook names. Record in portrait, since the ad runs as 9:16 on TikTok and Reels. Clean the status bar if you can and use demo data, not a real customer's account.
The recording sets the length of the middle of the ad. Everything else is built around it.
2. Write two lines, not a script
The creator says two things: the hook before the recording ("I didn't know my phone could do this") and the CTA after it ("It's called [app name], link's below"). Keep each line short. Write them on a sticky note on the board so the whole team sees the copy next to the clips.
3. Make the creator
Generate a person who does not exist on Nano Banana 2 (11 credits at 1K, up to 10 reference images), or use photos of a real person who agreed in writing to appear in AI-generated ads. Make the still 9:16 and waist-up, looking at the camera, holding a phone if the hook needs it. The phone in the creator's hand should show nothing legible, or face away from the camera: no invented interface.
4. Voice, then lip sync
Run each line through ElevenLabs text to speech (13 credits per started 1,000 characters; Eleven v3 and Multilingual v2 cost the same). Use one voice for both lines.
Connect the creator still and each audio clip to a lip-sync node. Pruna Avatar bills per second of the audio at 3.375 credits per second at 720p (17 for 5 seconds) and keeps the shape of the portrait, so a 9:16 still gives a 9:16 talking clip. OmniHuman v2, the default OmniHuman, bills 14.175 per second of audio (71 for 5 seconds). For both, we quote price and settings, not results.
5. Optional: a reaction shot
A silent beat of the creator looking at the phone, surprised, can sit between the hook and the recording. Image-to-video from the same still: Kling v3 Standard, 57 credits for 5 seconds silent. Keep the motion small so the face stays close to the still.
6. Assemble on the Video Editor
The Video Editor is a separate mode of 8frame with a timeline and video, text, caption and sound layers. Put down, in order: the hook clip, the reaction shot, the screen recording, the CTA clip. Add captions: "Generate captions" turns your pasted lines into a caption layer timed at an estimated 160 words per minute (it does not transcribe audio, so check the timing against the voice). Add the app name and the store badge as text.
Do not join these clips with the Montage node: its merged file has no sound, and both talking clips would go silent.
Testing hooks without filming again
The sandwich makes hook tests cheap in time. The screen recording and the CTA clip stay the same; only the first two to three seconds change. Write three or four hook lines on the board, make one voice clip and one lip-sync clip per line from the same creator still, and export one version of the ad per hook from the Video Editor. Each version differs only in the opening, so when one wins you know why. Keep the creator, the voice and the recording identical across versions, or the test measures the wrong thing. Price each hook as its own voice line (13 credits per started 1,000 characters) plus its own lip-sync clip at the node's per-second rate.
Which model for which step
| Step | Model | What decides it |
|---|---|---|
| Talking hook and CTA | Pruna Avatar | Per second of audio, 720p or 1080p (6.075 per second), up to 35 s, keeps portrait shape |
| Talking hook and CTA, longer takes | OmniHuman v2 | 4 to 35 s, billed per second of audio |
| Talking line at higher resolution | Hailuo H3 Max Lip Sync | 480p 34, 768p 54, 1080p 108, 2K 216 per 5 s; audio clipped at about 14.8 s |
| Silent reaction | Kling v3 Standard | Start image required, 720p, 3 to 15 s |
| Silent reaction at 1080p | Kling 2.6 Pro | 47 for 5 s silent, 1080p |
| The app's screen | none | Always a real recording |
Where it breaks
- Generated interfaces. Never let a model draw your app. If a creator still shows a phone screen, check that it is blank or turned away.
- No mouth re-sync. If you film a real creator later and want new words, 8frame cannot re-sync the mouth on that footage. Lip sync makes a new clip from a still.
- Montage drops sound. Use the Video Editor timeline.
- Frame rate and resolution. Every video model we measured delivers H.264 MP4 at 24 fps. A phone screen recording is often at a different frame rate and a higher resolution than the creator clips. Export the whole ad at one rate and check that scrolling in the recording still looks smooth.
- Length of talking clips. Pruna Avatar and OmniHuman stop at 35 seconds per clip, Hailuo H3 Max at about 14.8 seconds of audio. Two short lines fit easily.
- No video background removal. Background removal on 8frame works on images only. If you want the creator cut out over the recording, make a cut-out still and composite stills, or cut between full-frame shots.
This is an ad, not an App Store preview
Apple's App Store guidance on app previews says previews "demonstrate the features, functionality, and user interface of your app using footage captured on device", that they "must show only content within the app itself", and: "Don't film people interacting with a device, such as an over-the-shoulder angle or fingers tapping the screen." You can have up to three previews per language, up to 30 seconds each.
So the creator sandwich cannot be your App Store preview. Use the screen recording alone for the preview, and the full ad with the creator on TikTok, Reels and other paid placements.
Labels
An AI presenter is significant AI content: label it where the platform asks. TikTok's ads policy asks for its AIGC label or your own clear disclaimer on significant AI content (last updated April 2026); the other platforms' rules and the US state laws on synthetic performers are collected on do you have to disclose AI-generated ads.
FAQ
Can I use AI to show my app's screens in an ad?
Show real screen recordings. A generated phone screen shows an interface the model invented, which misrepresents the app.
Can the AI creator ad be my App Store preview?
No. Apple says app previews must use footage captured on device, show only content within the app, and not show people interacting with a device.
Which lip-sync model should I use for the creator?
By price and length: Pruna Avatar bills 3.375 credits per second at 720p up to 35 seconds; OmniHuman v2 bills 14.175 per second of audio from 4 to 35 seconds (71 for 5); Hailuo H3 Max Lip Sync goes up to 2K for audio up to about 14.8 seconds. We have not measured their quality.
How do I put the creator and the recording in one video?
On the Video Editor timeline: hook clip, screen recording, CTA clip, plus captions and text. Not with Montage, which drops sound.
Do I need to label an AI presenter?
Yes, where the platform asks, which includes TikTok: its ads policy asks for the AIGC label or your own clear disclaimer. Other platforms are covered on do you have to disclose AI-generated ads.
Sources
- Apple Developer, App previews (footage captured on device, only content within the app, no people interacting with a device, up to three previews per language, up to 30 seconds), checked 2026-11-09
- TikTok Ads Policy, Misleading and false content (AIGC label or own disclaimer; product effect comparisons; last updated April 2026), checked 2026-11-09
- 8frame prices, defaults and limits: the 8frame app, checked 2026-11-09
Try it without signing up: the 8frame canvas opens on a real board. The canvas is free and unlimited; generation is paid from $19/month.