Woman delivering a line to a camera

Video Ad Script Framework: Hook, Story, Offer in 30 Seconds

October 27, 2026

The best video ad script framework is the one that forces a decision before you type a word: who is watching, what single promise are you making, what proof backs it, and what should they do next. Then you spend the script on three beats, hook, story, offer, in that order, with a word budget that fits the runtime. Everything else is formatting.

Most ad scripts fail before the first line. Someone opens a blank document, writes “Are you tired of…”, lists six features, and ends with a logo. That is not a script. That is a brochure read aloud, and you paid for the camera crew.

Here is the framework we use, the template that goes with it, and how to bend it for customer testimonials, which is where most B2B video budgets go to die.

Rivetline
rivetline.ai
Make Every Video Ad Count
Rivetline pairs video production with ad execution, helping your creative reach audiences across Google, Meta, and ChatGPT Ads.
Explore live marketing dashboards

TL;DR

  • Decide the viewer, channel, one promise, proof and next action before writing. If you can’t say the ad in one sentence, the script won’t save it.
  • Use Hook, Story, Offer: stop the scroll, build belief, make acting easy.
  • A 30-second spot has room for roughly 65 to 80 spoken words. Write to that, not to your ego.
  • Script in two columns, picture and sound, and make sure the ad works with the sound off.
  • For testimonials, interview for specifics (the before, the doubt, the reason they said yes), and follow the FTC’s disclosure rules.

Table of Contents

Decide these things before you write anything

The Native Advertising Institute lists what a script brief should settle up front: the target viewer, distribution channel, key messages, the value to the audience, the desired action, the visual style, the format and the runtime. It also asks for a single central idea. Defining goal and format first shapes the tone, the language, the visuals and the length.

We boil that down to a five-line brief. Fill it in or don’t start.

  1. Viewer and situation. Not “marketing managers.” A VP of marketing at a 60-person SaaS company scrolling LinkedIn between meetings is a viewer. A demographic is not.
  2. The problem or desire. One. The one they’d name themselves.
  3. The promise. One sentence. If it has an “and” in it, you have two ads.
  4. The proof. A number, a named customer, a before and after, a demo. Something a skeptic can check.
  5. The next action. Book a call, watch the demo, download the audit. One.

One promise and one proof is the whole discipline. Cram in every feature and none of them sticks, which is the most common mistake we see in scripts clients bring us from their previous agencies. Agencies love a long feature list because it is easy to defend in a review meeting. Viewers don’t sit in the review meeting.

The channel matters more than people admit. A skippable YouTube pre-roll, a Meta feed placement and a CTV spot are three different jobs. If you’re planning the media side too, our Meta ads campaign structure and Google Ads campaign structure guides show where each cut of the video ends up.

The Hook, Story, Offer framework

Three beats. Not seven, not a six-part wheel with a clever acronym. Three, because a 30-second ad has no room for a fourth.

Hook Story Offer timing across thirty seconds

Beat one: the hook (first 3 seconds)

The hook has one job: earn the next five seconds. It is not your brand name, not a logo sting, not “Hi, I’m Dave, and I’m the founder.” (Dave is lovely. Dave can wait.)

Four hooks that reliably work in B2B:

  • The specific number. “We cut one client’s cost per lead by 41%.” Only if it is true and you can show it.
  • The call-out. “If your agency sends you a PDF once a month, watch this.”
  • The mistake. “Most Performance Max campaigns launch with zero real video. Here’s what happens next.”
  • The visual interrupt. Something on screen that is odd enough to pause a thumb: a shredded report, a dashboard moving in real time.

Write five hooks per script. Pick the two best and shoot both. A hook is the cheapest variable to test and the one that moves results most, which is why our creative testing framework starts there.

Beat two: the story (seconds 3 to 22)

The story is where you establish the problem, show the proof, and carry the viewer from where they are to where they could be. The customer is the hero, and your product is the tool they pick up. Once the ad turns into “we are the greatest,” viewers leave.

A workable story skeleton:

  1. The situation (one line, in the viewer’s words)
  2. What it costs them (one line)
  3. What changes (one line, your solution)
  4. The proof (one or two lines: a result, a face, a screen)

That’s four lines for about 20 seconds. If it feels thin, good. Thin is what a 30-second ad is.

Beat three: the offer (last 5 to 8 seconds)

The offer is a reason to act now, and the lower the friction, the better. “Book a demo” is a request. “See your numbers on a live dashboard in 15 minutes” is an offer. Say it in voiceover, put it on screen, and say it once. Repeating the CTA three times does not triple the clicks; it triples the eye rolls.

If your offer is weak, no script fixes it. Sharpen the offer before the next round of hook testing.

How many words fit in 30 seconds

The number everyone asks about. At a comfortable, conversational read, a 30-second spot holds about 65 to 80 words, and a fast read stretches to roughly 85 to 95. That works out to about 2.2 to 2.7 words per second, which matches how people actually talk when they aren’t racing.

So write to a budget:

Beat Seconds Spoken words (comfortable pace)
Hook 0 to 3 8 to 10
Story: situation and cost 3 to 12 22 to 28
Story: solution and proof 12 to 22 22 to 27
Offer and CTA 22 to 30 13 to 15
Total 30 65 to 80

Two cautions. First, a script isn’t all speech: leave beats of silence for a visual to land. Second, read it out loud with a stopwatch before anyone books a shoot. Scripts that look fine on a page routinely run 38 seconds when spoken. Cutting in the edit costs money. Cutting in the doc is free.

A video ad script template you can copy

Use two columns. Left, what we see. Right, what we hear. The Native Advertising Institute recommends this format, and adds two rules worth stealing: put the CTA in voiceover or on-screen text, and make the visuals speak to viewers who have the sound off. Most social video is watched muted at first, so a script that depends entirely on audio is a script written for a studio, not a feed.

Time Visual (what we see) Audio (what we hear) On-screen text
0:00 to 0:03 Close-up: a monthly PDF report, hand slides it into a shredder VO: “Still getting a PDF once a month?” “Your agency report is already out of date”
0:03 to 0:12 Founder at desk, checks phone, frowns; cut to calendar full of review calls VO: “By the time you read it, the budget’s spent. And the call to discuss it is next Tuesday.” “Spent. Not seen.”
0:12 to 0:22 Screen capture: live dashboard updating; client smiles VO: “Our clients check results any time. Live. Same data we use to make decisions.” Dashboard label: “Leads this week”
0:22 to 0:30 Logo card with URL; founder nods VO: “See your own numbers live. Link below.” “See your marketing live” + URL

That is about 55 spoken words, which leaves headroom for pauses and a slower read. Notice what the template does: every spoken line has a matching visual, and every key idea also appears as text, so the ad survives mute.

If you need a longer cut for a landing page or sales team, our explainer video script guide covers the production-ready handoff, and the B2B video marketing playbook explains where one good video earns its keep in a sales cycle.

Match the structure to the audience temperature

Hook, Story, Offer is the spine, but the flesh changes with who’s watching.

  • Cold audience: lead with the problem. Problem, agitation, solution works because strangers don’t care about you yet; they care about their own headache.
  • Warm audience (visited the site, watched 50% of a video): lead with proof. Testimonials, case results, a demo.
  • Hot audience (pricing page, abandoned form): skip the story. Offer, objection, offer.

The lazy habit is running one video for all three. It’s the creative equivalent of sending the same email to your whole list, and it wastes the same way: the cold viewer hears too much about you, the hot viewer hears too little.

Customer testimonial videos: the framework adapted

Testimonials are the proof beat stretched into a whole ad. They are also where we see the most wasted money, because teams book a customer, point a camera at them and ask, “So, how was working with us?” The answer is always “Great!” It’s always useless.

The fix is to interview for a story, not praise. Acquisition.com’s testimonial SOP uses an Epiphany Bridge structure that walks through the customer’s before state, what caught their attention, their hesitation, what they did, and where they are now. That maps cleanly onto Hook, Story, Offer: the before state is your hook, the doubt and decision are the story, and the after is the proof that sets up your offer.

Testimonial video questions that get specific answers

The same SOP suggests questions along these lines. Here’s our working list:

  1. “What was your situation before you started working with us?”
  2. “What had you already tried?”
  3. “What were your doubts or fears about hiring us?”
  4. “What made you say yes anyway?”
  5. “What changed, in numbers if you have them?”
  6. “What would you tell someone who is where you were?”

Push for the concrete detail. Backstage’s guidance on creator-led ads notes that a precise detail such as a drink that stayed cold for six hours lands harder than generic superlatives. The B2B version: “We went from waiting nine days for a lead report to checking it on my phone.” Nobody writes that line for you. You have to dig for it, so ask “can you give me an example?” after every vague answer.

On scripting: don’t. Give the customer a short brief covering the audience and the facts, then let their own phrasing and humor stand. Backstage’s advice on UGC-style ads is the same: a concise brief that protects room for authentic language. Your script for a testimonial is really the question list, the target runtime, and the edit plan. Write the hook after the interview, from the best line you got.

B2B testimonials are a different animal

B2B buyers need to see a peer. Put a title and company on screen. Have the customer name the metric that mattered to them, not the one you wish had mattered. And keep it short: 30 to 60 seconds for paid placements, with a longer cut for the sales team’s follow-up emails.

What the FTC expects

This is the part people skip, and shouldn’t. Under the FTC’s rules on endorsements, a connection between the endorser and the seller must be disclosed if it might materially affect how credible the endorsement is and consumers wouldn’t reasonably expect it, per the FTC’s notice of penalty offenses. The same notice says it is deceptive to misrepresent that a testimonial reflects the typical experience of users. If your star customer got a result three times better than average, say so, or pick a representative one.

The FTC has also said that even an incentive with no financial value can need disclosure, for example the chance to appear in an ad. A free month of service for a video is an incentive. Disclose it.

For video, the FTC’s position is that disclosures must be clear and conspicuous, and when an endorsement has both visual and audio parts, the disclosure belongs in both. A tiny line of text in the last frame, with nothing spoken, doesn’t do it. Get a signed release, keep the raw footage, and have counsel review anything involving incentives or claims about results.

What the FTC expects — overview diagram

Our perspective: stop scripting for approval

We’ve inherited a lot of ad scripts from agencies that were written to survive a committee. They have a clear brand mission, three value props, a legal-friendly tagline and zero chance of being watched. Process ate the budget, and what’s left on screen is the residue.

Here is what we believe. One idea per ad. Make five hooks and kill four. Shoot the cheap version first and let the data say which one deserves a bigger production. And look at the results live, because a monthly PDF tells you what happened after the money’s gone. That’s why we connect campaigns to GA4 and live Looker Studio dashboards, so when a hook is dying on day two, you see it on day two.

The most expensive ad is the one that took six weeks to approve and gets pulled after three days. The cheapest is the rough cut that told you the truth by Friday.

— Chris Breikss

When you want someone else to run this

If you’d rather have the script, shoot and media handled by people who treat the creative as the main event, that’s what our B2B video production team does. We write to the framework above, build hook variants, and ship the ads into Meta and Google with reporting you can open any time. Our live marketing dashboard page shows what that looks like. No published price menu: scope depends on how many ads and variants you need, so you’d start with a conversation.

Working on Performance Max? Add one real video before you touch bids; our Performance Max strategy post explains why.

A final checklist before you shoot

  • The brief names one viewer, one problem, one promise, one proof, one action.
  • Five hooks written; two will be shot.
  • Spoken word count fits the runtime (65 to 80 for 30 seconds) and was timed out loud.
  • Every spoken idea has a visual, and every key idea appears as on-screen text.
  • The CTA is in voiceover and on screen, once.
  • Testimonials: interview questions prepared, release signed, incentives and typicality disclosed in both audio and visuals.

FAQ

What is a good video ad script framework?

Hook, Story, Offer. Open with a hook that earns attention, use the story to set up the problem and the proof, then close with a low-friction offer. Settle the viewer, promise, proof and next action before you write, and it fits any runtime from 15 seconds to two minutes.

How long should a 30-second ad script be?

About 65 to 80 words at a comfortable pace, or up to roughly 95 if the read is fast. Leave room for silent visual beats, and always read it aloud against a stopwatch, since scripts run longer spoken than they look on the page.

What should I ask in a customer testimonial video?

Ask about the before state, what they had tried, what made them hesitate, why they said yes anyway, and what changed in concrete terms. Follow every vague answer with “can you give me an example?” Specific details beat praise every time.

Do I have to disclose anything in a testimonial ad?

Yes, in the US. The FTC expects you to disclose any connection or incentive that could affect credibility and that viewers wouldn’t expect, and not to imply a testimonial is typical when it isn’t. In video, put the disclosure in both the audio and the visuals. Ask a lawyer about your specific claims.

Sources

Chris Breikss

Chris Breikss

Chris Breikss is the founder of Rivetline, an AI visibility agency based in North Vancouver, BC. He works with B2B companies on the three things that decide whether AI models cite a business or skip it: structured signals, extractable content, and authority. He's also a founding partner at Major Tom, Rivetline's sister agency. Chris writes about what's actually working in AI visibility, tested on client accounts before it shows up here.

LinkedIn logo icon
Back to Blog