Custom script
When to write the script yourself instead of using the brief path, how to format it, and what runs differently.
4 min read
If you'd rather write the script yourself, paste it into the brief form instead of a brief. The pipeline still generates outline metadata, footage, voice (or accepts your custom VO), and a final timeline. This page covers when custom script is the right call, how to format it, and what runs differently.
When to use it
Custom script is the right call when:
- You already have a finished script. From a previous platform, from a co-writer, from a sponsorship deal that came with copy. The pipeline doesn't need to re-do work you've already done.
- Factual accuracy matters more than tone consistency. Sponsored content, evergreen reference videos, anything where the script has been reviewed by a domain expert. You don't want Claude's outline pass touching it.
- You're testing a brand voice the AI doesn't have a feel for. A signature show structure (intro bumper, three-act journey, callback at the end) that wants to stay exact across episodes.
- You're collaborating with a script reviewer or editor. Their version is the version. The pipeline picks up from there.
It's NOT the right call when:
- You're scratching an itch and want to see what Claude does with it. The brief path is faster.
- You want to iterate on the structure. The outline-regen-with-hint path on the AI script is more flexible.
- You're new to the platform. Use the brief path until you've shipped a few videos and know what the pipeline can do.
How to format
The brief form has a Custom script field that takes plain text up to 50,000 characters. Roughly 30 minutes of narration at the pipeline's 2.5 words-per-second pacing assumption.
Recommended structure:
[HOOK]
First scene's narration. Two to four sentences, hook the viewer in the first 8 seconds.
[SCENE 1: short label of what this scene is about]
Body of scene 1. Two to six paragraphs.
[SCENE 2: short label]
Body of scene 2.
...
[PAYOFF]
Final scene. Tie it together, end clean.
The square-bracket labels are read as scene boundaries. The pipeline uses them to allocate timeline length, slot footage candidates against, and break captions on. You can use plain ## Scene 1 headings instead if you prefer Markdown; the parser handles both.
If you don't include scene labels, the pipeline infers them by paragraph clustering. That works but is less precise; explicit labels are recommended.
What still runs
Everything except script generation.
Outline metadata still gets generated from the script. The outline tells the rest of the pipeline what each scene's role is (hook / context / argument / payoff), what footage hints apply, what tone the voice should hit. Claude reads the script and infers this, you don't have to write it out.
Voice synthesis still runs unless you've also supplied a custom voiceover (see Custom voiceover). The voice picker recommends voices that fit the script's tone, you pick one, ElevenLabs synthesises it.
Footage orchestration still runs. The orchestrator reads each scene's script + the inferred outline metadata and searches the niche's chain for matching candidates. The vision model ranks them.
Script critic still runs but is gentler. The critic knows hand-authored prose is harder to "fix" than AI-generated prose, so it surfaces findings as suggestions rather than blockers, and the regenerate affordances default to "regenerate with hint" rather than "rewrite from scratch."
Captions, music, theme, thumbnail, render, publish all run as normal.
What's different
A few behaviours change when custom script is supplied:
No script-stage credit. The Pro pricing formula (100 + 50/min) includes script generation. When you supply your own, the script-stage credit is waived, the cost of a custom-script video is reduced accordingly. The credit preview on the brief form reflects this before you submit.
Outline regen behaves differently. Outline regen on a custom-script job re-runs the metadata inference, not a fresh script generation. You can use this to nudge scene boundaries or footage hints without touching the prose.
Length validation is gentler. The brief form normally validates target length matches script word count. With custom script, the pipeline scales the timeline to match the script length, not the brief's chosen length. If your script is 9 minutes of narration and you picked 12 minutes, you'll get a 9-minute video. If you want the timeline padded with B-roll holds, indicate that in the script (with directorial cues in square brackets that aren't part of the narration).
Directorial cues in square brackets. You can include lines like [Hold on the image for 3 seconds] or [Cut to archival footage of the speech]. The pipeline doesn't read these literally, the script generator's downstream steps are looking for narration text, but the timeline builder honours pacing hints that read sensibly.
Hybrid approaches
You don't have to fully commit to custom script. Two hybrid patterns work:
AI outline + custom script per scene. Start with the brief path, let Claude produce the outline, then on the script stage paste your custom script for each scene block as you go. The editor's per-scene custom-script affordance accepts this.
Custom hook + AI body. Some creators have a signature opening they reuse across the channel. The brief form's "Help me write this" coach has a "Custom opening line" field that holds a specific first sentence Claude treats as a fixed beat the script must open with. Useful when only the hook needs to be exactly yours and the rest can be Claude.
What's next
Brief writing strategy covers the brief path, the alternative.
Custom voiceover covers bringing your own narration, often paired with custom script.
Editor overview covers what the editor surfaces look like on a custom-script job.
Cheers,
Carl