How to Put Video on Your Service Page Without Hiring a Video Team
You have one page that matters. The pricing page, the service page, the productized offer page. There is no video on it. Video used to require an editor, a designer, and a motion person... three different humans on a production cycle. That gate is gone. Claude Code writes the code. Remotion renders the MP4. You describe the video in plain English. Roughly ten minutes, cold machine to publishable file.
Marlon Brand
Founder, Undeniable · Last updated April 2026
The Bottleneck Broke
You have one page that matters. The pricing page, the service page, the productized offer page. There is no video on it.
Video. A short, branded, animated promo that opens with the offer, says it cleanly, and closes with the next step. Thirty seconds. The kind of thing real-brand pages have on them.
Video used to require an editor, a designer, and a motion person. Usually three different people. The cost was not the software... the cost was the team. If you have not been paying that cost, it is because you have been looking at the empty space on the page and deciding “later.” The path from “we should put video here” to “there is video here” had a gate in front of it. The gate was the team.
You just installed Claude Code, or you are about to. You want to use it for something real, on the page that already matters most. Video is the obvious thing the page is missing.
The thesis of this guide, in one line: video stopped requiring a video team.
There is now a desktop workflow that turns a plain-English description of the video you want into a finished MP4 file. The workflow is one terminal, one prompt, one render. You sit at the laptop you already use to run your business. You describe the video the way you would describe it to a freelancer. The MP4 lands in the project folder on your machine. You drag it into your page. You publish.
By the end of this guide, that is where you are. A rendered video file, sitting on your machine, ready to drag onto the page that matters most. The first time, you will feel the install... download, sign-in, scaffolding, and a first render that lands in a folder. Every render after that is faster. You have already paid the setup cost.
The editor, the designer, the motion person. The workflow in this guide replaces the team you would have hired.
Two Tools, One Stack
The whole workflow runs on two tools. You install both today.
The first is Claude Code, an Anthropic product. Think of it as a plain-English coding agent that runs in your terminal. The Claude desktop app from Anthropic includes a Code mode that launches it, and that is how we run it in this guide. You describe what you want in regular sentences and it writes the code, runs the commands, and handles the technical work for you. You do not need to know how the code works. You only need to know what you want the output to be.
The second is Remotion, a framework that turns code into video. Free for individuals and small teams; companies above a certain size license it commercially. Licensing details are in the FAQ. You write a description of a video as code, point Remotion at it, and Remotion produces a finished MP4, pixel-perfect, repeatable, the same output every time you press render. It is built on React, the JavaScript library most modern web apps use for their interface. That detail matters in a second.
Why this pair, and not some other combination of tools. Claude Code is fluent in React. Remotion is React. The tool that writes the code and the tool that renders the video speak the same language. This means the entire pipeline, from “I want a thirty-second promo for this page” to a finished MP4, becomes describable in plain English. You are not gluing together a video generator, a stock-footage library, and an editor. You are describing one thing to one agent, and the agent handles the rest.
Claude Code writes. Remotion renders. You describe.
New to Claude Code? If this is your first install, start at Learn Claude Code first... five free lessons that take you from no install to your first deployed page.
Install the Pieces
Two installs and four prompts. That is the whole setup.
- 1Download Claude desktop. Go to claude.com/download and grab the desktop app for your operating system. The installer drops the Claude desktop app into your Applications folder and includes the Code mode you will launch in a minute.
- 2Sign in. Open the app and sign in with your Anthropic account. If you do not have one, the sign-in screen creates one in the same flow.
- 3Pick the right mode. The app shows three modes at the top: Chat, Cowork, Code. Click Code. Code mode launches Claude Code, the terminal-running coding agent that does the actual work in this guide.
- 4Create an empty project folder. On your machine, make a new folder for this project. Anywhere works: Documents, Desktop, a dedicated
projects/folder. Open that folder inside Code mode. - 5Click “always allow” on the trust-the-workspace prompt. The first time Claude opens the folder, it asks whether it is allowed to read and write files inside. If you skip it or click the wrong option, later steps fail in ways that are hard to debug from the error message alone.
- 6Scaffold the project. In the Code terminal, run
npx create-video@latest. Walk through four interactive prompts: name the project (lowercase with dashes), select the Blank template, say yes to TailwindCSS, say yes to Skills. - 7Start Remotion Studio. Run
npm run dev. Your browser opens to a localhost URL with Remotion Studio loaded... the live preview window for your composition. Keep this tab open.
When the scaffold finishes, you see a node_modules/, a src/, a public/, and a package.json sitting in the project directory. The public/ folder is the one that matters later. That is where your brand assets live.
We timed it at roughly 10 minutes from no Claude desktop installed to a rendered MP4 sitting in the project's out/ folder. Your machine and your connection will move that number around. The takeaway is not the exact minute count. The install is short enough to do in one sitting.
The First Prompt
One prompt typed into Claude Code that produces a thirty-second video for the page you care about. Here is the exact prompt that ran on our cold-machine test:
Create a thirty-second promotional video for The Setup Bundle, the
"01 installation" path at weareundeniable.com/apply.
Open with: "You are not behind. You just have not had someone install
the stack with you."
Land the positioning: "Become the operator who runs their business on
AI."
Show four outcomes (three to four seconds each):
01. The full AI stack, installed with you
02. Your personal CLAUDE dot M D memory architecture
03. Obsidian, Git, Vercel, Supabase, wired and talking
04. Your first landing page, deployed live
Close: "Two to four sessions. $2,000. Sit with us first at
weareundeniable.com/apply."
Aesthetic: read public/brand.json for exact color values and usage
conventions. Use public/logo-white.png in the top-right corner from
second two through the end. Background is rich black (#0A0A0A). Text
color is #E5E5E5 for body. "// 01 installation" eyebrow and "--01"
style outcome flags are monospace in mint (#00FFB2). Headlines are
sans-serif, large, white, with key words ("operator") emphasized in
violet (#7B61FF). The final CTA button uses the violet-to-mint
gradient from brand.json.
Text-forward kinetic animation. Skip stock motion graphics and
decorative icons. No em dashes anywhere in rendered text. Use
ellipsis (...) for pauses.Long, yes. Real prompts are not always one-liners. The shape is what matters, and the shape is doing four jobs at once. It names the page being promoted with a real URL, so Claude has a concrete destination to write toward. It hands Claude the open, the arc, and the close as literal copy instead of asking it to invent any of the words. The words on a marketing video are the part you do not outsource to a model, and writing them into the prompt removes the guesswork in both directions. It points at public/brand.json for color and usage conventions. It points at public/logo-white.png with the placement rule stated explicitly.
Your version of this prompt swaps the URL, the headline copy, the four outcomes, and the brand file paths. The structure stays the same.
What Claude Code does next is mechanical. It reads public/brand.json. It reads public/logo-white.png. It scaffolds the Remotion composition file under src/, writes the React and Remotion components to match the prompt, and kicks off the render. There is nothing for you to do during this step. Watch it happen.
Render time depends on your machine. For a thirty-second composition at 1080p, expect single-digit minutes. By the time you switch back to Remotion Studio, the MP4 is in out/.
The first-pass output landed at the full thirty seconds the prompt asked for. After watching it back, we opened Remotion Studio and trimmed the timing for tighter pacing, ending at roughly eighteen seconds. This is normal. Claude renders what you ask for; pacing is an editorial decision you make in Studio after seeing the output. The render is the draft. The trim is the edit.
What the first render got right
- Brand colors landed correctly. Rich black background. Mint eyebrows. Violet on the emphasis words.
- All four outcome flags rendered in monospace with
--01through--04numbering, exactly as the prompt described. - The logo sat in the top-right, on screen from second two onward, per the prompt.
- Animation pacing landed cleanly. Text-forward kinetic, on-brand, no decorative drift.
Brand Assets in the Public Folder
Open the project folder you scaffolded in Section 03 and look at public/. That is where Claude looks. Anything you put there is available to the render. Same convention any web project uses: static files in public/ are served verbatim, and Remotion treats it the same way.
Three things to drop in.
A logo file
Transparent PNG works. SVG works. Whatever scales for your video resolution. For a 1920x1080 video, anything 3000+ pixels wide is plenty.
A brand.json file
With color values and usage conventions. The cleanest carrier. Hex values for primary background, primary text, accent colors, plus prose conventions for where each color goes. Eyebrows in mint, emphasis in violet, gradients on CTAs, that kind of thing.
Optional: one hero image
If your video has a visual moment that calls for it. Most thirty-second promos do not. Type-only video is fine, and the run we did for this guide did not use one.
Why pre-stage instead of doing it after the first render. Claude reads public/ on the first render. With assets pre-staged, the output is on-brand on first pass. If you skip this step, the workflow becomes: render once with default treatment, drop assets into public/, re-prompt with “use the assets in public/,” re-render. Both paths produce the same final video. Pre-staging takes one pass instead of two.
The brand.json shape is concrete. Here is a representative slice of the file we staged:
{
"colors": {
"richBlack": "#0A0A0A",
"richViolet": "#7B61FF",
"richMint": "#00FFB2",
"textPrimary": "#E5E5E5"
},
"gradient": {
"hero": "linear-gradient(to bottom, #7B61FF, #00FFB2)"
},
"conventions": {
"eyebrow": "// style comment in mint, monospace, small",
"flags": "--01, --02 capability tags in monospace",
"accentStyle": "mint for eyebrows and flags; violet for CTAs and emphasis words; violet-to-mint gradient for primary buttons"
}
}You write your own. Hex values for the colors that appear on the page the video promotes, plus one or two sentences per convention explaining where each color goes. Claude reads it the same way a designer would read a one-page brand sheet: colors on the left, usage notes on the right, and the prompt points at the file by path.
Watch the Render
Here is the actual MP4 the workflow produced on a cold machine, in roughly ten minutes, for the Setup Bundle page at weareundeniable.com/apply. The prompt in Section 04 was the only prompt typed. The brand assets in Section 05 were the only files staged. Everything below is the output of the same workflow you are about to run for your own page.
The render landed publishable. Brand colors held. The four outcome flags read in monospace with the --01 through --04 numbering the prompt asked for. The logo sat where the prompt put it, on screen from second two onward. Animation stayed text-forward and on-brand. The one human call was pacing, covered in Section 04.
The MP4 is on your machine. Section 07 is where it goes.
Where to Put It
The MP4 in out/ is the asset. The workflow is repeatable, so each new page you launch can have its own video, and each video can live in more than one place. Below are the four placements, ordered by SEO impact. The service page itself is the only one that has to happen. The rest are rungs you take when you are ready.
Embed on the service page
The primary placement and the one this guide is built around. Drag the MP4 into the page builder for the offer the video promotes. If your platform supports an HTML5 video tag, use it... full control over poster frame, autoplay behavior, and controls. The two acceptable spots are above the fold or directly below the first value section, depending on page length. Short page, above the fold. Long page, after the headline lands. The video reinforces the headline; it does not replace it.
Upload to YouTube
This is where the SEO compounding happens. YouTube is the second-most-cited domain in Google's AI Mode (Ahrefs, September 2025), accounting for roughly 5.6% of all AI Overview citations, and that share grew 34% in the six months before that data landed. Title under sixty characters, lead with the offer name. Description opens with one sentence summarizing the offer, mid-paragraph mentions the page being promoted, closes with two URLs. Tag with offer-category keywords, the tool surface (Claude Code, Remotion), and the audience descriptor.
Short-form cutdowns
A fifteen-second vertical version posts to TikTok and Instagram Reels. Prompt Claude Code: 're-render this composition at 1080 by 1920, drop content to fit fifteen seconds.' The same composition file is the source. Upload one cutdown to each platform. The point is presence on the feeds, not perfection.
Optional: email signature or newsletter
Most email clients do not play MP4s inline, so the embed is a GIF-style preview frame linking to the YouTube upload. Useful if your list opens the offer page from email.
The reason to put this on your service page first, before any of the others: AI Overview citations favor existing YouTube content for a given query. Pages that do not have video to upload do not appear in that pool at all. The compounding effect is real; the exact ranking mechanics are Google's, and we do not claim insight into them. What we do claim is that the page with a video on it shows up where the page without one cannot.
What This Costs You
Cash cost
The Claude desktop app and Claude Code both run on an Anthropic plan. Anthropic Pro plans start in the $20s a month for individuals; heavier Claude Code use lands in the higher tiers (around $100 a month at last public pricing). Check anthropic.com/pricing for the current tier list. A single workflow like this one fits comfortably inside Pro.
Node.js is free. A scaffolded Remotion project plus its dependencies takes a few hundred megabytes of disk. Free. Remotion is free for individuals and small teams. Companies above the licensing threshold pay a commercial fee. The FAQ covers the threshold and where to check current pricing.
Your running cost is your existing Claude subscription. The rest is free.
Time cost on first pass
We measured the cold-machine run at roughly 10 minutes, from no Claude desktop installed to a rendered MP4 sitting in out/. Subsequent renders are faster because the install cost is paid. Re-rendering an existing project with new copy takes the time of one prompt plus the render itself.
A video team producing the same artifact takes a production cycle. The exact length depends on scope and revisions. Stating the contrast directly: ten minutes versus a production cycle, on a per-page basis, every time you ship a new offer.
Anti-fit
This workflow is not for every video need. Skip it if any of these describe you:
- —Not for photorealistic live-action footage. Remotion renders animated compositions, not real-world video.
- —Not for cinematic brand films. A two-minute hero film with on-camera talent is a different production category.
- —Not for six-figure product launches where a video team is already scoped and the budget is real.
- —Not for anyone who refuses one revision pass. First-pass output is publishable but typically benefits from a thirty-second pacing trim in Remotion Studio.
Common Questions, Straight Answers
// Free download
The Service Page Video One-Pager
The install commands, the prompt template, the assets folder checklist, and the four placements on a single page. Print it, pin it above your monitor, or forward it to a teammate. No email required.
Download the One-Pager (PDF)↓More from the Lab
How We Cut Cost Per Lead from $16 to $5.43
The creative strategy framework behind it. Same budget, same targeting. Different creative.
Read →--meta-adsMeta Ads Credit Card Deadline: What to Do Before April 1st
How to switch billing, what it means for cash flow, and the exact message to send each type of client.
Read →--lead-genFacebook Lead Forms vs Landing Pages
Which funnel setup actually converts and when to use each.
Read →--ai-toolsClaude vs ChatGPT for Coaches and Consultants
Which AI actually does the work? Architecture, persistence, and compounding compared.
Read →--ai-toolsControl Your Computer From Your Phone Using Claude
Step-by-step Remote Control setup. No coding required. 10 minutes.
Read →--claude-codeClaude Code Slash Commands That Actually Matter
The slash commands that build persistent context instead of disposable chats. /init, /memory, /compact, /plan, and custom skills.
Read →--claude-codeClaude Code Routines: Run Your Work Without Being There
Saved AI sessions that run in Anthropic's cloud on a schedule, webhook, or GitHub event. Four routines that cut the Supervision Tax in half.
Read →--geminiGemini Multimodal: The AI That Sees Your Work
When to use Gemini instead of Claude or ChatGPT. Video, photos, recordings, and image generation for coaches and consultants.
Read →--email-deliverabilityGet Out of Spam — Or Keep Losing Revenue in Silence
Why your emails land in spam and the infrastructure framework for fixing it.
Read →--ai-motion-controlAI Motion Control: Cinematic Video with Higgsfield
Create cinematic AI video using Higgsfield. No camera crew, no budget.
Read →--free-toolClean Copy — Make AI Text Sound Human
Free browser tool that strips AI tells from your copy. Paste, pick a mode, get human output.
Try it →--free-courseLearn Claude Code — Free 5-Lesson Video Course
Set up VS Code with Claude Code, build a landing page, and deploy live with Vercel. Five lessons, no coding experience required.
Watch free →--ai-toolsSix Steps to a Claude That Actually Works for Your Business
Set up Claude with memory, projects, and custom writing styles so it works like a trained team member. Six setup steps that compound.
Read →--ai-toolsHow to Switch from ChatGPT to Claude (And Why It Matters for Your Business)
Where Claude outperforms ChatGPT for business work, and how to bring your ChatGPT context into Claude in about twenty minutes.
Read →--ai-toolsClaude Cowork: Stop Asking. Start Delegating.
Getting started with Claude Cowork. Covers Global Instructions, autonomous tasks, and saved Skills. For business owners who want to delegate, not just chat.
Read →// free course
Want the free course?
Five lessons. By the end you have a live site, version control protecting your work, and Claude Code set up the right way.
Free. No spam. Just the lessons.
Want Someone to Install It With You?
The Setup Bundle. Two to four working sessions, hands-on, the full stack running inside your business by the end... including the video workflow on your offer page.
// $2,000 · Two to four sessions
Apply for the Setup BundleNo commitment. No pitch deck. Just a straight conversation about what's possible.