FrameNotion

How to Write a Script for a 30-Second Product Ad (Step-by-Step)

A practical, step-by-step guide to writing a 30-second product ad script, with a six-beat structure, a second-by-second timing table, and three full sample scripts.

FrameNotion Team9 min read

If you're wondering how to write a script for a 30-second product ad, the short answer is: build it around six beats — hook, problem, benefit, proof, offer, and call to action — and write to the clock, not to a word count. Thirty seconds is short enough to hold attention across TikTok, Reels, and Shorts, but long enough to make a real case for your product. This guide gives you the structure, a second-by-second timing table, three full sample scripts, and the mistakes that quietly waste the seconds you have.

Why 30 Seconds Is the Right Length for a Product Ad

Thirty seconds sits in a useful middle ground. It's long enough to show a problem, a product, and proof it works, but short enough that you're forced to cut anything that doesn't move the viewer closer to a click. It also fits the native placements on TikTok, Instagram Reels, YouTube Shorts, and Facebook Reels without needing separate edits for each platform, so a single script can carry one ad across most of your paid social budget.

The tighter constraint also protects you from a common trap: trying to explain everything about the product instead of making one clear argument for why someone should care in the next few seconds. A 30-second script forces prioritization, which is exactly what makes it effective.

How to Write a Script for a 30-Second Product Ad: The 6-Beat Structure

Before you write a single line, block out the ad into beats and assign each one a rough time budget. This is the single most useful habit for anyone learning how to write a script for a 30-second product ad, because it stops you from front-loading brand story and running out of time for the offer.

  • Hook (0-3 seconds): Interrupt the scroll with a question, a bold claim, or a visual surprise tied directly to the product's core benefit.
  • Problem (3-8 seconds): Name the frustration your audience already feels, in their words, not your brand's.
  • Benefit and demo (8-20 seconds): Show the product solving that exact problem. This is where most of your runtime should go.
  • Proof (20-25 seconds): Give the viewer a reason to believe it works — a demonstration, a before/after, a simple comparison, or a specific feature that removes doubt.
  • Offer (25-27 seconds): State what makes acting now worthwhile — a bundle, a guarantee, free shipping, a limited stock line — kept short and concrete.
  • Call to action (27-30 seconds): Tell the viewer exactly what to do next in plain, direct language.

You don't need to hit these timestamps exactly, but treat them as guardrails. If your problem section is eating 12 seconds, you've likely written a mini-explainer instead of an ad, and something else will get cut. For a deeper breakdown of how to write the call-to-action beat specifically, see How to Write a Call to Action for Video Ads That Convert.

A Second-by-Second Timing Table

TimeBeatWhat Happens On ScreenVoiceover Word Guide
0-3sHookProduct in use, a striking result, or a pattern-interrupt question on screen6-10 words
3-8sProblemRelatable frustration shown or stated, often with the old/frustrating way of doing things12-16 words
8-20sBenefit & demoProduct solving the problem, close-up shots of the feature that matters most30-40 words
20-25sProofComparison, quick demonstration, or a specific detail that builds trust12-16 words
25-27sOfferText overlay with the offer, kept simple and legible on mute6-10 words
27-30sCall to actionClear instruction plus a visible button, swipe-up cue, or logo end card6-8 words

Treat the word counts as a starting point to test, not a rule. Pacing depends on your voiceover style and how much the visuals are already doing the talking. If your captions and demo footage carry most of the meaning, you can afford fewer spoken words and let the visuals breathe.

Three Sample 30-Second Scripts You Can Copy

Script 1: A Reusable Water Bottle

  • 0-3s — Hook: "Your water bottle is probably warm by lunch. This one isn't."
  • 3-8s — Problem: "Regular bottles sweat, leak, and go warm within an hour of leaving the fridge."
  • 8-20s — Benefit/demo: "This one keeps drinks cold for a full day, seals tight enough to toss in any bag, and the wide mouth means ice cubes actually fit." (Show pouring ice, sealing lid upside down, tossing in bag.)
  • 20-25s — Proof: "Still cold, still full, twelve hours later — no condensation ring on the desk."
  • 25-27s — Offer: On-screen text: "20% off your first bottle, today only."
  • 27-30s — CTA: "Tap below to grab yours before the offer ends."

Script 2: A Vitamin Gummy Brand

  • 0-3s — Hook: "I stopped forgetting my vitamins the day I stopped taking pills."
  • 3-8s — Problem: "Swallowing five capsules every morning was the first thing I skipped when mornings got busy."
  • 8-20s — Benefit/demo: "These gummies cover the same daily essentials, taste like fruit instead of chalk, and take five seconds instead of five capsules." (Show bottle open, gummies in hand, quick bite.)
  • 20-25s — Proof: "One scoop, one flavor, everything on the label — no mystery blend."
  • 25-27s — Offer: On-screen text: "Subscribe and save 15% on every order."
  • 27-30s — CTA: "Tap now to start your first month."

Script 3: A Phone Stand

  • 0-3s — Hook: "This is why your phone keeps falling off the nightstand."
  • 3-8s — Problem: "Flat surfaces, weak grips, phones sliding off mid-video-call — you know the drill."
  • 8-20s — Benefit/demo: "This stand locks at any angle, folds flat for your pocket, and holds steady even if you bump the desk." (Show folding, angling, a light tap test.)
  • 20-25s — Proof: "Same stand, three phone sizes, zero wobble."
  • 25-27s — Offer: On-screen text: "Buy one, get the travel case free."
  • 27-30s — CTA: "Tap to claim yours while stock lasts."

Notice all three follow the same skeleton but sound nothing alike, because the hook and problem are written in the language of that specific frustration. If you want a reusable starting document for this structure, the Video Ad Script Template for Ecommerce Products walks through a fill-in-the-blank version.

Common Mistakes That Waste Your 30 Seconds

  • Burying the hook after a logo intro. Any seconds spent on a brand animation before the hook are seconds the viewer may not give you.
  • Writing the benefit as a feature list. "Made with premium materials" says nothing; "still cold twelve hours later" says everything.
  • Skipping proof entirely. A single comparison shot or specific detail does more for trust than another adjective.
  • Cramming two offers into one ad. Pick one offer and state it once, clearly, near the end.
  • Writing one script and hoping it works. Different hooks test differently; plan for at least two or three hook variants against the same body script.

Writing for Sound On and Sound Off

Design the script so it works even if the voiceover never plays. That means the hook and the offer need to land as on-screen text, not just spoken lines, and the visuals in the benefit section should make sense without narration. Write the voiceover as reinforcement, not as the only carrier of meaning. Word-by-word captions help here too, since they keep the pacing visible even when the sound is off, and they let viewers who are watching with audio on stay locked to the rhythm of the cuts.

A practical way to check your script: read it aloud while covering the audio track in your head and imagine only the on-screen text and footage. If the offer and the ask are still clear, the script is doing its job on mute.

When to Use an AI Script Tool Instead of Writing From Scratch

Writing a strong 30-second script by hand takes practice, and most brands need dozens of variants to find hooks that keep working. If you're producing ads regularly, an AI script generator can shortcut the first draft by reading your product page and proposing a structured script you then edit rather than starting from a blank page. FrameNotion works this way: you paste a product or website link, and FrameNotion AI writes a full 30-second script — hook, problem, benefit, proof, offer, and call to action — built from what's actually on your page rather than a generic template. For more on how these tools compare, see the Ad Script Generator for Product Videos buyer's guide.

If you're specifically stuck on the opening line, the same six-beat thinking applies to hook-writing on its own. The examples in How to Write a Hook for a Skincare Ad show the pattern applied to a different category, which is useful even if skincare isn't your product.

How FrameNotion Fits In

Once your script is solid, turning it into a finished ad is the next bottleneck. FrameNotion takes the product or website link, writes the script with FrameNotion AI following the same hook-problem-benefit-proof-offer-CTA structure covered here, and renders it as a 30-second vertical MP4 at 1080×1920, 30 fps, ready for TikTok, Reels, Shorts, and Meta ads. Every ad ships with an AI voiceover, a beat-matched music track, sound effects, and word-by-word captions — or music-only or silent, if that fits your brand better — so the ad is built to work on mute from the start.

You can add your logo, up to six product images, and notes like an active promo code, and the whole ad is ready in about 10 to 20 minutes. If a headline or color needs adjusting afterward, you send a change request instead of re-rendering from zero, and the same ad also comes back in 4:5, 1:1, and 16:9 for other placements. Browse a few finished ads on the examples page to see the structure from this guide in action, or start from your own product link on the FrameNotion home page.

Frequently Asked Questions

Frequently asked questions

How long should each section of a 30-second ad script be?+

A useful starting split is 3 seconds for the hook, 5 for the problem, 12 for the benefit and demo, 5 for proof, 2 for the offer, and 3 for the call to action. Treat this as a template to test and adjust, not a fixed rule — the benefit and demo section can flex longer if the visual is doing a lot of work.

Should I write the voiceover or the on-screen text first?+

Write the on-screen text and shot list first, since the ad needs to work with sound off. Once the visual story is locked, write the voiceover to reinforce it rather than repeat it word for word, and keep captions synced to the spoken lines.

How many words fit into a 30-second voiceover?+

As a starting point to test, aim for roughly 70 to 90 spoken words across the whole script, weighted toward the benefit section. Read the draft aloud with a timer and trim anything that doesn't change the viewer's understanding of the product.

Do I need a different script for TikTok versus Meta ads?+

Not necessarily. A well-structured 30-second script with a strong sound-off hook generally works across TikTok, Reels, Shorts, and Meta feed placements. You may want to trim the intro slightly for faster-scrolling placements, but the core beats stay the same.

How many hook variants should I write for one script?+

Plan for at least two or three different hooks against the same body script (problem through call to action). Hooks are the part most worth testing since they carry the most weight in whether the rest of the ad gets watched.

Try it on your product.

Paste a link — FrameNotion writes a custom 30-second ad.