All Articles

Product Demo Script Templates for Every Cut

Oct 26, 2026 • 9 minute read

Wildan

A product demo script is a two-column table: what's on screen in one column, what the voice-over says in the other, one row per beat. Below are four copyable templates, one for each cut (teaser, hook, pitch, demo), and a full worked example for a made-up product. Copy the one that matches your video, fill in the brackets and read it aloud with a timer.

This is part 4 of how to make a product demo video. If you haven't picked a viewer, a task and a cut yet, start with part 2.

How to use these templates

  • Write the screen column first. For a demo, it's the task you'll record. If a row has no screen, it probably doesn't belong. (For a teaser or a pitch, where the story leads, writing the voice-over first can work better.)
  • Write the voice-over for the result, not the click. "Your invoice is sent and the client gets a pay link" beats "Now I click Send".
  • Read it aloud with a timer. If it runs over the length for your cut, cut lines. Don't talk faster.
  • Leave some rows silent. A second of the product working, with only music, is often stronger than a sentence about it.
  • Put on-screen text in the screen column, in quotes. Keep it to a few words; it has to be readable on a phone.

Times in the templates are a guide, not a rule. What matters is the order and the limit for each cut.

Product demo script template: demo (up to 60 s)

One task, start to finish, on your own recording. For onboarding, docs and sales follow-ups.

TimeOn screenVoice-over
0 to 5 sThe starting state of the task, already in the product. Text: "[Task] in [product]""Here's how to [task] in [product]."
5 to 15 sStep 1: the first action, zoomed in on the part that changes"Start by [step 1], [why it matters in a few words]."
15 to 30 sStep 2, zoomed in"[Product] [does the hard part] for you, so you don't have to [old way]."
30 to 45 sStep 3, the last action before the result"Then [step 3]."
45 to 55 sThe result on screen. Hold on it."That's it: [result in plain words]."
55 to 60 sYour logo or URL. Text: "[next step, e.g. Try it in your workspace]""[One call to action.]"

Product demo video script template: pitch (up to 45 s)

Problem, your real screen, proof, the offer. For Product Hunt, your homepage and a YC application.

TimeOn screenVoice-over
0 to 5 sThe problem, shown: the messy spreadsheet, the error, the old way"[Who] spend [time or pain] on [problem]."
5 to 10 sCut to your product, the starting state of the task"[Product] [does the job] in [how long or how easily]."
10 to 30 sThe task in two or three quick steps, ending on the result"[Step], [step], and [result]."
30 to 38 sProof: a real number, a real customer logo you have permission to use, a before and after"[Proof you can back up.]"
38 to 45 sThe offer and the URL. Text: "[offer]""[Offer, e.g. Free for your first project.] [URL or 'link below']."

Proof has to be true. If you don't have a number or a customer yet, use the before and after on screen; it's proof the viewer can see.

Demo video script template: hook (up to 20 s)

One idea in the first second. For X, TikTok, Reels, Shorts and ads.

TimeOn screenVoice-over
0 to 1 sThe most surprising frame: the result, or the before and after. Text: "[the idea in a few words]""[The idea in one short sentence.]"
1 to 12 sThe task, fast, from start to result"[One line on how: you [do X], it [does Y].]"
12 to 20 sThe result again, with your name and one call to action"[Product]. [One call to action.]"

No logo intro, no "Hey everyone". The first frame is the hook.

SaaS demo script template: teaser (up to 30 s)

Show a sliver, hold back the rest. For a waitlist page or X, the week before launch.

TimeOn screenVoice-over
0 to 8 sThe problem, shown. Text: "[the problem in a few words]""[The problem, felt: e.g. You've rewritten this report every Monday for a year.]"
8 to 20 sGlimpses of the product: a cropped corner, a result appearing, fast cuts. Not the whole interface."[A promise, not an explanation: e.g. That's about to stop.]"
20 to 30 sYour name and the date. Text: "[Launching date]""[Product]. [Date]. [Join the waitlist / follow for launch day.]"

The teaser works by what it leaves out. If the viewer could use the product after watching it, it's a pitch.

Worked example: Shipnote (a made-up product)

To show how one task becomes four scripts, here's a full example. Shipnote is invented for this article. It isn't a real product, and any numbers below are placeholders you would replace with your own.

The plan: Shipnote turns merged pull requests into a customer-facing changelog. The viewer is a founder of a small SaaS who never gets round to writing release notes. The task: go from a week of merged PRs to a published changelog post.

Shipnote demo script (about 60 s)

TimeOn screenVoice-over
0 to 5 sShipnote, connected to a GitHub repo, showing "12 PRs merged this week". Text: "Release notes in Shipnote""Here's how to turn this week's merged PRs into release notes."
5 to 15 sClick "Draft changelog". The list of PRs collapses into three grouped headings: New, Improved, Fixed."Shipnote reads every merged pull request and groups the ones your customers will notice."
15 to 30 sZoom on one entry: a PR title "fix: race in webhook retry" becomes "Webhooks no longer fire twice when a delivery retries.""It rewrites developer titles into sentences a customer understands. Internal refactors stay out."
30 to 45 sEdit one line by hand, drag an item from Improved to New"You edit anything, the same way you'd edit a doc."
45 to 55 sClick Publish. The public changelog page shows the new post. Hold."Publish, and it's live on your changelog page."
55 to 60 sShipnote logo. Text: "Connect your repo""Connect your repo and draft this week's notes."

Shipnote pitch script (about 45 s)

TimeOn screenVoice-over
0 to 5 sAn empty changelog page, last updated months ago"You ship every week. Your changelog says you haven't shipped since spring."
5 to 10 sShipnote with "12 PRs merged this week""Shipnote writes your release notes from the pull requests you already merged."
10 to 30 sDraft changelog, the grouped headings appear, one PR title becomes a plain sentence, Publish"One click to draft, a minute to check, and it's published."
30 to 38 sSide by side: the empty page and the filled one"Your customers see what you ship."
38 to 45 sText: "Free for one repo. shipnote.example""Free for your first repo. Link below."

Note what's missing from the proof row: no invented customer count, no "saves 5 hours a week". With no real data yet, the before and after on screen is the proof.

Shipnote hook script (about 15 s)

TimeOn screenVoice-over
0 to 1 sA PR title "fix: race in webhook retry" turning into "Webhooks no longer fire twice." Text: "PRs in, release notes out""Your pull requests, rewritten as release notes."
1 to 10 sDraft, grouped headings, Publish, fast"Connect GitHub, click draft, publish."
10 to 15 sThe published changelog. Text: "Shipnote""Shipnote. Link in bio."

Shipnote teaser script (about 25 s)

TimeOn screenVoice-over
0 to 8 sA calendar reminder: "Write release notes", snoozed again"You've snoozed this reminder every Friday for a year."
8 to 18 sTight crops: a PR title dissolving into a sentence, a "Published" badge. No full UI."Next week, your changelog writes itself."
18 to 25 sText: "Shipnote. Launching Tuesday.""Shipnote. Tuesday. Join the waitlist."

Check your script before you record

  • Every row has something on screen that the viewer can see.
  • The voice-over never describes a click the viewer can already see.
  • The result is on screen before the halfway mark.
  • Every claim is something you can show or back up.
  • There's one call to action, at the end.
  • Read aloud, it fits inside the length for your cut. If not, see how long a demo video should be and cut.

When the script is done, record the task following the screen column, slowly and in one clean take.

Frequently asked questions

What should a product demo script include?

A product demo script includes two columns, what's on screen and what the voice-over says, with one row per beat and a time for each row. It covers one task from its starting state to the result, keeps on-screen text to a few words, and ends with one call to action.

Should a demo video script describe every click?

No. A demo video script should describe the result, not the click: "Your invoice is sent and the client gets a pay link" beats "Now I click Send". If the voice-over describes what the viewer can already see, the video has to slow down to match it.

How long should a SaaS demo script be?

A SaaS demo script should fit the length of its cut when read aloud with a timer: up to 60 seconds for a demo, 45 for a pitch, 30 for a teaser and 20 for a hook. If the script runs over, cut lines instead of talking faster.

What is the difference between a demo script and a pitch script?

A demo script shows one task start to finish, for onboarding, docs and sales follow-ups. A pitch script persuades in four parts (the problem, your real screen, proof and the offer) for Product Hunt, your homepage or a YC application.

What proof can a pitch script use if I have no customers yet?

A before and after on screen. A pitch script with no real numbers or customers yet should show the old way next to the result instead of inventing a customer count or a time saved.

How many calls to action should a product demo video have?

One. A product demo video should end with a single call to action, such as connecting a repo or joining a waitlist.

Can Demo Editor write the script for a demo video?

Yes. Demo Editor's Director writes the storyboard and voice-over from your screen recording and landing page, and you can correct it before a frame is made.

If you'd rather not write the voice-over yourself, Demo Editor's Director writes the storyboard and voice-over from your recording and landing page, and you correct it before a frame is made.