# Viral Hooks

> Use when writing or auditing the opening lines of any content — reel hooks, carousel slide 1, video intros, newsletter subject lines, tweet openers — or when a draft's opener feels flat, vague, or skippable.

- Skill: `artemnovitckii/viral-hooks` (Agent Skill)
- Install (CLI): `npx skillmds@latest add artemnovitckii/viral-hooks`
- Raw SKILL.md: https://api.skillmd.com/api/skills/artemnovitckii/viral-hooks/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: artemnovitckii (https://skillmd.com/u/artemnovitckii)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/artemnovitckii/viral-hooks

---


# Viral Hooks

A hook has exactly ONE job: help the right viewer decide to keep watching. To do that job it must deliver two things, and only two things:

1. **Topic clarity** — within 1-2 seconds, the viewer knows exactly what this is about.
2. **On-target curiosity** — the viewer believes this is for THEM, and an open question pulls them forward.

Everything in this skill exists to make a hook hit both. A hook that's clever but unclear fails. A hook that's clear but flat fails. Both, or it's not done.

**Always pair with your voice:** before writing hooks, read the hooks from your own top-performing posts. Match their cadence and energy — the patterns below are mechanics, your real posts are the sound. If you have a voice file (see the **voice-dna** skill in this pack), use it.

**If you have no sample of your voice** (auditing an outsider's script, a brand-new account, fewer than ~10 posts): proceed on the mechanics alone and say so in the output ("voice unverified — no sample to check against"). Never block, never silently pretend the voice check happened.

## The Four Hook Killers

Every weak hook fails in one of exactly four ways. Diagnose which one, apply the fix.

### 1. DELAY — topic arrives too late

Every word spent before the topic lands costs you readers. What "too late" means depends on the platform (see the platform table below): a reel has a ~2-second cliff, a LinkedIn post has the "…see more" fold, a newsletter has the subject line. Same killer, different deadline.

- ❌ "Okay so this is honestly one of the craziest things I've ever seen, and when I show you, you're not going to believe it."
- ✅ "Your meal prep is why you're ordering takeout by Thursday."

**Fix:** Delete everything before the topic. No greeting, no throat-clearing, no "let me explain." The first noun phrase should carry the subject — and it must land before that platform's deadline.

### 2. CONFUSION — the viewer has to re-read

Nested clauses, abstract words, passive voice. If a line takes two passes to parse, the viewer is already gone.

- ❌ "The reason consistency with your nutrition tends to break down is that the systems you build on weekends don't account for weekday decision fatigue."
- ✅ "You prep every Sunday. By Wednesday it falls apart. The reason isn't discipline."

**Fix:** Fewer words. Simpler words (6th-grade level). Active voice. One idea per sentence.

### 3. IRRELEVANCE — clear, but not for ME

The viewer understands the topic but can't see themselves in it. The #1 cause: creator-POV framing.

- ❌ "I've struggled with consistency my whole life." (Viewer: do I share this problem? Maybe not. Out.)
- ✅ "If you've restarted the same routine five times this year, this is the reason." (Viewer can't opt out — it's aimed at them.)

**Fix:** Two moves. Swap **me/my → you/your**. Frame around a **pain the viewer already feels** — agitate the problem before offering the solve. Solving MY problem is a need; hearing YOUR story is a nice-to-have.

**I-framed pattern exception:** some sanctioned patterns are legitimately I-framed — story patterns (confession, in-medias-res, expensive lesson) and contrarian-arc patterns ("I stopped X...", "I'll never X again"). For these, the relevance test becomes: is the pain or payoff in the I-statement unmistakably the VIEWER'S too, and does a you-pivot land within the hook's 2-3 lines (or the very first beat after)? An I-framed hook with no you-pivot in sight is still an IRRELEVANCE flag.

### 4. DISINTEREST — clear, relevant, still skippable

Topic clarity and relevance are there, but no question is left open. The cure is **contrast**: the gap between what the viewer believes (A) and what you're claiming (B) IS the curiosity. No gap, no pull.

- **Stated contrast** (blunt, impossible to miss): "Most people fix this with more discipline. I fix it by deleting the plan entirely."
- **Implied contrast** (savvier — only B stated, A implied): "The most consistent clients I've ever had don't use a meal plan at all."

**Fix:** Name the A (common belief, common method, the viewer's current behavior) and put your B against it. The bigger the believable distance, the stronger the hook.

## What "the hook" is on each platform

The four killers are universal. What changes per platform is the **unit of attention** you're earning and the medium you earn it in. Before writing, know which one you're working in.

| Platform | The hook IS… | DELAY deadline | Medium notes |
|---|---|---|---|
| **Reel / TikTok** | First 1-2 seconds, spoken **+ visual** | ~2-second scroll cliff | Lead with the striking visual — eyes beat ears. Spoken cadence, contractions. |
| **YouTube** | **Two hooks:** title + thumbnail earn the *click*; first 15-30s confirms it | The click, then the first 30s | Title = curiosity gap + clarity. First 30s restates the promise and raises stakes — tease the payoff, don't deliver it yet. |
| **LinkedIn** | First 1-2 lines before the "…see more" fold | The fold (~2 lines visible in-feed) | That's all the feed shows. Earn the expand. Line breaks and white space help. Pattern-interrupt, not corporate. |
| **X / Twitter** | First tweet (thread) or first line | The text scroll-stop | Bold claim or numbered promise. Lower context — say the payoff plainly. |
| **Newsletter** | Subject line earns the *open*; first line earns the *read* | The subject line | Subject = curiosity or benefit, not spammy. Never waste line one on "Hey friends." |
| **Carousel** | Slide 1 text, ≤9 words | The thumb-stop on slide 1 | Must promise a reason to swipe. |

When a killer's fix references "the first 2 seconds," translate it to the active platform's deadline. Everything else — clarity, relevance, contrast — applies unchanged.

## Hook shape: 2-3 lines, not always one zinger

The best hooks do clarity + contrast in one line — keep those. But a complete hook is allowed to be 2-3 spoken lines:

- Line 1: topic clarity
- Lines 2-3: the contrast / curiosity setup

Don't sacrifice clarity to force a one-liner.

## Banned openers

These always get flagged — the wrapper words never survive a rewrite. The only judgment call is the blast radius, and the qualifier decides it: if real substance follows the wrapper ("Story time:" followed by an actual stated stake), only the wrapper dies — delete it, it's pure DELAY cost. If the substance is missing, the whole hook dies:

- "Let me explain" / "let's talk about" / "let's explore" — throat-clearing (DELAY)
- "Story time:" / "POV:" without content in the same breath — empty wrapper (DELAY)
- "Nobody talks about this" / "what no one tells you" without naming the thing — vague (CONFUSION + cliché)
- "[Company] just launched [thing]" — news report, no angle, no stakes for the viewer (IRRELEVANCE)
- "The shift happening in [industry]..." — philosophical fog (all four killers at once)
- A CTA as the opener ("Comment X for...") — CTAs close, never open
- "Wait till you see this" / "you won't believe" — zero topic clarity (DELAY)

## Writing mode

1. **Know the platform** — pull its row from the platform table; that sets the unit of attention and the medium (spoken reel vs first-line-before-fold vs title+thumbnail).
2. Read your own top hooks for that platform — absorb cadence, energy, vocabulary. (If you keep a swipe file of hooks that worked, pull from it.)
3. Build each variant by **stacking 2-3 levers** (not picking one template) — a pattern, an angle, and a multiplier. Levers and angles are platform-agnostic; *express* each stack in the active platform's form. Add the Specificity multiplier by default — concrete/odd numbers, named concepts.
4. Write each hook through the four-killer checklist below, translating DELAY to the platform's deadline.
5. Deliver 3 variants by default — an explicit request for a different count overrides this. Whatever the count, every variant uses a DIFFERENT lever stack; label each with the levers it stacks (so you learn the why, not just the what).

## Audit mode

First identify the platform (the caller says, or infer from the content — a subject line vs a spoken open vs a first-tweet). Apply the four killers against that platform's deadline. Score each killer — **pass** or **flag with the exact offending words quoted**. Then rewrite. Output format:

```
HOOK AUDIT: "your meal prep is failing you — let me explain why that is"
  Delay:       FLAG — "let me explain why that is" postpones the payoff
  Confusion:   pass
  Irrelevance: pass — "your" framing ✓
  Disinterest: FLAG — no contrast; what's the A vs B?
  Voice:       pass — cadence matches your posts  (or: "unverified — no sample available")
  Rewrite: "Your Sunday meal prep is why you quit by Thursday. The fix isn't more discipline — it's prepping less."
```

Never flag without quoting the words that triggered it. Never rewrite without preserving your voice (check a sample if unsure).

## The checklist (every hook, before it ships)

- [ ] Topic clear in the first 1-2 seconds? (no DELAY)
- [ ] Impossible to misunderstand on one pass? (no CONFUSION)
- [ ] "You/your" framing around a felt pain — or, for I-framed patterns, a you-pivot within the hook? (no IRRELEVANCE — see the I-framed pattern exception)
- [ ] A-vs-B contrast that opens a real question? (no DISINTEREST)
- [ ] Sounds like you, not like a template? (voice check)

All five pass → the hook is working.

## Common mistakes

| Mistake | Why it fails |
|---|---|
| Three variants that are one idea reworded | You get no real choice — vary the PATTERN, not the synonyms |
| Hook promises what the script doesn't deliver | Viewers punish bait; retention dies at the reveal |
| Maximizing shock over believability | Contrast only works inside the viewer's belief range — "this one trick doctors hate" is dead on arrival |
| Polishing grammar into stiffness | Spoken hooks need spoken rhythm; read it aloud, keep the contractions |
| Hook for everyone | A hook for everyone stops no one — name the person ("if you've restarted five times this year") |

