The Real Hook (Transcription)
There's a trap in the last lesson's extractor, and it's worth catching before you trust your vault.
The extractor reads captions. But on short-form video, the caption is almost never the hook. Look at any breakout reel: the caption is usually doing the CTA — "comment TEMPLATE and I'll DM you the whole thing," "follow for part 2." The thing that actually stopped the scroll happened in the first three seconds of audio, on screen, spoken.
The caption is not the hook. On reels, the caption is usually doing the CTA ("comment WORD and I'll DM you…"). The real hook is the spoken opener — the first ~3 seconds of what's said on screen. Study captions and you learn the ask; study the audio and you learn what earns the attention.
So the caption-based vault is half the picture. To get the other half, you have to listen to the reels.
Download, transcribe, extract
This is the upgrade. For the top reels by virality, download them, transcribe the audio locally, and let an LLM pull the hook and the retention devices out of the transcript.
For the top 10 reels by virality: download the reel (yt-dlp / media-info video url), transcribe it with
faster-whisper (local), and pass the transcript to an LLM that extracts: hook (first ~3 spoken
seconds), hook_tags, cta, cta_keyword, cta_placement, and the retention "devices" (body_beats,
micro_loops). Save everything in the same vault schema.
Two things make this work:
faster-whisperruns locally. Transcription is free and private, and it's fast enough to run as a batch over your top reels without touching an API meter.- Everything lands in the same vault schema. The spoken hook, its
hook_tags, thecta,cta_keyword,cta_placement, and the retention devices (body_beats,micro_loops) all get written next to the caption-based entries — so the vault stays one ranked file, not two disconnected ones.
That cta_placement field is quietly important: it tells you where the ask lands — opener, mid, or end — which is a pattern worth copying on its own.
How I do it
I run faster-whisper large-v3 on a local GPU for the transcription, then hand each transcript to Haiku for the extraction — a small, cheap model is plenty for pulling structured fields out of text. It runs as a batch, off the main thread: I don't sit and wait for it. The tracker finds the outliers, the transcription job chews through the top ones in the background, and the vault fills up with real spoken hooks by the time I look.
Now your vault has both layers: the caption CTA (what they asked for) and the spoken hook (what actually caught people). That's a swipe file worth trusting.
On a breakout reel, what is the caption usually doing?
Key takeaway
The caption is doing the CTA; the real hook is spoken. Download the top reels, transcribe them with faster-whisper (local, GPU-friendly), and let a cheap model like Haiku extract the hook, hook tags, CTA, keyword, placement, and retention devices into the same vault schema — running as a background batch.
