Product Demo Video Script Template: 30s, 90s and Full Demo
Copy-paste product demo script templates for 30-second, 90-second and full walkthrough videos, with each line mapped to the click and zoom on screen.
A product demo video script is a list of short spoken lines. Each line is paired with the one thing you click while you say it. Choose the length first: a 30-second demo shows one action and its result, a 90-second demo shows the three steps that make your product worth trying, and a full walkthrough covers each job a new user needs to get done.
Below is a copy-paste template for each length, with word budgets and click points. The script structure works with any recorder. The click and zoom timings are specific to Screen Bolt, which we make. After you record, it turns your mouse clicks into zooms. Its teleprompter scrolls your script while you record, which keeps your clicks on the same beat as your lines.
What a product demo video script needs
- One viewer and one job. Write for a specific person ("a support lead who answers the same ticket 40 times a week") and the single thing they want done. Every line either shows that job getting easier or gets cut.
- A spoken line and an on-screen action for every beat. If a line has no action, the viewer is looking at a still screen. If an action has no line, the viewer doesn't know why it matters.
- A word budget. At 1ร speed, Screen Bolt's teleprompter estimates reading time at 150 words per minute. At that pace, 30 seconds is about 75 words and 90 seconds is about 225. Write 15โ20% fewer words than that so clicks and results get a moment of silence.
- A prepared starting state. Use a demo account with realistic data, close unrelated tabs and turn off notifications. See how to prepare your Mac for a clean screen recording.
- One ending action. Give a single next step (a URL, "start free", "book a call"), said out loud and shown on screen.
How to read the templates:
- Lines in parentheses, like
(click: Export), are stage directions. You do them, you don't say them. - Words in curly braces, like
{product}, are placeholders to replace. [PAUSE],[CUT],[B-ROLL],[SLOW]and[EMPHASIS]are the cue markers Screen Bolt's teleprompter shows as colored chips. They're reminders for you while you read, and they don't control the scrolling. In any other teleprompter or notes app they're just text.
Pick the right template
| Template | Length | Spoken words (at 150 wpm) | Clicks | Use it for |
|---|---|---|---|---|
| 30-second | 30 s | 55โ65 at most | 2โ4 | Social posts, landing-page hero, launch clips |
| 90-second | 90 s | 170โ200 | 6โ10 | Landing pages, sales follow-ups, launch pages |
| Full walkthrough | 3โ8 min | 120โ140 per minute | One every 5โ8 s | Onboarding, help center, recorded sales demos |
To see what finished demos at each length look like, read product demo video examples.
30-second template
A 30-second demo has room for one idea: the before, the one action, the after. Don't try to show a second feature. The 90-second version is for that.
| Beat | Time | Words | On screen |
|---|---|---|---|
| Hook | 0โ6 s | about 15 | Starting screen, no clicks, so the viewer sees the whole interface |
| Action | 6โ16 s | about 20 | Click the main control |
| Result | 16โ25 s | about 20 | Click to open or show the result |
| Close | 25โ30 s | about 10 | No clicks, so the view stays on the full frame |
[PAUSE]
{audience} spend {time} every {period} on {painful task}.
(no clicks: let the starting screen sit)
With {product}, you {one action}.
(click: {main button})
[EMPHASIS] That's it. {visible result}.
(click: open the result, then hold still)
{product}. {outcome in five words or fewer}.
{call to action} at {url}.
[PAUSE]
Here is the template filled in for a fictional invoicing app:
[PAUSE]
Freelancers lose their Friday afternoons chasing unpaid invoices.
(no clicks)
With Tallybook, you turn on reminders once.
(click: Auto reminders)
[EMPHASIS] That's it. Every overdue client gets a polite nudge.
(click: Reminder preview)
Tallybook. Get paid without asking twice.
Start free at tallybook.example.
[PAUSE]
That's 34 spoken words. You don't have to fill the word budget, and fewer words give each click more room to land.
90-second template
The 90-second demo answers three questions in order: what problem is this, how does it work, and what do I do next. Show three steps and stop there. If your product needs five steps to show its value, pick the three that change the most on screen.
| Beat | Time | Words | On screen |
|---|---|---|---|
| Hook | 0โ10 s | about 20 | Starting screen or the finished result, no clicks |
| Problem | 10โ20 s | about 20 | The "before" state, with one click if you need it to show that state |
| Step 1 | 20โ40 s | about 40 | 2โ3 clicks |
| Step 2 | 40โ55 s | about 30 | 2โ3 clicks |
| Step 3 | 55โ70 s | about 30 | 2โ3 clicks |
| Result | 70โ80 s | about 20 | One click to reveal the outcome |
| Close | 80โ90 s | about 15 | No clicks; full frame |
[PAUSE]
This is {result your viewer wants}. It took {short time} to make.
(no clicks: show the finished result or the starting screen)
Usually, {painful old way} takes {long time} and {second pain}.
(optional click: show the messy "before")
[PAUSE]
First, {step 1 in plain words}.
(click: {control 1})
{why step 1 matters, one sentence}.
(click: {control 2})
Next, {step 2}.
(click: {control 3})
[SLOW] Notice {the detail that's easy to miss}.
Then {step 3}.
(click: {control 4})
(click: {control 5})
[EMPHASIS] And now {outcome}, without {old pain}.
(click: open the result, then hold still)
[PAUSE]
{product} is {one-line positioning}.
{call to action} at {url}.
Two habits make this version work. First, start each step with a verb the viewer could repeat, such as "First, connect your calendar." Second, say why a step matters right after the click, while the view is zoomed in on the change.
Full walkthrough template
A full walkthrough is a series of short sections, each built around one job, such as "send your first invoice" or "invite your team." Write a short intro, repeat the section block once for each job, then close. Keep each section between 45 and 90 seconds. If one runs longer, split it into two jobs.
INTRO
[PAUSE]
In this video you'll {list of jobs, three at most}.
You'll need {prerequisite, e.g. an admin account}.
(no clicks: show the starting screen)
[PAUSE]
SECTION: {job name}
Let's {job in plain words}.
(click: {where the job starts})
[SLOW] This is {area name}. {what it's for, one sentence}.
(click: {control})
{what just happened and why}.
(click: {field})
(type: {text}. Typing doesn't create a zoom; the click on the field does)
(click: {save or confirm button})
[EMPHASIS] {result}. {what the viewer can do with it now}.
[PAUSE]
[CUT]
(repeat the SECTION block for each job)
CLOSE
That covers {jobs}.
Next, {single next step or link to the next video}.
[PAUSE]
Notes for longer recordings:
- Between sections, use the Pause button in the recording bar. Screen Bolt removes the paused gap. The teleprompter pauses with the recording and keeps its place when you resume.
- Put
[CUT]where you'll trim later, for example after a fumbled line you repeat. In the editor, set In and Out points with I and O, then press Delete. The editing docs cover cuts and trims. - Put
[B-ROLL]where another clip should go. In Screen Bolt you can drop a video file onto the clip track to insert it as a new clip. - The free version of Screen Bolt limits exports to 3 minutes, and the export sheet measures the full recording, not the trimmed result. If your walkthrough runs longer, record each section as its own recording under 3 minutes, or use Pro.
Match each line to a click so the zooms land right
Screen Bolt builds its auto zoom from your mouse clicks after you stop recording. Your clicking rhythm decides where the video zooms, and your script decides your clicking rhythm. Here are the rules the zooms follow and what each one means for your script:
- Each click becomes a zoom centered on your cursor. Clicks within 1 second and 200 pixels of each other merge into one zoom. Write one line per click, and click on the thing you're talking about.
- Each zoom holds for at least 1.8 seconds and takes 0.6 seconds to zoom in. Leave about 2.5 seconds between clicks in different places. At 150 words per minute that's about 6 words, which is why every click line in the templates is a short sentence rather than a fragment.
- Typing doesn't zoom. Keystrokes never create zooms. Click into a field before you type, so that click zooms in on the field. Click menu items instead of using your product's keyboard shortcuts.
- Drags are ignored. Dragging a slider, a file or a card won't create a zoom. Click near it first, or add a zoom by hand after recording.
- While zoomed, the view follows your cursor. Move the cursor deliberately toward the next thing you'll mention. You can't move a zoom's focus point by hand later, because the center comes from where your cursor was.
- Stray clicks make stray zooms. Clicking empty space while you think, or clicking to dismiss something, adds a zoom. Write those clicks out of the script, or plan to delete them.
- No clicks means full frame. The lines marked "no clicks" in the templates are your overview moments, where the viewer sees the whole screen. Use them for hooks, context and closes.
To learn how click-based zooms work in more detail, read what auto zoom is. For other ways to zoom, see how to zoom in on a screen recording.
Fix zooms after recording
Even with a tight script, a few zooms will need adjusting. On the zoom track in the editor:
- Drag a zoom region to move it, or drag its edges to make it longer or shorter.
- Right-click a region and choose Change Zoom Level (1.5x to 6.0x) or Transition Speed (from Snap (none) to Cinematic (1.0s)).
- Right-click a stray zoom and choose Delete This Region.
- To add a zoom where you dragged or typed, move the playhead there and press โK (Command-K) for Add Zoom at Playhead. The new zoom centers on where your cursor was at that moment.
If a dense interface feels too close at the default 2.0ร, lower Default Level in the Zoom panel and click Apply to All Regions. Don't switch off Auto Zoom on Click to remove a few zooms. That switch disables every zoom region in preview and export, including the ones you added by hand.
Read the script so it sounds natural
A demo script fails when it sounds read. Write it the way you'd explain the product to a colleague looking over your shoulder. Then rehearse with the script where you can see it.
Write for the ear:
- Use contractions and short sentences. "You'll see it here" beats "The result will be displayed in this panel."
- Say why, not what. Viewers can see you clicking Export, so tell them what they get from it.
- Use the exact labels from your product's interface so viewers can find them later.
- Read the script out loud once before recording, and rewrite any sentence you stumble on.
- If you're running long, cut words rather than planning to speed up the video.
Use the Screen Bolt teleprompter
The teleprompter floats over your screen and is left out of the recording, so you can keep it right next to what you're demoing.
- Click Script in the recording bar, or choose Record โธ Teleprompter (โงโT, Shift-Command-T).
- Paste your script, or click Import .txt, or drag a .txt file onto the text area. The script saves automatically.
- Insert cue markers from the Cues menu, or type them in square brackets.
- Compare the word count and estimated reading time in the header with your target length. The estimate changes with the scroll speed.
- Choose Auto Scroll and set the speed. Manual splits the script into pages instead.
- Set the opacity and font size. Place the window near your camera if you're recording your webcam, and away from the parts of your product you'll click.
- Record a rehearsal take. If it's not right, click Discard and restart in the recording bar. No project is created.
- Start recording. The teleprompter starts scrolling the moment recording starts, with no countdown. That's why every template opens with
[PAUSE]: take a breath, then trim the first second later.
| Setting | Range | For demos |
|---|---|---|
| Auto Scroll speed | 0.25ร to 4ร, in 0.25 steps | Set it from a rehearsal, then leave it |
| Manual | Pages ("Page N of M") | Better for scripts with few clicks |
| Opacity | 30% to 100% | Lower it if it covers part of your product |
| Font size | 14, 18 or 24 pt | Larger if you sit back from the screen |
The teleprompter keys work only during recording and only while the teleprompter window has focus. In Auto Scroll, โ and โ change the speed and Space pauses. In Manual, the arrows and Space turn pages. During a demo your product window usually has focus, so for click-heavy demos it's easier to use Auto Scroll at a speed you set in rehearsal. Pausing the recording also pauses the scroll.
| Cue | What to do in a demo |
|---|---|
[PAUSE] | Stop talking for a beat and let a click or result land |
[CUT] | Mark a spot to trim in the editor |
[B-ROLL] | Mark where another clip or shot will go |
[SLOW] | Slow your delivery while the viewer reads something on screen |
[EMPHASIS] | Lean on the line that carries the payoff |
[SLOW] is a note about your voice, not the video. Screen Bolt's speed ramps play in the editor preview, but they aren't carried into the exported file.
For more on cue markers and pacing, see teleprompter script examples and how to read a script while recording. The recording docs cover the teleprompter as well.
Without a teleprompter app
You can still read from a script with the tools built into macOS. Put the script on a second display. Or record only part of the screen and keep a Notes window outside the recorded area: press โงโ5 (Shift-Command-5) and choose Record Selected Portion. You'll be glancing sideways instead of reading next to your product, with no auto scroll and no click zooms. For a 30-second demo that's often enough.
Screen Bolt's teleprompter and auto zoom are both in the free version. Free exports are watermarked, 720p and up to 3 minutes long. Compare Free and Pro.
If it doesn't work
- There are too many zooms, or the video keeps jumping. You clicked more than the script called for. Delete the extra regions on the zoom track. Next time, keep your hand still between the clicks in your script.
- There's no zoom where you expected one. At that moment you were typing, dragging or using a keyboard shortcut, and none of those create zooms. Move the playhead there and add a zoom with โK.
- There are no zooms at all in a new recording. Check that Auto Zoom on Click is on in the Zoom panel. Before your next recording, also check that Create zooms automatically is on in Settings โธ Recording (or Record โธ Automatically create zooms).
- There are no zooms on a video you opened in Screen Bolt. Auto zoom only works on recordings made in Screen Bolt. Videos opened from elsewhere have no click data, so add zoom regions by hand.
- The script scrolls ahead of your clicks. Lower the Auto Scroll speed one 0.25 step at a time and rehearse again. If it keeps happening, the script has too many words for its length. Cut lines instead of reading faster.
- The zoom lands next to what you meant. The zoom centers on your cursor and then follows it. Click directly on the control you're talking about, and keep the cursor there until you finish the line.
- The free version won't export your walkthrough. Free exports stop at 3 minutes, measured on the whole recording even after trimming. Record the sections separately or upgrade.
FAQ
How long should a product demo video be?
Match the length to where people watch it. A clip in a social feed or a landing-page hero suits the 30-second template. A landing page or a sales follow-up suits 90 seconds. Onboarding and help-center videos can run several minutes because viewers chose to watch them.
Should I record my voice and clicks at the same time?
For short demos, yes. Recording both in one take keeps your words and clicks in sync, and that's what makes the zooms match your lines. If you'd rather record the voice afterwards, see how to add a voiceover to a screen recording.
Can I write the script in Google Docs or Notion and move it over?
Yes. Copy the text and paste it into the teleprompter, or save it as a plain .txt file and use Import .txt. Type the cue markers in square brackets exactly as shown, for example [PAUSE], or insert them from the Cues menu.
What if I'm not using a script at all?
You can still plan the clicks. Make a list of the clicks in order, with one sentence to say at each, and you get most of the benefit. For a step-by-step guide to recording the demo itself, see how to make professional product demos without a video editor.