UGC Script Template for Beauty & Makeup Ads (Free, 2026)
A 30-second makeup UGC script built on the wear test rather than the application shot — with timings and annotations.
Quick Answer
A beauty UGC script runs about 30 seconds and should be built on the wear test, not the application: a 0-3s hook naming the hour the product usually fails, a 3-22s body showing the same face at that hour, and a 22-30s CTA. Application footage is beautiful and proves nothing.
Application footage is the default beauty creative and it is close to worthless as proof. Everything looks good at minute zero. The audience knows this, which is why a flawless application shot reads as an ad and a 4pm mirror check reads as evidence.
The wear test is the format that converts. Name the hour the category usually fails — the 2pm slide, the 6pm crease, the end-of-shift transfer — and then show the same face at that hour in the same light. The structure does the persuading; the copy just has to stay out of the way.
The one non-negotiable is lighting continuity. If the hook shot and the wear shot are lit differently, the comparison is worthless and a beauty audience will spot it immediately. Same window, same time of day relative to the light, same distance.
The beauty and makeup UGC script
30 seconds · 81 spoken words · copy it, swap the product, keep the structure.
Hook 0.0-3.0s
“Every foundation I have owned is gone by two in the afternoon.”
On-screen text: 2pm
Visual: Front-facing, natural window light, no ring light. Creator tilts face toward the light — the surface is genuinely visible.
Why this beat converts: Names the specific hour the category fails rather than promising longevity. An hour is checkable in a way "long-wearing" is not, and the specificity sets up the proof the body beat is about to deliver. No ring light: a beauty audience reads ring lighting as ad lighting.
Body 3.0-22.0s
“Put this on at seven this morning, no primer, no setting spray, and I have been outside twice. This is the same window, same phone, nothing on the lens. It has moved a little around the nose and that is it. I am not saying it is invisible, I am saying it is still there.”
On-screen text: 7am → 4pm · no primer
Visual: Same window, same distance, same phone as the hook shot. Timestamp visible. Creator turns face slowly through the light rather than holding still.
Why this beat converts: Lighting and framing continuity is the entire proof. Stating the controls out loud ("no primer, no setting spray, same window, nothing on the lens") pre-empts the exact objections a beauty audience raises. The admission that it moved around the nose is what makes the rest credible — a perfect result at 4pm would be disbelieved.
CTA 22.0-30.0s
“Shade nine, linked. Go one lighter than you think if you are between two.”
On-screen text: link in bio
Visual: Product held briefly, shade name readable. Ends on the creator turning back to the mirror.
Why this beat converts: Naming the specific shade and giving a shade-matching tip converts and simultaneously cuts the return rate that destroys beauty UGC economics. Practical advice at the CTA reads as help rather than as a close.
Before you run this: beauty and makeup ad compliance
Keep claims cosmetic rather than therapeutic — "evens the look of skin tone" is cosmetic, "repairs" or "heals" is not. Meta restricts before/after imagery in the beauty category, so frame the wear test as same-day continuity ("7am to 4pm") rather than as a transformation. Avoid implying the viewer's appearance is a problem to be corrected.
Adapting this to your product
- Build the script on a wear test, not an application shot. Everything looks good at minute zero and the audience knows it.
- Name a specific hour, not a duration claim. "Gone by 2pm" is checkable; "long-wearing" is not.
- Keep lighting, distance, and device identical between the hook and the wear shot, and say so out loud.
- Admit one imperfection in the result. A flawless 4pm face gets disbelieved and takes the rest of the script with it.
- Give a shade-matching tip at the CTA. It converts and it cuts the returns that wreck beauty UGC margins.
Frequently Asked Questions
Turn this script into a finished video
Generate the creator, the scenes, and the render with Sora 2, Veo 3.1, Kling 3.0, or Seedance 2.0. Need hooks first? See the viral hook formula library.