Hook fast. Convert faster.

Every second lost is a viewer lost. ScriptAce's short-form editor structures your TikTok, Reel, or Short into a retention-engineered script — in real time.

Start Writing Free Explore the blocks →
TikTok
Reels
Shorts
LinkedIn
3s
Hook Window
The only window to stop the scroll
2.5
Words / Second
Pace threshold for high retention
5
Block Types
Hook, Problem, Solution, CTA, Custom

Five blocks.
One viral video.

Click any block to highlight it in the phone preview. Each block has a distinct colour and timestamp so your delivery stays pinpoint.

01
The Hook

The first 0–3 seconds. A curiosity gap, bold promise, visual shock, or provocative question. If your hook doesn't stop the scroll, the rest is irrelevant.

0–3sCuriosity Gap
0s → 3sSidebar → ADD HOOK
02
The Problem

Seconds 3–10. Establish the stakes. Agitate the pain point your video resolves. The viewer should feel seen and slightly uncomfortable.

3–10sAgitate Pain
3s → 10sSidebar → ADD PROBLEM
03
The Solution

Seconds 10–50. Deliver on your hook's promise. Keep pace high (2.5+ words per second). Withhold the final payoff until just before the CTA.

10–50sValue Delivery
10s → 50sSidebar → ADD SOLUTION
04
The CTA

Seconds 50–60. One CTA only — multiple asks split attention and kill conversion. Trigger a comment automation, drive a follow, or redirect to a link.

50–60sOne Ask
50s → 60sSidebar → ADD CTA
05
Custom Block

Freeform — B-roll instructions, on-screen text callouts, music cues, or loop bait. Time marker and label fully editable. Press Tab to cycle through all five types.

Any TimeTab to Cycle
AnySidebar → ADD CUSTOM
0–3s Hook
The one system that grew my account to 100K in 30 days...
3–10s Problem
I posted every day for 6 months and got zero traction. Here's why.
10–50s Solution
Step 1: Audit competitors' hooks. Step 2: Steal the format. Step 3: Add your POV. Repeat weekly...
50–60s CTA
Comment "SYSTEM" and I'll DM you the full breakdown.
← Click a block to highlight it

Every second
mapped.

How a 60-second video allocates its time for maximum watch-through rate.

HOOK
PROB
SOLUTION (10s–50s)
CTA
03s10s50s60s
Block Window Objective Failure Mode
HOOK 0–3s Stop the scroll. Pattern interrupt. Slow start — viewer swipes before promise lands
PROBLEM 3–10s Create emotional relevance. Build tension. Vague or generic pain — viewer feels unseen
SOLUTION 10–50s Deliver value. Earn watch time. Pace below 2.5 WPS — drop-off spike at 15–20s
CTA 50–60s Convert watch time into action. Multiple asks or weak directive — zero clicks
CUSTOM Any B-roll, text callouts, loop baits, music cues. Overuse — dilutes the core HPSC structure

Hook to export
in five steps.

The recommended method for building a retention-optimised script in ScriptAce.

Step 1
Write your hook first
Add a HOOK block and write three different opening lines. Choose the one with the highest curiosity gap — it should make a specific promise that can only be resolved by watching the rest.
ADD HOOK → write 3 variants → pick the sharpest
Test: Would you swipe past this?
Step 2
Agitate the problem
Add a PROBLEM block. Describe the specific pain in language your viewer would use themselves — not "feeling stressed" but "lying awake at 2am running the numbers again." Max 3 sentences.
ADD PROBLEM → mirror viewer language exactly
Max 3 sentences — don't linger
Step 3
Deliver in numbered steps
Add a SOLUTION block. Structure as numbered steps, "mistakes," or a rapid-fire list. Each point one sentence. Write B-roll cues in brackets. Withhold your best insight until the last step.
Step 1: ... Step 2: ... Step 3: [save best for last]
[B-roll notes] inside brackets
Step 4
Add one clear CTA
Add a CTA block. Choose a single action. If using comment automation, give a one-word trigger in quotes. Two sentences: the ask, and the reward.
ADD CTA → one action → one reward
Comment "WORD" → I'll send you X
Step 5
Export and post
Click Export for a formatted PDF — timestamps, block headers, and all script text. Use plain text export to paste into TikTok's script tool, CapCut, or your teleprompter.
Export → PDF or .txt download
Share → public link → open before filming

Write for the
algorithm.

Optimal length, aspect ratio, and pace guidance per platform — baked into your script from the start.

TikTok

15–60s optimal. Algorithm rewards full watch-through. Loop your ending into your hook for re-watch bait. Strong comment-automation CTA culture.

9:1615–60sComment CTA
Instagram Reels

30–90s sweet spot. Hooks must work without audio (70% watch on mute). On-screen text callouts essential. CTA toward saves and shares.

9:1630–90sMute-safe
YouTube Shorts

Under 60s strictly. Highest viewer tolerance for educational content. End-screen redirect to long-form is a powerful CTA. Title acts as secondary hook.

9:16Under 60sEdu-friendly
LinkedIn Video

30–90s. B2B tone — hook via industry insight. Problem should mirror professional pain. CTA toward newsletter or DM, not comment automations.

16:9 or 9:1630–90sB2B tone

Built for the
creator economy.

Live Retention Stats

Word count, estimated duration, and segment count update every keystroke. Duration calculated at 2.5 words/second or from your time markers.

Real-Time
Tab to Cycle Type

Press Tab inside any block to cycle it through Hook → Problem → Solution → CTA → Custom. Colour, label, and time marker all update in one keystroke.

Keyboard First
Drag to Reorder

Grab the drag handle on any block. Smooth Sortable.js animations, ghost preview while dragging. Script saves automatically after drop.

Sortable.js
Auto-Save to Cloud

Every keystroke triggers a 500ms debounced save to Firestore. The Synced indicator confirms the last save. Never manually save.

Firestore
Live Collaboration

Invite your editor, manager, or brand rep by email. Live cursors show where each collaborator is working in real time. Toggle a public read-only link for clients.

Real-Time Presence
PDF Export

Generate a structured PDF using jsPDF — no server, fully client-side. Each block renders with its time marker and header. Fallback to browser print on older browsers.

jsPDF

Every action
one move away.

Adding Blocks
Add HookSidebar → ADD HOOK
Add ProblemADD PROBLEM
Add SolutionADD SOLUTION
Add CTAADD CTA
Add CustomADD CUSTOM
Insert Hook below⇧ + ↵
Editing
Cycle block typeTab
Delete empty block⌫ at start
Reorder blockDrag ⠿ handle
Remove block✕ icon
Export PDFTopbar → Export
Share scriptTopbar → Share

Go viral
on purpose.

What high-retention creators do differently when scripting in ScriptAce.

Write three hooks, pick one

The first hook you write is rarely your best. Write three completely different opening lines — curiosity gap, bold claim, controversy. Run the best. Delete the rest. Lifts retention 15–30%.

Mirror your viewer's exact language

"I can't stop procrastinating" performs better than "many people struggle with time management." Specificity creates recognition.

Withhold your best point until last

Save the most surprising insight for the final step. Teasing the payoff in your hook and delivering it just before the CTA spikes watch-through to over 80%.

One CTA, one keyword

Never ask for a follow AND a comment AND a link click. Pick one. Make the keyword specific — "SYSTEM" or "GUIDE" converts better than "YES."

Script B-roll in Custom blocks

Add a CUSTOM block after each SOLUTION step and note what B-roll plays over that line. Makes edit sessions 3× faster.

Check duration before filming

Use the Est. Duration stat before you roll camera. A 45-second Reel consistently outperforms a 90-second one.

Share before you shoot

Invite your editor and talent on day one. They can view it live as you write — no "final version" email needed.

Loop your ending into your hook

On TikTok, loop re-watches drive the algorithm hard. End with a line that naturally feeds back into your opening hook.

Script done.
Ship it.

Click Export in the topbar. ScriptAce generates a production-ready PDF — no server, instant download.

PDF Document

All blocks with time markers, headers, and script text. Formatted for A4/Letter — ready for shoot day or call sheet attachment.

Plain Text (.txt)

Paste directly into CapCut's script tool, TikTok's teleprompter, or your team chat.

Shared Viewer Link

Toggle public access. Anyone with the link views the script read-only — no login needed. Ideal for talent or clients before filming.

Ready to hook
your next
audience?

Start free. All 5 block types, live retention stats, professional exports. No complicated setup.

Start Writing Free See Pricing →

Free forever  ·  No credit card  ·  3 scripts to start