Your files never leave your device. All processing happens locally in your browser.
How do I write a good hook or title for my video?
Open with a first line that creates a curiosity gap, a bold claim, a warning or a direct question in the first 1–3 seconds, then write a title that front-loads your keyword and the payoff. This tool does both: paste a transcript or type a topic, pick a platform and tone, and it assembles first-line HOOKS and TITLE variants from proven templates seeded with your own keywords — and it checks each title against the platform’s real character limit so you see where it will truncate. Everything runs in your browser; nothing is uploaded and it is not AI-written.
Hooks land in the first 1–3 seconds — curiosity gap, bold claim, warning or question
YouTube titles allow 100 characters but truncate around ~60 — front-load the hook and keyword
Shorts / TikTok / Reels show far less — ~40–125 characters before “…more”
Deterministic templates seeded with keywords extracted from your transcript — not AI, not guaranteed viral
100% client-side — the transcript is processed in your browser and never uploaded
What is
Video Hook
A video hook is the opening line or first few seconds of a video that captures attention and keeps viewers watching, most often by opening a curiosity gap, making a bold claim, naming a pain point or asking a direct question. Because TikTok, Reels and Shorts measure retention from the first frame, a weak hook loses viewers before the three-second mark and suppresses reach. A title is the accompanying headline; on YouTube it can run to 100 characters but is truncated in search and suggested feeds around 60, so the keyword and payoff belong in the first 40–60 characters.
No. It assembles them deterministically from a curated bank of proven templates, seeded with keywords pulled from your transcript. Same input gives the same output.
This is an honest, offline generator, not an AI writer. It has no model and makes no network calls. When you paste a transcript it extracts key phrases with plain text analysis — stopword removal, and unigram and bigram frequency — then slots those keywords into hand-written hook and title templates that follow well-known retention patterns (curiosity gap, bold claim, warning, question, list, result-first, POV). Because it is deterministic, the same transcript, platform, tone and seed always produce the same lines; pressing shuffle just advances the seed for a fresh selection. Treat the output as strong starting points to edit in your own voice, not as finished, guaranteed-viral copy.
The field allows 100 characters, but YouTube truncates around 60 in search and suggested feeds (fewer on mobile), so put the hook and keyword in the first 40–60.
A YouTube title can technically be up to 100 characters, but that is not what most viewers see. In search results, the suggested sidebar and mobile, the title is cut off around 60 characters — often closer to 50 on small screens. That means the most compelling, keyword-rich part must appear in the first 40–60 characters or it never gets read. This tool shows a live character count for every title, flags anything past the visible limit, and renders a truncation preview of exactly what will show before the “…”, so you can trim before you publish. Shorts, TikTok and Reels are tighter still.
Yes. The transcript is read and processed entirely in your browser. Nothing is uploaded, logged or stored on a server, and there are no API calls.
The tool is 100% client-side. Your transcript and topic are just strings in the page; the keyword extraction, template assembly and character-count checks all run locally in JavaScript with no server, API call, database or logging in the processing path, and no CDN in the pipeline. It works offline once cached, and closing the tab discards everything you pasted. The only optional network use anywhere on the site is consent-gated advertising, which never sees your input.
No tool can promise that. These are proven-pattern starting points seeded with your keywords — virality depends on your content, thumbnail, audience and timing.
Hooks and titles influence click-through and retention, but they cannot manufacture a hit. This tool gives you strong, pattern-based drafts — curiosity gaps, bold claims and clear promises that are known to help — but it does not analyse trending data, your channel’s history or the algorithm, and it cannot know your audience the way you do. The output is a springboard: personalise it, keep it honest (misleading clickbait tanks watch time and gets suppressed), pair it with a strong thumbnail and a payoff that delivers, and test variants. The lines are a starting point, not a guarantee.
Detailed Explanation
📖How It Works
What the Hook / Title Suggestions Tool Does
This tool turns a video transcript or a plain topic into two grouped outputs: first-line HOOKS (retention openers) and TITLE variants (headlines or caption first-lines). The user pastes a transcript or types a topic, picks a target platform (YouTube long-form, YouTube Shorts, TikTok or Instagram Reels) and a tone (curiosity, bold claim, how-to, listicle or emotional), and the tool assembles suggestions from a curated bank of proven, human-written templates seeded with the user’s own keywords. It is deterministic and offline — there is no AI model and no network call — and every title is checked against the platform’s real character limit. Everything runs in the browser and nothing is uploaded.
Input: a pasted transcript or a typed topic, plus platform and tone
Output: grouped first-line hooks and title / caption variants
Deterministic templates seeded with your keywords — no AI, no network
The transcript is processed locally and never uploaded
⚙️Methodology
How Keywords Are Extracted and Suggestions Assembled
When a transcript is pasted, a pure engine (hookTitleEngine.ts) extracts topic signals with plain text analysis: it lowercases and tokenises the text, removes stopwords, then ranks single keywords by frequency and multi-word phrases by bigram frequency, and also captures the first-sentence topic. The strongest repeated phrase (or top keyword) becomes the primary topic, which the user can override. That topic is slotted into hook and title templates grouped by pattern — curiosity gap, bold claim, warning / negativity, question, list, pain point, result-first and POV. A seeded pseudo-random generator selects and orders templates so that “shuffle” is reproducible: the same seed yields the same set, and pressing regenerate advances the seed for a fresh, tone-weighted selection with category variety.
Tokenise → remove stopwords → rank unigrams and bigrams by frequency
Strongest phrase or keyword seeds the templates (user-overridable)
Templates grouped by proven retention patterns
Seeded RNG makes shuffle deterministic and reproducible
🔧Technical Details
Platform Character Limits and Truncation Previews
Titles and captions are useless past the point a platform truncates them, so the tool checks every title against real 2026 limits. YouTube titles allow 100 characters but are cut off around 60 in search and suggested feeds (fewer on mobile), so the keyword and payoff must sit in the first 40–60. YouTube Shorts use the same 100-character field but the vertical player shows far less, so the punch belongs under ~45. TikTok captions allow 2,200 characters but the feed collapses after ~100 with a “…more”, and high-performing captions run ~150. Instagram Reels captions also allow 2,200 characters but collapse after ~125. Each generated title shows a live character count, a flag when it exceeds the visible limit or the hard cap, and a preview of exactly what will show before the ellipsis.
YouTube: 100-char field, truncates ~60 — front-load the keyword
Shorts: 100-char field, player shows far less — keep under ~45
These hooks and titles are assembled deterministically from curated templates plus the user’s own keywords — they are NOT written by AI and NOT guaranteed to go viral. The tool does not analyse trending topics, competitor titles, thumbnail context or a channel’s analytics, and it cannot know an audience the way its creator does. Template-based lines can also read awkwardly when the extracted topic is an unusual noun phrase, which is why every suggestion is editable in place: the output is a strong STARTING POINT to personalise, not finished copy. Misleading clickbait is counter-productive — even when it spikes click-through, weak watch time causes platforms to suppress the video — so the payoff in the video must match the promise in the hook. Character limits are current best estimates and platforms change them without notice.
Deterministic templates, not AI — and not a guarantee of virality
No trend, competitor, thumbnail or analytics awareness
Every hook and title is editable in place — personalise it
Platform limits change; verify before publishing
🔒Privacy & Security
Private by Design
Everything runs and stays on the user’s device. The transcript and topic are just strings in the page; keyword extraction, template assembly and the character-count checks are all computed locally with pure JavaScript — there is no server, no API call, no database and no logging in the processing path, and no CDN in the pipeline. Copying an individual line, copying the full set or downloading the .txt report all happen in the browser. The tool works offline once cached, and closing the tab discards every word pasted. The only optional network use anywhere on the site is consent-gated advertising, which never sees the input.
Transcript and topic never leave the page
No server, API, database or logging in the processing path
Copy and .txt download are generated locally in the browser
Works offline once cached; closing the tab discards everything
First-line hook & title character limits by platform (2026, current best estimates)
Platform
Field cap
Visible before cut
Keep it under
YouTube (long-form)
100
~60 (search / suggested)
~60 chars
YouTube Shorts
100
~40–45 (vertical player)
~45 chars
TikTok
2,200
~100 (feed “…more”)
~150 chars
Instagram Reels
2,200
~125 (feed “…more”)
~125 chars
Field caps are the maximum the platform accepts; “visible before cut” is where the common surface truncates. Put the hook and keyword first. Platforms change these values without notice — treat them as current best estimates and verify.