Start with 1 task or 10 hours — scale when ready. View pricing →
Consumer AI app · US · Meta ads

From 2 videos that ever worked to 160+ ads in four months.

A fast-growing app needed ads that sell. We figured out what to say, who should say it and how to film it so it doesn't look like an ad — then let real results pick the winners.

April–August 2026Pilot + 2 testing batches
7 creators · 15+ formats9:16 and 4:5 for every video
Our scopeResearch, strategy, scripts, casting, production, analysis
Not our scopeMedia buying — the client ran the account
real frames from the ads
160+video ads delivered
1 in 3test videos brought customers at the target price
−35%cheaper per customer: our best big-budget video vs the account average
#1our video got the biggest budget among ~770 ads
Cost per sale = ad money spent to win one paying customer. Lower is better.Batch = one round of videos made and tested together.Hook = the first 1–3 seconds that make people stop scrolling.
Q1 · Why weren't their ads working?

People had seen the same ads over and over.

The client is an AI app that turns a few selfies into professional headshots. It spends a large monthly budget on Meta ads and wanted to roughly double it. The ads couldn't keep up: almost all of them were still images, and only one or two videos had ever worked.

For marketersAccount ran on fatigued statics; top creatives at frequency ~2; no creative diversity, no read on why winners won.

Before
  • Mostly static ads, all of them fatigued
  • Only 1–2 videos had ever worked
  • Top ads seen twice by the same people
  • No way to tell why a winner won
The brief
  • Find video winners across audiences
  • Learn what message, format and face sell
  • Keep a pipeline of fresh hypotheses
  • Hand over data the team can act on
Q2 · How do you know what to say in an ad?

We don't guess. We read what customers already wrote.

Before writing a line, we study why people buy and what stops them. Their own words become the script.

For marketersAbout half of the first 70 concepts trace to a specific data point: buyer segments, review themes, objection clusters from ad comments.

1 · We read

What buyers already say

Buyer surveys, reviews, comments under the ads, past ad results and what competitors run.

2 · We find

Why they buy, and what stops them

Who the buyer is, where they use the product, and the three doubts that kill the sale.

3 · We write

Scripts in their words

Every concept points back to something a real customer said or did. No brainstorm guesses.

Buyers kept mentioning where their “before” photo came from: a car, a couch, a bathroom mirror.PATTERN IN AD COMMENTS
Split screen: car selfie on the left, AI headshot on the right

Real starting points sell the result. We asked creators for their actual car, couch and bathroom selfies and put them next to the output. "Left was taken in a car" became a whole series.

“What happens when you show up for the interview?”THE #1 FEAR IN AD COMMENTS
Same person, same face, just professionally lit

People don't fear looking worse. They fear looking different. So the message became "same person, same face, just professionally lit" — never "a new you".

Most buyers are working professionals: sales, healthcare, founders, real estate — and most use the photo on LinkedIn.FROM THE BUYER DATA
Real estate website mockup with the creator's headshot

Viewers should recognise themselves in two seconds. Scripts name real jobs — realtor, sales lead, founder — and show the headshot where it lives: a LinkedIn profile, a listing site.

Q3 · Why make 70 videos instead of 5?

Nobody can predict the winner. So we test 70 ideas and let sales decide.

Each video checks one idea: a different reason to buy, a different style or a different person. After two weeks you know which ones bring customers.

For marketers8 angles × 6 formats × 2 creators, 15 hypotheses, gender-swapped scripts to isolate the creator effect, 3 awareness levels, Angle_Format_Creator_Hook naming.

See the 8 reasons to buy we tested
Reason to buyThe ideaExample hook from our scriptsBuilt from
PainThe cost of an old photo"I've been putting this off for two years."Buyers who avoid photoshoots
Before / afterShow, don't tell"How I turned my worst photo into my best LinkedIn headshot."Real before photos from customers
SpeedDone before your coffee cools"15 minutes. From opening the site to a new LinkedIn photo.""It was so fast" in customer words
OccasionA deadline you can't move"I had 48 hours before the interview…"Job seekers among buyers
Social proofResults people can see"This one LinkedIn change increased profile views in 2 weeks."Word of mouth among buyers
AspirationLook like who you are now"POV: your LinkedIn finally looks like someone they'd want to hire."Where buyers use the photo
SkepticAnswer the doubt head-on"Same person. Same face. Just professionally lit.""Will they recognize me?"
Career statsResearch-backed urgency"Why do less qualified people get more opportunities?"Published first-impression studies
15 hypotheses 70 concepts in batch 1 35 / 35 male / female 3 awareness levels 3 hook types per long script Angle_Format_Creator_Hook naming for instant analysis
Q4 · Why don't your videos look like ads?

Because ads get skipped. We copy what people watch for fun — and hide the proof inside.

An ad that looks like an ad gets skipped. So every format comes from organic TikTok and Reels — question stickers, trend memes, street-style signs, a FaceTime call — and almost every one carries the proof: the selfie next to the headshot.

For marketersNative-first formats (UGC talking head, POV, VO + B-roll, trend memes, chat/FaceTime UI) with before/after built in; every video delivered in 9:16 and 4:5.

every video in 9:16 + 4:5
Native: Instagram Q&A sticker

Answering a follower

Looks like a creator replying to a question, not a brand selling.

Native: POV caption

POV moment

The viewer steps into the scene: checking LinkedIn before an interview.

Proof: split screen

Left vs right

Real selfie on the left, generated headshot on the right. No words needed.

Proof: camera roll grid

Worst to best

Our best video of batch 1: real bad photos, then the result.

Proof: LinkedIn mockup

Two profiles

Same profile, same stats, only the photo changed.

Native: explainer

The research angle

Studies on screen for viewers who need a reason, not a feeling.

Trend: good / better / best

Ranking meme

Selfie, phone portrait, AI headshot. The last one wins on its own.

Trend: handwritten quiz

True or false

A paper sign stops the scroll and makes people guess.

Trend: protest sign

Written hook

One bold fact on a sign, read in under a second.

Trend: shock & flip

Reaction, then reveal

Seven seconds of genuine surprise, then the phone flips to the site.

Story: FaceTime with past self

Calling April me

One actress, two looks: the burnt-out job seeker and the one who got the offer.

Native: chat screen

Texting a friend

"Babe, you actually got into Google! How?" — the ad is a voice-note thread.

Rule 1

Native first

Start from a format the platform already rewards: stickers, POV, memes, chats.

Rule 2

Proof inside

A before/after or a real profile in every video, because the transformation is the product.

Rule 3

Real people, real rooms

Creators shoot at home with their own old photos. Nothing looks staged or stock.

Q5 · What makes a frame work?

Every part of the screen has one job.

The overlays are designed in-house: same caption style, same before/after rings, the creator's real name on every profile. Viewers learn the visual language and read each frame in a second.

read in one second
Annotated frame: question sticker, face, caption, before and after avatars 1 2 3 4 5
  1. Hook in the top third. A native question sticker, read before the face.
  2. Face in the centre, eye-line to camera, a real room behind.
  3. One idea per caption, white boxes like organic posts.
  4. Proof: before → after avatars in red and green rings, real name and job title.
  5. Soft CTA in the caption, never a banner.
Annotated frame: LinkedIn profile before, caption, LinkedIn profile after 1 2 3 4 5
  1. "Before" profile on top — the old photo in a real LinkedIn layout.
  2. Creator points at the change, so the eye follows her hand.
  3. Green highlight on the outcome: "increased profile views in 2 weeks".
  4. "After" profile below, same name, same bio, only the photo differs.
  5. Bottom 20% left clear for the platform's buttons; key text stays inside the 4:5 crop.
Q6 · Does it matter who's in the video?

A lot. The same words from the wrong person cost almost 2× more per customer.

We pick people for how they sound, not how many followers they have — and we tested the same scripts with both creators to prove it.

For marketersCreator-angle fit: weighted CPA per angle by creator; the same pain script ran at 0.45X with one creator and 0.85X with the other.

Chris, talking head
Direct · urgent

Chris

Sounds like a friend calling you out.

  • Pain: "I've been putting it off for 2 years"
  • Deadlines: "Interview in 2 days"
  • Recruiter fear
Kaylee, speed demo
Warm · casual

Kaylee

Makes it feel easy and a little fun.

  • Speed: "15 minutes"
  • Before / after transformations
  • Aspiration and results
same script, different face
Cost per customer by message, relative to the account average X (lower is better) Chris Kaylee

X = the account’s average cost per sale. Kaylee’s before/after average is pulled up by one overfunded video; her best one ran at 0.55X.

Q7 · What makes a script sell?

Short, personal, in the customer's own words.

This product is bought on impulse by busy professionals. So scripts hit a feeling in the first second, prove it with a real photo, and finish in under 20 seconds.

Openings that sold
  • "Interview in 2 days. No headshot." 0.4X
  • "Recruiters notice your photo first." 0.45X
  • "From my worst selfies to my best headshot." 0.55X
  • "My LinkedIn views tripled." 0.65X
Openings we dropped
  • "Recruiters judge you in 100 ms." 0 sales
  • "Your career is not a coincidence." 3.9X
  • "Does it actually look like you?" 1.2X
  • Anything longer than 20 s 1.25X

The pattern: personal and specific beats statistics and lectures. "You've been putting this off" makes people feel seen; "studies show" makes them scroll.

0–3 sHook"I've been putting this off for 2 years."
3–8 sThe cost"Someone less qualified got the interview."
8–15 sThe fix + proofSelfies in, headshot out, on screen.
15–18 sSpeed"Fifteen minutes."
18–20 sSoft CTA"Create yours for free."
Q8 · How do you know what works?

Every video gets a verdict: do more fix stop.

After each round we read the sales data for every video and decide what to make next. This is part of the real results table.

For marketersScale / iterate / kill per creative with next step; weekly marginal CPA, frequency and hold-rate checks; budget follows CPA, not volume.

VideoMessage · style · personCost per saleVerdict
WorstToBestBefore/after · voiceover · Kaylee0.55XDo more
RecruitersNoticePain · talking head · Chris0.45XDo more
AllUpdated15MinSpeed · voiceover · Kaylee0.65XDo more
PuttingOff2YrsPain · talking head · Kaylee0.75XFix
OldVsNewLinkedInBefore/after · talking head · Kaylee1.05X · high volumeDon't add budget
CareerNotCoincidenceCareer stats · voiceover · Chris3.9XStop
Round 1, in numbers
Produced
71
Launched
44
Winners
14
1 in 3

Winner = brought customers at 0.7X or less, i.e. 30% cheaper than the account average. One in three videos the client launched. The rest showed what not to make again.

learned

Voice-over beat talking to camera

0.7X vs 0.95X per customer — even though talking-to-camera got twice the budget.

learned

Short wins

Under 20 seconds: 0.85X per customer. Longer: 1.25X. New rule: nothing over 20 seconds.

learned

Showing the change beats talking about LinkedIn

0.55X vs 1X per customer. Round 2 focused on before/after stories.

Q9 · What did the client get?

Ads that bring customers cheaper than the rest of the account.

Measured on the real ad account, where several agencies and in-house teams compete for the same budget. X = the account’s average cost per customer.

0.65Xper customer for our best big-budget video. No other non-influencer ad with a comparable budget came close.
#1our video got the biggest budget of ~770 ads on the account — and brought the most sales.
0.88Xaverage cost per customer across all round 1 videos together — 12% below the account.
X = account average · lower is better
Q10 · What happens after the first round?

Keep what sells, add new faces and new styles.

Round 2: five creators, ten new trend formats, ~63 videos. Every script went to the person who sells that message best.

Q11 · What would this look like for you?

You don't need to know ads. You need a team that tests them.

Bring your product. We bring the research, the scripts, the creators, the native formats and the numbers — and tell you what to make next.

Week 1Research

Your reviews, comments and ad history.

Week 1–2Test plan

50–70 hypotheses you approve.

Week 2Scripts & casting

Hooks in variants, faces matched to messages.

Weeks 3–4Production

Native formats, before/after inside, 9:16 + 4:5.

Weeks 5–6Results map

Scale, iterate, kill — and the next batch.