Write Facebook Ad Copy That Actually Converts

11 min readUpdated August 2026

Facebook ad copy lives or dies in the first two lines. Before anyone reads your offer, they decide in about half a second whether to keep scrolling or pause β€” and that decision is made almost entirely by your hook, not your product.

This guide breaks down the actual anatomy of a Facebook ad, where the platform truncates your text, how to write differently for cold versus warm audiences, and which phrasing gets ads rejected. Every section ends with something you can apply to your next ad, not just theory.

The four-part anatomy of a Facebook ad

Every Facebook ad is built from four text components that behave differently. The primary text sits above the creative and does the heaviest lifting; the headline sits below the image or video in bold; the link description is a smaller line that Facebook frequently hides on mobile; and the CTA button is a preset label you choose from a short list.

Treat primary text as the hook and the case, treat the headline as a second, shorter hook that reinforces the first, and let the CTA button do the asking so your copy doesn't have to repeat it.

  • Primary text The text above the creative. This is where your hook lives, and it's the only field long enough to actually make an argument before the reader has to tap to expand it.
  • Headline A short bold line under the image or video. Treat it as a second chance at the hook β€” restate the benefit in different words rather than repeating the primary text verbatim.
  • Link description A smaller line below the headline that many placements hide entirely, especially on mobile feed. Never put anything essential here; use it for a secondary detail at most.
  • CTA button A preset label β€” Shop Now, Learn More, Sign Up β€” chosen from a fixed list, not custom text. Pick the one that matches what actually happens on the landing page, not the most exciting-sounding option.

Character limits and where the fold cuts you off

Facebook doesn't publish a hard character limit for primary text, but the visible portion before the "See more" link collapses is short β€” roughly the first 125 characters. Everything after that point is invisible until someone taps to expand it, and most people won't.

Headlines and link descriptions get truncated outright rather than collapsed, so an idea that runs long simply gets cut off mid-word. Write the complete thought inside the visible budget for each field, then treat anything past that as a bonus for the reader who taps through.

  • Primary text β€” about 125 characters visible This is your entire hook budget on feed placements. Front-load the specific benefit or the question, and put your proof points and details after the fold, not before it.
  • Headline β€” about 40 characters Enough for a short benefit statement or a number, not a sentence. Draft it separately from the primary text instead of trimming a longer line down to fit.
  • Link description β€” about 30 characters Often hidden on mobile News Feed entirely and only shown in some desktop and right-column placements. Treat anything you put here as optional reading.
  • Stories and Reels cut earlier Full-screen vertical placements show even fewer visible characters of primary text than feed does, so a hook tuned for feed can get chopped mid-sentence there β€” check the preview panel per placement.

Matching copy to audience temperature

The same product needs different copy depending on how familiar the audience already is with you. A cold audience has never heard of your product, so the copy has to earn attention and explain the offer from zero. A warm or retargeting audience has already engaged, and repeating the introduction wastes the words you have.

Writing one ad and running it against every audience is the single most common reason performance looks fine on impressions but weak on conversions: the copy is asking a stranger and a returning visitor to take the same leap with the same amount of context.

Audience stageWhat they already believeWhat the copy should do
Cold / never heard of youNothing about your product; may not even feel the problem yetOpen with the problem or the specific outcome, and explain what the product is in plain terms before asking for anything
Warm / engaged contentRecognizes your brand from a video, post, or followSkip the introduction, lead with the specific offer or benefit, and reference what makes this different from a first-touch ad
Hot / visited the product pageAlready looked at the product and left without actingAddress the likely hesitation directly β€” speed, simplicity, or fit β€” rather than repeating features they already saw
Past customersHas already used the product and knows it worksSkip persuasion entirely and lead with what's new, different, or timely enough to bring them back

If you can only write one variant, write it for the cold audience β€” that copy generalizes down to warmer audiences far better than warm-audience copy generalizes up to cold ones.

Want a first draft matched to your audience's temperature?

Generate ad copy free

No account needed β€” get copy and a matching creative in about 20 seconds.

Policy-safe phrasing that still converts

Meta's ad policies reject copy that implies it knows something personal about the reader, even when the claim is true. "Struggling with your credit score?" addresses a personal attribute directly. The fix is rephrasing around the outcome instead of the person: "A simpler way to track your credit score" makes the same pitch without the accusation.

Unverifiable superlatives are the second most common rejection trigger β€” "guaranteed results" or a specific percentage you can't substantiate will get flagged. Swap absolute claims for honestly hedged language: "designed to help" instead of "guarantees."

Before-and-after formats, fake countdown urgency, and unverifiable testimonials sit in the same risk category. None are worth the delay: a rejected ad restarts the review clock and can flag the account for extra scrutiny on future submissions.

Five hook techniques that stop the scroll

The hook is the first sentence of your primary text. It has one job β€” make the specific reader in front of you feel like this ad is unusually relevant β€” and it fails whenever it tries to also sell, explain, and persuade in the same breath.

Pick one per ad rather than stacking two or three, since combining hook types usually just produces a longer, vaguer opening line.

  • Pattern interrupt Open with a statement that contradicts the expected framing of the category, such as naming the assumption most people make and then disagreeing with it in the same line.
  • Direct question Ask the exact question the reader is already asking themselves, using their own likely phrasing rather than marketing language, so it reads like it was written for them specifically.
  • Specific number A concrete figure β€” a timeframe, a count, a measurable detail β€” reads as more credible and more scannable than a vague adjective like 'fast' or 'easy.'
  • Social proof lead Open with what other people are already doing or saying, which lowers perceived risk before you've made any claim about the product yourself.
  • Problem-first Name the specific frustration in the reader's own words before introducing the product at all, so the ad reads as recognition rather than a pitch.

The pre-publish checklist

Most weak ads fail because a rushed final pass skipped a step that would have caught the problem. Run every ad through the same short list before it goes live, regardless of how confident the draft feels.

This isn't a style guide; it's a set of concrete, yes-or-no checks. If any answer is no, fix that one thing and re-check rather than rewriting the whole ad from scratch.

Before you hit publish

  • The hook is the first sentence, not the second β€” nothing generic sits in front of it
  • The core benefit is stated before the 125-character fold, not after it
  • The headline says something different from the primary text, not a repeat of it
  • No personal-attribute phrasing β€” the copy addresses the outcome, not the reader's condition
  • Every claim is one you could defend with a public source if challenged
  • The CTA button label matches what actually happens on the landing page
  • The copy has exactly one ask β€” not a hook, a discount, and a deadline competing for attention
  • You've read it out loud once β€” anything you stumble on gets cut or rewritten

Skip the checklist β€” generate copy that's already policy-safe.

Try the free ad generator

No sign-up. No credit card. Just paste your product and go.

Formatting rules that make copy easy to skim

Facebook ad copy is read in a feed, thumb-scrolling, often with sound off. Dense paragraphs get skipped even when the writing itself is good, because the format itself signals effort required, and effort is exactly what a scrolling thumb is trying to avoid.

None of the rules below shorten copy for its own sake β€” they make the same information take less effort to absorb.

  • Short lines, not short copy Break after a complete thought rather than writing one dense block β€” a line break gives the eye a resting point even when the total word count stays the same.
  • One emoji, used as punctuation A single emoji can replace a bullet or draw the eye to the CTA line; more than one or two per ad starts to read as low-effort rather than friendly.
  • Front-load every line Put the most important word of each sentence first, since the fold and the truncation both cut from the right, never the left.
  • One CTA, stated once Decide on a single action and repeat it in the same words if you mention it twice β€” switching between 'Try it,' 'Get started,' and 'Sign up' in one ad makes the ask feel unclear.
  • Write like you'd text it Contractions, sentence fragments, and a conversational rhythm consistently outperform formal marketing phrasing in feed placements, where the surrounding content is casual by default.

Testing and iterating without starting over

Ad fatigue is real and measurable β€” the same audience seeing the same creative repeatedly clicks less over time, regardless of how good the copy was on day one. The fix isn't writing an entirely new ad from scratch each time; it's changing one variable at a time so you actually learn which change moved the number.

Keep a simple log of what changed between versions. Without it, a win or a drop a week later is just a guess about which edit caused it, and you end up re-testing the same idea by accident.

  • Swap the hook before the whole ad If a proven ad's performance is declining, rewrite only the first line first β€” the body and CTA are usually not the problem, and a full rewrite throws away a working structure.
  • Test one variable per version Change the hook technique, the CTA label, or the audience temperature β€” not all three at once β€” so a lift or a drop can be attributed to something specific.
  • Refresh on a cadence, not a panic Rotate primary text every one to two weeks for actively spent audiences rather than waiting for a visible drop, since fatigue shows up in cost trends before it shows up in obvious performance collapse.

Three before-and-after rewrites

Real rewrites across a physical product, a local service, and a digital product β€” the same principles applied to three very different offers.

Example 1

A direct-to-consumer product

Before

Introducing our new insulated water bottle. Made with premium double-wall stainless steel, it keeps drinks cold for hours and hot for hours too. Available in multiple colors. Shop the collection today and stay hydrated in style!

After

Your gym bottle is sweating through your bag by 10am. This one keeps ice for 24 hours flat β€” we tested it. Double-wall steel, leak-proof lid, six colors that don't scratch.

The before opens with the brand's announcement instead of the reader's problem, and buries the one concrete claim (24-hour cold retention) inside a list of generic features. The after leads with a specific moment and puts the number where the fold won't cut it off.

Example 2

A local service business

Before

Need a reliable plumber in your area? Our licensed and insured team has years of experience handling all your residential plumbing needs, from leaky faucets to full repipes. Call us today for fast, professional service you can trust!

After

Water heater died at 6pm on a Sunday? We answer after-hours calls β€” no emergency surcharge added at the door. Licensed, local, and at your door within the hour for most calls.

The before is a list of service categories that could describe any plumbing company in any city. The after opens with a specific scenario the reader might be in right now, then answers the two real objections β€” cost and speed β€” instead of restating that the company is 'reliable.'

Example 3

A digital product

Before

Take control of your finances with our comprehensive online budgeting course. Learn proven strategies from financial experts and build better money habits. Enroll now and start your journey to financial freedom!

After

You check your bank balance and still don't know where last month's paycheck went. This course fixes that in one weekend β€” five short lessons, one spreadsheet you'll actually keep using.

The before uses category language β€” 'comprehensive,' 'proven strategies,' 'financial freedom' β€” that reads the same across hundreds of competing courses. The after names the exact confused feeling that makes someone search for a budgeting course in the first place, then answers the real objection to any course: will I actually finish it.

Facebook ad copy questions, answered

The specifics that come up most often when writing primary text and headlines for Meta placements.

There's no enforced maximum, but only the first roughly 125 characters show before the "See more" link collapses the rest on most feed placements. Write the complete hook and core benefit inside that visible portion, then use the space after it for supporting detail the reader only sees if they tap through.
Primary text sits above the creative and is read first; the headline sits below it in bold and is read second, often after the reader has already looked at the image or video. Treat the headline as a second, shorter hook that adds new information rather than repeating the primary text word for word.
Yes, used sparingly. One emoji can function as a visual bullet point or draw attention to a CTA line, and light use tends to match the casual tone of a feed. More than one or two per ad usually reads as low-effort rather than friendly, and can make the copy feel less credible for higher-consideration offers.
Two patterns cause most rejections: copy that implies personal knowledge about the reader's attributes, health, or finances (rephrase around the outcome instead of the person), and unverifiable claims like guaranteed results or unsubstantiated statistics. Rephrasing around the outcome rather than the person, and hedging claims honestly, resolves most of these without weakening the pitch.
For audiences receiving continuous spend, rotate primary text roughly every one to two weeks, since ad fatigue shows up in rising costs before it shows up as an obvious drop in results. Smaller or slower-spending audiences can run the same copy longer β€” watch the cost trend rather than refreshing on a fixed calendar.

Ready to turn this into an ad instead of a guide?

Generate ad copy free

No account needed β€” copy and creative in about 20 seconds.

Stop staring at a blank primary-text field

Describe your product once and get on-brand ad copy β€” hook, body, and CTA β€” plus a matching creative, generated together in about 20 seconds. No account, no credit card.

Generate your ad copy free

Free to try. No sign-up required.