Thirty seconds sounds like plenty of time until you start writing. You need a hook, a reason to care, proof the product works, an offer, and a clear call to action — all before the viewer's thumb twitches toward the next video. Good script writing tips for 30 second video ads come down to one discipline: treating every second as a decision, not a formality.
What a 30-Second Ad Script Actually Needs to Do
A 30-second ad is long enough to tell a mini-story but too short to waste on throat-clearing. The script has one job across six roles: stop the scroll, name a problem the viewer recognizes, show the benefit, back it up, make an offer, and tell them what to do next. If any one of those is missing, the ad either confuses people or gets skipped before it earns a click.
This is different from writing a 15-second ad, where you often have to cut proof entirely and lean on the hook and offer alone — see our script writing tips for 15-second ads if you're also testing shorter cuts. At 30 seconds, you have room for one proof point and one objection handle, but not much more. Treat the extra seconds as a budget, not a bonus.
The Beat-by-Beat Structure for a 30-Second Script
Before writing a single line, block out the ad in seconds. This forces you to decide what earns screen time instead of discovering it's too long after you've already recorded voiceover.
| Beat | Time | Job |
|---|---|---|
| Hook | 0–3s | Stop the scroll with a problem, visual surprise, or bold claim |
| Problem | 3–8s | Name the frustration in the viewer's own words |
| Benefit | 8–16s | Show the product fixing the problem, not just describing it |
| Proof | 16–22s | One believable reason to trust the claim — a demo, a before/after, a guarantee |
| Offer | 22–26s | What they get and why now (bundle, discount, bonus, limited stock) |
| Call to action | 26–30s | One action, said twice, paired with an on-screen button or text |
Notice the benefit beat gets the most time. That's deliberate — it's where the viewer decides whether to keep watching, and it's where most scripts get vague. Everything before it earns attention; everything after it closes the sale.
Script Writing Tips for 30-Second Video Ads
1. Write the hook as a standalone sentence
Your hook should make sense with zero context — no brand name, no setup. Lead with the problem or a specific claim: "Your phone case is probably hiding scratches right now" beats "Introducing our new phone case." If you want a repeatable formula instead of starting from a blank page, our hook writing formula for video ads walks through several patterns you can swap in.
2. Write for silence, then add sound
Design the script so the on-screen text alone tells the story. Write your hook, problem, and offer lines as captions first, then write the voiceover to support — not duplicate — them word for word. A viewer scrolling with sound off should still understand the offer from text alone. For where those lines should sit on screen without blocking the product or UI, check subtitle placement tips for vertical video ads.
3. Give every line a job
Read each sentence and ask: what does this change in the viewer's mind? If the answer is "nothing, it's just context," cut it. A 30-second script has room for roughly 60-80 spoken words at a natural pace — every one of them should move the viewer from skeptical to convinced to ready to tap.
4. Make the problem specific, not generic
"Tired of bad sleep?" is weak because it could open any sleep product's ad. "You fall asleep fine but wake up at 3am staring at the ceiling" is specific enough that the right viewer feels seen. Specificity is what makes a stranger's problem feel like their own problem.
5. Use one proof point, not three
A 30-second script tempts writers to cram in a review quote, a before/after, and a guarantee badge. Pick the single most convincing proof for your product — a visual demo usually beats a claim, a claim usually beats a vague guarantee — and give it real screen time instead of flashing three weak signals.
6. End on one action, not a menu of options
"Shop now, link in bio, follow for more" splits attention three ways in the three seconds you have left. Choose one action that matches the platform and placement, say it clearly, and repeat it once in text and once in voiceover so it lands even if the viewer only catches half the line.
Common Mistakes That Waste Your 30 Seconds
- Spending the first 5 seconds on logo, brand name, or a slow establishing shot instead of the hook
- Describing features ("made from recycled aluminum") instead of the benefit ("won't dent if you drop it")
- Writing one long paragraph of voiceover instead of short, caption-sized lines that match how people read on a phone
- Adding a second offer or a second CTA near the end, which forces the viewer to choose instead of act
- Writing the script to sound impressive when read aloud by the writer, not when skimmed in silence by a scrolling stranger
A Sample 30-Second Script You Can Adapt
Here's a worked example for a generic product — a spill-proof travel mug — showing how the beats translate into actual lines. Swap in your own product details and keep the timing roughly the same.
- 0–3s (Hook): "This mug survived a backpack drop test at full speed." (visual: mug tumbling, no spill)
- 3–8s (Problem): "Every other mug we tried either leaked in the bag or spilled on the first bump."
- 8–16s (Benefit): "This lid locks with one twist, seals flat, and holds hot or cold for hours — so it travels however you do."
- 16–22s (Proof): "We shook it, dropped it, and left it upside down for a day. Still dry." (visual: upside-down shake test)
- 22–26s (Offer): "Right now it ships with a free travel sleeve — while stock lasts."
- 26–30s (CTA): "Tap to get yours before the sleeve offer ends."
Notice there's no mention of materials, colors, or company history. Every line either creates tension or resolves it. If you want a blank version of this structure to fill in for your own product, our script template for a 30 second video ad lays out the same beats as a copy-paste worksheet.
Adjusting the Script for Different Products
Not every product fits the problem-benefit-proof pattern the same way. A few adjustments worth testing:
- For a bundle or multi-item offer, spend part of the benefit beat explaining why the items work better together rather than listing each one — see script ideas for product bundle video ads for patterns that handle multiple products without feeling cluttered
- For an upsell to existing customers, open with the problem a current product doesn't solve rather than a cold-audience hook — our cross-sell script ideas cover this angle
- For a low-consideration impulse buy, shrink the problem beat and spend the saved time on the offer, since the viewer doesn't need much convincing to try something cheap
- For a considered purchase, spend more of the 30 seconds on proof and less on the hook, since the viewer is already somewhat primed to compare options
How FrameNotion Fits Into This
Writing the script is the hard part; producing the actual 30-second video around it is where a lot of time disappears. FrameNotion reads a product page or link, and FrameNotion AI writes a custom 30-second vertical ad script from scratch — covering the same hook, problem, benefit, proof, offer, and call-to-action structure described above — then renders it as a 9:16 MP4 with an AI voiceover, music, sound effects, and word-by-word captions, built to work on mute too.
If you already have a script you like, you can still use the structure in this guide as a brief: upload your product images, add notes about your offer or promo code, and FrameNotion AI builds the scenes around that direction. A finished ad takes about 10-20 minutes, and once it's rendered you can request edits to text and colors without starting a new ad. See examples of finished ads, or check how it works and plans if you want to turn a script like the one above into a ready-to-run video today.
Frequently Asked Questions
Frequently asked questions
How many words fit in a 30-second ad script?+
As a starting point to test, aim for roughly 60-80 spoken words at a natural pace, split across short lines rather than one long paragraph. If your draft runs much longer, cut explanation and keep only lines that change the viewer's mind.
Should the hook mention the brand name?+
Generally no. Leading with a problem, claim, or visual surprise tends to hold attention better than opening on a logo or brand introduction, since the viewer hasn't decided to care about the brand yet. Save the brand name for the offer or CTA beat.
How is a 30-second script different from a 15-second one?+
A 15-second script usually has to drop the proof beat entirely and move straight from problem to offer. A 30-second script has room for one proof point and a slightly longer benefit explanation, but not much more than that.
Can one script work across TikTok, Reels, and Shorts?+
The same structure usually transfers, but test adjusting the hook's tone for each platform's native feel and double-check caption placement doesn't clash with each platform's UI elements like captions or buttons.
Does FrameNotion write the script or just the video?+
FrameNotion AI writes the script and the video together: it reads your product page, drafts the hook-problem-benefit-proof-offer-CTA structure, and renders it as a finished 30-second MP4 with voiceover, music, and captions in one pass.
