On X, the first line is the whole post for most people, because most people only see the first line. A hook is not a trick to get a click. It is the most specific true thing in the post, moved to the top. Builders have an unfair supply of these: numbers, decisions, bugs, timestamps and customer sentences, and almost all of them beat any clever opener.
Below are sixteen hook patterns. Each example shows the full post, not just the opener, because a hook that promises more than the post delivers trains people to skip you. The patterns are grouped by what the hook is built from. The posts are illustrative; the pattern is what you take.
What a hook has to do
A hook has one job: make a stranger read the second line. It does this by being specific enough to be believable and incomplete enough to need the rest. "I made a mistake this week" is incomplete but not specific. "Spent $600 on a logo before I had a user" is both, and the reader already wants to know what happened to the $600.
The second job is honesty. If the post does not pay off the first line, the reader remembers, and the next hook from you gets scrolled past. The best hook is usually the last line of your first draft, moved to the top, because that is where you finally said the thing.
Hooks built on a number
A specific, slightly embarrassing number
$212 in revenue, 9 months of work. My friends think I failed. I think I found 11 people who pay for a thing that did not exist in January. Month 10 starts tomorrow.
- Why it works:
- The number is small enough to be surprising and precise enough to be true. The rest of the post reframes it without pretending it is big.
Two numbers that contradict each other
4,000 followers. 3 paying customers. The audience was never the business. It was the research budget.
- Why it works:
- The gap between the numbers is the hook. The reader wants to know how you explain it, and the explanation is one line.
A timestamp
11:52pm. Deploy failed for the fourth time. The bug: a trailing slash in an environment variable. Going to bed. The slash can wait.
- Why it works:
- A time of day puts the reader in the room. The small cause and the decision to stop make it a story.
A count of attempts
Rewrote the pricing page six times this year. Version 6 is version 2 with one word changed: "per month" became "a month". I have no explanation.
- Why it works:
- Six attempts promises a lesson; the lesson turns out to be absurdly small, which is funnier and more honest than a framework.
Hooks built on a decision or a mistake
A decision stated flat
I'm not building a mobile app. Everyone asks. The people who pay use it at a desk, at 9am, with a coffee. The app would be for the people who don't pay.
- Why it works:
- A refusal is a stronger opener than a plan. The reasoning is specific enough that people will argue with it, which keeps the post alive.
A mistake with the price tag in the first line
Spent $600 on a logo before I had a user. The logo is fine. The $600 would have been three months of the email tool I actually needed.
- Why it works:
- Cost first, lesson second. Readers who have made the same mistake reply, and there are many of them.
The thing you were wrong about
I was wrong about free trials. Thought a card up front would kill signups. It cut them in half and tripled the ones who stayed past day 7. Fewer, better.
- Why it works:
- Admitting a reversal in line one buys credibility for everything after it. The numbers make the reversal concrete.
A question you asked yourself
Asked myself this morning: if I could only keep one feature, which one? The answer was not the one I spent the summer on.
- Why it works:
- The question is one any builder can ask themselves, and the answer withholds just enough to make them want to know which feature.
Hooks built on contrast and time
Then and now, in three lines
2024: a 40-page plan. 2025: a landing page and a waitlist. 2026: a product with 60 users and no plan. The plan was the procrastination.
- Why it works:
- Dated lines are easy to scan and the progression tells the story before the last line names it.
A big thing beside a small thing
Shipped a 2,000-line feature on Monday. Nobody noticed. Fixed a typo in the signup button on Tuesday. Three people emailed to say thanks. I know which one I will remember.
- Why it works:
- The contrast is the hook. Builders recognise it instantly and reply with their own version.
A deadline
Launch is in 9 days. The product is done. The landing page is done. What is not done: me deciding what to charge. Talk me through it?
- Why it works:
- A countdown creates a reason to reply now, and the open question gives people a concrete way to help.
The unexpected source
Fastest-growing channel this month: a comment I left on a Reddit thread two years ago. SEO is apparently just being helpful and then waiting.
- Why it works:
- A result from an unlikely place is a built-in hook, and the one-line conclusion is quotable.
Hooks built on someone else's words
A quote is a hook you did not have to write. Customers, support tickets, and advice you disagree with all work, as long as the post is about what you did with the words, not just the words themselves.
A customer quote
"I would pay double if it just remembered my last filter." A customer, this morning. The feature takes a day. I have been building the wrong things for a month.
- Why it works:
- Opening with the customer's sentence puts their voice first. The admission at the end is what makes people trust the account.
A quote you disagree with
"Ship fast and break things." I shipped fast. The thing I broke was a customer's payroll export. Ship fast and test the money paths.
- Why it works:
- A famous line, then the specific way it failed you, then your amended version. Argument in three lines.
Someone's question, answered honestly
A founder asked me how I got my first 10 customers. Honest answer: I emailed 140 people one at a time. No hack. Just a list and a bad week.
- Why it works:
- The question is one every builder has, and the unglamorous answer is more useful than any hack would be.
A line from support
Support ticket today, in full: "Why." That is the whole ticket. Turns out the export button was invisible in dark mode. Fair.
- Why it works:
- A one-word ticket is funny on its own, and the resolution shows you took it seriously anyway.
Writing your own hook in five minutes
- 01Write the post badly first, start to finish, with whatever opener comes out.
- 02Underline every number, name, time and quoted sentence in it. One of those is your hook.
- 03Move it to the first line and cut everything that came before it. Most drafts start one or two sentences too early.
- 04Read the first line alone. If it could be true of anyone, add the detail that makes it only yours.
- 05Check that the rest of the post pays it off. If the hook promises a lesson, the lesson has to be there; if it promises a number, explain the number.
- 06Check the length with the character counter. A hook with a blank line after it needs room to breathe.
If the draft has no number, name, time or quote in it, the problem is not the hook. Go back to the material; the prompts for days with nothing to say help find some, and the guide to writing in your own voice covers keeping the hook sounding like you.
Hook patterns to retire
Do
- Open with the specific: a figure, a time, a name, a quoted sentence.
- Promise exactly what the post delivers, and deliver it in the next two lines.
- Let the hook be slightly uncomfortable. Comfort does not get read.
Don't
- "Nobody talks about this." Everybody talks about it, and the reader knows.
- "A thread 🧵" above three posts that could have been one.
- Fake curiosity gaps: "This one change doubled my signups" followed by advice that is neither one change nor measurable.
The patterns on the right work once. Then the reader learns that your first lines over-promise, and the specific, honest hook you write next month gets skipped along with them. Reach is borrowed against trust; the hooks on the left pay it back.
BuzzyX · X growth workspace
Grow on X with posts that sound like you.
Compose in your voice, schedule the week, find posts worth replying to and read real analytics from the X API. $29/mo after the trial, everything included.
Frequently
asked questions
Something else on your mind? Get in touch.
Does the hook have to be the first line?
On X, yes, because the first line is what shows in the feed and in replies. If your strongest line is at the end of the draft, move it up and let the rest explain it.
Should I use a question as a hook?
Only a question you actually want answered and that can be answered in a line. A rhetorical question as an opener reads as a lecture about to start. A real question, with the context under it, reads as an invitation.
Is it okay to put a number in every hook?
Numbers work because they are specific, not because they are numbers. A post that starts with a figure every day becomes a pattern people tune out. Alternate with a decision, a quote or a timestamp.
How long should the hook be?
Short enough to read in one glance, usually under twelve words, and followed by a blank line so it stands alone in the preview. If the first line wraps on a phone, it is probably two lines.
What if my post has no hook and is still good?
Then it has a hook you have not found yet, or it is a post for people who already follow you. Both are fine. Not every post needs to stop strangers; the ones that do should, and the first line is where it happens.