DEMO VIDEO

Plan your SaaS demo video with a real example

The fastest way to plan a demo video is to study one that exists. We break down our own published demo scene by scene, with what worked and what we would cut. Then you plan yours with the scene planner, export the script, and check the video rules of the eight places you are most likely to post it.

Short answer

  • Decide the length by where the video will play: app store previews are 15 to 30 seconds, a launch video 60 to 90 seconds, a full walkthrough several minutes. Our own demo runs 5:54.
  • Show the product doing its main job as early as you can. In our demo the agent starts working at 2:52; setup and context take 33% of the runtime before that.
  • Record the real product, not a mock-up. Show the moment where a human has to step in if your product has one; it builds more trust than a flawless run.
  • Add captions from a corrected transcript, host the video on one watch page and link or embed it everywhere else.

Our demo, scene by scene

This is the LaunchRepo demo as it is published on our site: a screen recording with the founder in a small camera window, English audio and word-by-word English captions in the picture. Subtitles in 12 languages are under the CC button.

Watch page with chapters and the full transcript: Watch it work live. →

  • Length 5:54, 10 chapters, one time-lapse.
  • The agent starts working at 2:52. Before that, the video spends 1:59 (33%) on setup and context: the example product, the onboarding email and the local dashboard.
  • The handoff chapter shows the agent stopping at a login only the founder can complete, then moving on.
  • A 0:31 time-lapse compresses the long part where the agent simply keeps working.
Chapters of the published demo with their role in the plan. Click a time to jump in the player above.
ChapterTimeRoleWhat it does, and what we would change
Why directory submissions are worth automatingWhy directory submissions are worth automating–0:3435 secProblemPersonal problem in the first seconds, then why the task is worth solving. Works; the first sentence doubles as the hook.
What LaunchRepo isWhat LaunchRepo is–0:5319 secProductWhat the product is in two sentences. Short and clear.
The example product: VibeWhisperThe example product: VibeWhisper–1:2431 secSetupIntroduces the example product the demo launches. Useful context, but it could be half as long.
The onboarding emailThe onboarding email–1:4217 secSetupMentions the onboarding email and skips its steps. Good call: nobody wants to watch setup.
Local dashboard: brief, identity, permissionsLocal dashboard: brief, identity, permissions–2:5270 secSetupWalks through the brief, identity and permissions in the dashboard. This is the part a launch cut should shorten most.
First batch selection in ClaudeFirst batch selection in Claude–3:2634 secMain jobThe agent picks the first platforms. The product starts doing its job here.
The agent submits in ChromeThe agent submits in Chrome–3:5226 secMain jobThe agent works in a real browser. The core moment of the video.
Handoff: a login only you can doHandoff: a login only you can do–4:2129 secHandoffThe agent stops at a login it cannot do and asks for a human. Honest and reassuring; we would keep it in every cut.
Time-lapseTime-lapse–4:5231 secTime-lapseThe time-lapse shows scale without making viewers wait.
Recap and the badges in our footerRecap and the badges in our footer–5:5461 secResultRecap, proof you can check (the badges in our site footer) and how to reach the founder.

What we would keep

  • A real run of the product with no staged data, including the moment it needs a human.
  • The time-lapse instead of minutes of waiting.
  • Proof viewers can verify themselves, pointed to at the end.

What we would change for a 90-second launch cut

  • Start with the agent already working and tell the problem over those pictures.
  • Cut the dashboard walkthrough to one screen that shows the permissions.
  • Say figures that change, like the number of platforms, as “hundreds” or show them on screen, so the video does not age.

Figures spoken in the video are from the recording date. The watch page shows the current number.

Scene planner

Choose a length and describe the one job your video has to show. The planner splits the time into scenes, gives each one what to show and what to say, and exports the plan as Markdown or as a shot list for your spreadsheet.

Writing the script

The planner gives every scene a “say” line. These rules turn those lines into a script that sounds like you.

  1. Write for the earShort sentences, one idea each. Read the script aloud once; every place you stumble is a sentence to cut.
  2. Talk over actionEvery spoken line should play over something moving on screen. If a line has no picture, it probably belongs in the description.
  3. Use your own storyWhy you built it is the part no one else can say. Our demo opens with the founder’s own frustration, not with features.
  4. Name each step onceViewers follow the cursor. Say what is happening, not where every button is.
  5. Leave out claims that agePrices, counts and dates change. Say them on screen as text you can replace, or leave them out.
  6. End with one next stepOne action, said once, shown on screen. A list of links at the end gets none of them clicked.

Recording and captions

Most of the quality comes from preparation, not equipment.

  1. Clean the screenRecord in a fresh browser profile. Keep email recipients, tokens, personal account settings and customer data out of frame.
  2. Use real but safe dataShow the real product with an example project you own. Mark invented sample data as such.
  3. Sound firstA quiet room and a headset microphone beat a better camera. Viewers forgive a soft picture sooner than bad audio.
  4. Record in one resolutionOur demo is exported at 1280 × 858. Pick one size, record every take in it and export in the same size, so text on screen stays sharp.
  5. Keep the originalKeep the master file and the transcript. You will need them for new cuts, captions in other languages and a shorter launch version.

Captions

Quotes are the original English wording, copied from the pages listed under Sources and checked on September 30, 2026.

RuleOfficial wordingWhat it means for you
What captions areCaptions are a text version of the speech and non-speech audio information needed to understand the content.Captions are for everyone watching without sound, too. They also give you the transcript for the watch page.
Automatic captionsAutomatic Captions are Not SufficientStart from an automatic transcript, then correct it by hand. We did the same: machine transcript first, then product names and terms fixed.

Our demo has English captions burned into the picture. That is why translated subtitles appear at the top of the player, so they never cover the English ones.

Video rules of 8 platforms

You will upload the video once and link it in many places. These are the video fields of eight common places, in their own words.

RuleOfficial wordingWhat it means for you
Videos on Product HuntAbout 53% of products that reached Product of the Day since 2021 include a videoCommon among successful launches, but optional. A clear short demo is enough.
PlatformWhat you supplyOfficial wording
Product HuntA public YouTube link in the launch gallery; no upload, no short links.For uploading, only YouTube links are supported.Make sure your video is not set to private.
YouTubeUpload up to 15 minutes by default; verify the account for longer videos.By default, you can upload videos that are up to 15 minutes long.The maximum file size you can upload is 256 GB or 12 hours, whichever is less.
XUpload in the post; without Premium up to 140 seconds and 512 MB.If you aren't a Premium subscriber, you can still upload videos up to 140 seconds long with a maximum file size of 512MB.
LinkedInUpload in the post: 3 seconds to 15 minutes, up to 5 GB.Maximum video duration: 15 minutesMaximum file size: 5 GB
Chrome Web StoreA YouTube link in the store listing, localizable per language.A link to a YouTube video that showcases your extension features.
Apple App StoreUp to three app previews of 15 to 30 seconds each, as a video file uploaded in App Store Connect.Minimum length 15 Seconds Maximum length 30 SecondsYou can deliver up to 3 app previews
Google PlayOne YouTube link, with ads switched off; only the first 30 seconds autoplay.You can add one preview video to your store listing by entering a YouTube URL in the "preview video" field.Keep your videos short and concise because only the first 30 seconds autoplays.Disable ads for your video to be shown on Google Play.
GitHubA video file in the README or an issue: up to 10 MB on free plans.10MB for videos uploaded to a repository owned by a user or organization on a free GitHub plan

Limits change. Check the linked page before you export, and keep your master file so you can cut a shorter version.

Product Hunt featuring and relaunch rules explained →

Where to publish it

Give the video one home: a watch page where the video is the main content, with a title, description, chapters and transcript. Link or embed it from everywhere else, like this guide embeds our demo.

RuleOfficial wordingWhat it means for you
Watch pageThe video must be embedded on a watch page.Google considers a video for video results only on a page whose main purpose is that video.
No guaranteeJust because the watch page is indexed doesn't mean that the video will also be indexed.Even a good watch page is no promise of a video result. Build it for viewers first.
  1. One watch page per videoTitle, short description, poster image, chapters that jump and the corrected transcript. Ours is linked above.
  2. Mark it upDescribe the video with VideoObject structured data on the watch page: name, description, thumbnail, upload date, duration and file URL.
  3. Embed it where it helpsOn your homepage, in guides like this one and in your launch posts. Use a poster image and load the video only when someone presses play.
  4. Reuse itCut a 30-second preview and a 90-second launch version from the same master file with the planner above.

Sources

Every rule and figure on this page comes from one of these pages. We read all of them on September 30, 2026; the middle column shows a last-update date only where the page itself gives one.

PageLast updated (per page)Checked by us
Product Hunt: Preparing for launchno date shown
YouTube Help: Upload videos longer than 15 minutesno date shown
X Help: Using videos on Xno date shown
LinkedIn Help: Video sharing troubleshootingno date shown
Chrome for Developers: Complete your listing information
Apple: App preview specificationsno date shown
Play Console Help: Add preview assets to showcase your appno date shown
GitHub Docs: Attaching filesno date shown
Google Search Central: Video SEO best practices
W3C WAI: Captions/Subtitles

FAQ

How long should a SaaS demo video be?
As long as its place allows: 15 to 30 seconds for app store previews, about 60 to 90 seconds for a launch video and a few minutes for a full walkthrough. Our own demo runs 5:54 because it shows one complete, real run.
Do I need to show my face?
No. A clear screen recording with your voice is enough. Our demo adds a small camera window of the founder in one corner, which makes it personal without covering the product.
Should I write a script or improvise?
Write the scene plan and the key lines, then speak naturally over the recording. The planner exports a script with what to show and what to say per scene.
Does Product Hunt accept video uploads?
No. Product Hunt only supports YouTube links in the launch gallery, the video must not be private, and you need the full URL because short links do not load.
Will my demo video show up in Google video results?
Maybe, but nobody can promise it. Google only considers videos on a watch page whose main content is the video, and even an indexed watch page does not guarantee that the video is indexed.

Your demo shows the product. LaunchRepo shows it to the directories.

Once your demo is ready, your coding agent can list the product on launch platforms and directories with a playbook for each one, and track which listings went live.

See pricing