Why demo scripts go wrong
Most demo scripts are written to be read, not heard. They have long sentences with commas in the middle, words like "leverage", and lists of features that sound fine on a slide and terrible out loud. Then the person recording either reads it stiffly or abandons it and improvises. Both show.
A good script is closer to a set of directions you would give a friend sitting next to you. Short. Specific. Pointing at the screen.
The format: two columns
Every template below uses the same layout. The left column says what the viewer sees. The right column says what the viewer hears. Writing them side by side stops you from narrating what is already obvious, and it doubles as a shot list when you record.
| On screen | Said |
|---|---|
| Invoices page, empty state | Let's get you paid for last week's work. |
| Click "New invoice" | Start a new invoice. |
| Pick the client from the list | Pick the client. Their details fill in for you. |
| Invoice preview, then "Send" | Check it, send it. Done. |
Rules for lines that sound spoken
- One idea per sentence. If you need a comma, you might need two sentences.
- Use the exact label from the UI. If the button says "Add member", do not say "invite a teammate".
- Talk about the viewer's goal, not the interface. "Pick the client" beats "select an option from the dropdown".
- Never narrate the mouse. "Now I'm going to click here" wastes a line the zoom already covers.
- Spell out anything a voice might stumble on: numbers, acronyms, product names. Write "twelve forty euros", not "€1,240.00".
- Read it out loud before recording. If you run out of breath, the sentence is too long.
Template 1: The 60-second homepage demo
For a stranger who has never heard of you. About 130 to 150 words.
| Beat | On screen | Said |
|---|---|---|
| Result first (0-5s) | The finished outcome | This is [result], made in [time]. |
| The problem (5-12s) | The starting point, messy or empty | Normally that means [painful old way]. |
| Step 1 (12-25s) | First action | Start by [action]. |
| Step 2 (25-38s) | Second action | Then [action]. [Product] does [the tedious part] for you. |
| Step 3 (38-50s) | Final action and result | [Final action], and it's ready to [use/share/send]. |
| The ask (50-60s) | Result, with logo or URL | Try it on your own [thing]. It's free to start. |
Template 2: The 2-minute feature walkthrough
For an evaluator on a feature page or after a sales call. They already know what you do. Now they want proof of one thing. About 250 to 300 words.
| Beat | On screen | Said |
|---|---|---|
| Setup (0-10s) | Where the feature lives | If you [situation], here's how [feature] handles it. |
| The usual case (10-50s) | The main flow, 3 to 4 steps | One line per step, each naming the button. |
| The tricky case (50-80s) | An edge case your buyer worries about | And if [edge case], you can [answer]. |
| Proof it worked (80-100s) | The result, a report, or the customer's view | Here's what your [customer/team] sees. |
| Next step (100-120s) | Link or button | Want to see it with your data? [Ask]. |
Template 3: The 30-second release clip
For a changelog entry, an in-app "What's new", or a social post. About 60 to 75 words. One change per clip.
| Beat | On screen | Said |
|---|---|---|
| What's new (0-5s) | The new thing, zoomed in | New: [feature name]. |
| Before (5-12s) | Optional: the old way | Until now, [old way took X]. |
| Now (12-25s) | The new flow in 1 to 2 steps | Now just [action] and [result]. |
| Where (25-30s) | Its location in the menu | Find it under [menu path]. |
There is more on this format in feature release videos.
Template 4: The how-to tutorial
For the help center or onboarding. The viewer has a specific task and wants to finish it. Length is whatever the task needs, ideally under 2 minutes.
| Beat | On screen | Said |
|---|---|---|
| Goal (0-5s) | The end state | Here's how to [task]. |
| Before you start | Required setting or permission | You'll need [prerequisite]. If you don't see [button], ask your admin. |
| Steps | One action per line | Go to [page]. Click [label]. Enter [value]. |
| Check it worked | Confirmation message or result | You'll see [confirmation]. That's it. |
| What's next | Link to the next task | Next, you might want to [related task]. |
For the full tutorial process, read how to make a software tutorial video.
Before you record: the 20 percent cut
Once the script is done, cut a fifth of it. Delete adjectives first, then any sentence that repeats what the screen shows, then the weakest feature mention. Read it out loud with a timer. If you are over, cut again. It is much cheaper to cut a sentence than to re-edit a video.
Turning the script into a video
With a script in hand, recording is quick. In Steperly you record the flow once and get a narrated video, a clickable demo, and a step-by-step page from that recording. Every narration line stays editable, so you can bring it back to your script word for word. If you would rather not use your own voice, the AI voiceover reads it in a consistent voice, and our notes on AI voiceover for product videos cover how to write lines that sound natural.