Facebook Ad Copywriting: The Complete Guide
Founder at Adship

Targeting decides who can see your ad. Copy decides whether any of them care. Most Facebook advertisers spend hours refining audiences and bid strategies, then write the actual words in five minutes right before hitting publish. That order is backwards. This guide covers what Meta's own documentation says about ad text, how its AI rewrites the words you submit, the hook, body, and CTA structure that holds up across niches, the mistakes that get ads flagged in review, and how to test copy instead of guessing.
What Meta Actually Enforces: Character Limits by Placement
Meta publishes recommended character counts for primary text, headline, and description on every placement, and text past the limit is not rejected, it is truncated or reflowed depending on the surface. Pulled directly from Meta's Ads Guide, the Facebook Feed image ad spec recommends primary text of 50 to 150 characters and a headline of 27 characters, noting that "text over 27 single byte characters is allowed but may be truncated." Instagram Feed runs looser: roughly 125 characters of primary text and a 40 character headline before the same truncation risk applies.
Those two placements alone show why a single piece of copy rarely works everywhere unchanged. A headline built for Instagram Feed's 40 character allowance will clip mid-word on Facebook Feed. A primary text written to fill Instagram's wider window can get an ugly mid-sentence "See more" break on placements with a tighter limit.
Reels is the tightest surface by far. Meta's own spec for Instagram Reels video ads recommends only 44 characters of primary text, calling it out as the shortest primary text limit of any placement, with text past that point liable to be cut with an ellipsis depending on the viewer's device. If a campaign runs across Feed and Reels together, the hook has to survive at 44 characters, not the 125 to 150 characters Feed placements tolerate, or Reels viewers see a sentence that stops mid-thought.
| Placement | Primary text | Headline |
|---|---|---|
| Facebook Feed (image) | 50 to 150 characters | 27 characters |
| Instagram Feed (image) | 125 characters | 40 characters |
| Instagram Reels (video) | 44 characters | Not applicable to this format |
Rather than repeat every placement's numbers here, the full sourced breakdown, covering Stories, Reels, carousel, and collection ads alongside Feed, lives on Meta ad character limits. The practical rule that holds across all of them: write your hook to land fully inside the tightest limit your placements use, then let the rest of the copy run longer for placements that show more.
How Advantage+ Creative Rewrites Your Text
Meta's Advantage+ creative includes generative AI features that touch the words you write, not just the image crop or the video pacing. According to Meta's own Business Help Center article on Advantage+ creative, three of these features act directly on text:
Text generation "allows you to create diverse text variations that could help create stronger customer resonance," and per Meta, "the feature can generate up to 5 variations of primary text and headline, and you can generate text variations using personas." This runs inside Ads Manager as an assist tool, not an automatic override, so it only changes your copy if you accept a suggestion.
Text improvements is different: it is an enhancement toggle that can act on live ads. Meta describes it as "designed to surface key information about your ad upfront and enable people to better understand your key selling points," working by taking "keywords and phrases from your original ad copy" and displaying them "directly or adjusted to fit better on or around your ad creative, such as text overlays, footers, prominent headlines and more."
Enhance media text goes further for image ads with text overlays baked into the creative itself. Meta's description: it "uses generative AI to create alternative text overlays for your image ad" by "rephrasing your original message to be more tailored and relevant to your audience," and Meta states plainly, "we'll deliver the version we think is most likely to engage and educate the person seeing your ad, whether that's your original text overlay or a variation."
The practical takeaway for copywriters: Meta can and does test alternate phrasings of your headline and overlay text against your original, and it will serve whichever version its model predicts performs better. That is not a reason to write sloppy copy and let AI fix it. It is a reason to write your original as tightly as possible, since Meta's rewrite pulls from and adjusts your actual words rather than inventing new ones from scratch. Weak source copy gives the model weak material to work with. You can review generated text overlay variations before publishing, and every one of these features can be toggled off per ad in the Enhancements section of ad setup if you need exact, unmodified copy for a compliance-sensitive campaign.
The Anatomy of Ad Copy That Converts
Every Facebook ad copy element does a different job. The hook earns the next half second of attention. The body builds a reason to care. The CTA tells the reader exactly what happens if they tap.
The Hook
You have roughly the width of one line before someone's thumb moves. Vague openers like "Are you looking for a better way to..." lose every time to something specific enough to feel like it was written for the one person reading it. Here is that difference across a range of businesses, all original examples, not lifted from any live ad:
- Local service (HVAC): "Your AC dies in July, not in a convenient month."
- Ecommerce (furniture): "This couch ships flat-packed and fits through a 30-inch doorway."
- SaaS (project management): "Your team has three different 'final' versions of the same file right now."
- B2B (accounting software): "Most small firms bill six hours a week they never invoice."
- App install (language learning): "You've restarted this app four times. Here's why this time works."
- Health and wellness: "Free 15-minute consult before you buy anything."
- Retargeting (general retail): "Still thinking it over? Your cart's saved, not the price."
- Lead generation (home renovation): "Three licensed contractors, one form, zero cold calls."
Notice none of these open with the brand name or "we." Each names a specific, recognizable moment the reader has actually lived through. That specificity is what a generic hook can't fake, and it's also exactly the kind of source material Meta's Advantage+ text generation works best rewriting variations of, per the mechanism described above.
The Body
Once the hook earns a second look, the body has to build a reason to act, not just restate the offer. Two structures cover most situations. Problem-Agitate-Solution names the problem, makes it concrete enough to sting, then positions the offer as the direct fix:
Problem: "Freelance invoicing means chasing five clients across five different payment apps." Agitate: "One late payment and rent is late too. There's no HR department covering for you." Solution: "One invoicing link handles all five, with automatic reminders before you have to ask."
Attention-Interest-Desire-Action works better for a longer story or a considered purchase:
Attention: "A cross-country move used to mean three moving trucks and one lost box." Interest: "Most movers subcontract the long-haul leg to whoever's available that week." Desire: "One crew, one truck, from your old door to your new one." Action: "Get a fixed quote in two minutes."
Whichever structure you use, benefits beat features every time a reader has to choose between reading on and scrolling past. "Automatic reminders before you have to ask" earns attention. "Automated reminder engine" does not. If you're stuck rewriting the same headline five different ways, Adship's headline analyzer scores a draft against the same benefit-first, specific-number patterns used throughout this guide, and ad copy templates has fill-in-the-blank starting points for both structures above.
The CTA
The CTA button and the CTA line inside your copy need to agree with each other and with what happens after the click. A "Learn More" button under copy that says "Buy now, 20% off today" creates a small but real mismatch that costs conversions. Here are original CTA-paired lines across another set of intents:
- Fitness app: "Track workouts in under 10 seconds. No spreadsheet required." → Start Free
- Meal kit subscription: "Dinner's decided for the next 7 nights." → See This Week's Menu
- Online course: "Learn knife skills in one Saturday afternoon." → Save My Seat
- Pet app: "Stop the 6 a.m. barking before your neighbors complain." → Try It Free
- Local accounting firm: "Your books, reconciled by Friday. Every month." → Book a Call
- Skincare brand: "Redness gone in two weeks, or your money back." → Shop the Routine
- Personal finance app: "See every subscription you forgot you're paying for." → Connect My Accounts
- Plumber (emergency service): "Burst pipe at 11 p.m.? We pick up." → Call Now
Cold traffic generally converts better on lower-friction CTAs like "Learn More" or "See Menu." Warm or retargeted audiences can handle higher-commitment CTAs like "Book a Call" or "Buy Now" because the hesitation Meta's algorithm has to overcome is smaller. For a deeper breakdown of which CTA button fits which funnel stage, with more worked examples, see call to action examples for ads. When you need copy variations fast rather than writing every version by hand, Adship's ad copy generator produces hook, body, and CTA options from a short product description.
Mistakes That Get Ads Flagged in Review
Two categories of copy mistake account for most rejections that catch advertisers off guard: implying something about the person seeing the ad, and overstating what the product does.
On the first, Meta's advertising standards on personal attributes state the principle directly: "Ads that make assumptions about people could be perceived as intrusive, unsettling or inaccurate. For this reason, we don't allow advertisers to run ads that assert or imply the personal attributes of their audience. Instead, ads should focus on the benefits of the product or service being advertised." In practice, this means a health ad can say "New diabetes treatment available" but not "Do you have diabetes?" It can say "Depression counseling" but not "Depression getting you down? Get help now." The same logic applies outside health: an ad can say "Meet seniors" but not "Meet other seniors," since the second phrasing directly labels the reader rather than describing who the service is for. The line is between describing what you offer and stating or asking something about the specific person reading it, including through second-person phrasing like "your" that references an attribute rather than the product.
On the second, Meta's policy on fraud, scams, and deceptive practices requires that ads not use "wilful misrepresentation, stolen information and exaggerated claims" to mislead people, and this is the category most copywriting mistakes actually fall under even when nobody intends a scam. An unqualified "guaranteed results," a before-and-after claim with no basis, or a countdown timer that resets for every visitor are all exaggerated or fabricated claims by this standard, not just aggressive marketing. The safer pattern is a specific, defensible claim: a real return policy instead of "guaranteed," a real enrollment deadline instead of a timer that never expires, a stated source for any before-and-after result.
Neither category requires legal review for every ad. It requires reading your own hook back and asking whether it describes the product or makes a claim about the reader or the outcome that you could not back up if asked.
Testing Your Copy Before You Scale It
Nobody, including the person who wrote it, reliably predicts which hook wins before an audience sees it. Test the highest-leverage element first: run three to five hooks against the same body, creative, and CTA, and let the hook with the strongest early click-through rate carry forward into the next round, where you vary length, then tone, then headline. A systematic creative testing framework covers how to structure that sequence with proper budget allocation so you're reading a real signal, not noise from too small a sample.
Writing Ad Copy with AI in Adship
Adship includes two different AI copy tools built around Meta's actual limits rather than arbitrary lengths. Inside the ad builder and bulk launch flow, a single-field generator writes primary text, headline, or description on demand, capped to Meta's real limits (125, 40, and 30 characters respectively), and it pulls in your saved brand kit, tone, tagline, and description, so generated copy stays on-brand without you retyping context every time.
The full AI Copywriter generates complete ad scripts rather than single fields: up to 10 variations per request, each with an angle, a hook type, and a funnel stage (top or bottom of funnel) attached, plus a plain-language note on why that particular angle should work. Six tone settings (conversational, professional, urgent, bold, emotional, humorous) and six hook styles (questions, bold claims, statistics, stories, pain points, or a mixed set) control the direction, and output is available in eight languages. Every generated field passes through a truncation safety net keyed to whichever copy length setting (short, medium, or long) you choose: short holds primary text to Meta's own 125-character recommendation, medium and long allow 350 and 800 characters for longer-form copy, and headline (40) and description (30) stay capped the same way across all three, so the model's output can't run past the length you asked for even when it overshoots the prompt. Longer primary text in medium or long mode will still collapse behind Meta's "See more" once it clears the placement's own visible limit, so pick short when the full line needs to render unclipped.
Both tools sit behind the same per-plan monthly quota as the rest of Adship's AI features, with a 100-generation daily cap on top regardless of plan, so heavy testing days don't quietly draw down a whole month's allowance in one session.
Neither tool replaces the judgment this guide covers. Both exist to produce enough raw variations, fast enough, that you can actually run the testing sequence above instead of shipping one hook and hoping.
Frequently Asked Questions
What is the difference between primary text, headline, and description in a Facebook ad?
Primary text is the main copy shown above your image or video, description is the copy Meta places below the headline, sometimes hidden depending on placement.
How long should Facebook ad copy be?
Meta recommends roughly 50 to 150 characters of primary text and a headline near 27 characters on Facebook Feed, with looser limits on Instagram Feed. Text past the recommendation is not rejected, only truncated, so the real limit to write for is whichever placement you're running that has the tightest allowance.
Does my ad copy affect my CPM or ad relevance?
Copy is one input into Meta's ad relevance signals alongside creative and landing page experience. Ads that hold attention and earn engagement tend to see better delivery costs over time, though Meta does not publish an exact weighting for copy versus other factors.
Will Meta change my ad text without asking?
Meta's Advantage+ creative can generate and test alternate versions of your headline or text overlay through features like Text improvements and Enhance media text, and it will serve whichever version it predicts performs best. You can review generated variations before publishing and turn each enhancement off per ad if you need your exact original text to run unmodified.
What kind of ad copy gets flagged in Meta's review?
The two most common categories are copy that implies a personal attribute about the viewer (health condition, financial status, and similar) rather than describing the product, and copy that makes an exaggerated or unverifiable claim about results. Both are documented in Meta's advertising standards rather than being unwritten judgment calls.
Should I write different copy for every ad placement?
At minimum, write your hook short enough to survive the tightest placement's character limit unclipped. Beyond that, letting body copy run longer on placements with more room, rather than forcing one length everywhere, generally reads better than a single compromise length used across every placement.
How many ad copy variations should I test at once?
Three to five hook variations against one otherwise-identical ad is enough to find a meaningful winner without splitting budget too thin to reach significance. Once a hook wins, move to testing length, then tone, then headline, one variable at a time.
Sources
- Meta Ads Guide, Image ad specs, Facebook Feed (facebook.com/business/ads-guide): primary text and headline recommended character counts, fetched 2026-09-07
- About Advantage+ Creative, Meta Business Help Center: Text generation, Text improvements, and Enhance media text feature descriptions, fetched 2026-09-07
- Meta Advertising Standards, Objectionable Content, Privacy Violations and Personal Attributes (transparency.meta.com): policy overview and good/bad example pairs, fetched 2026-09-07
- Meta Advertising Standards, Fraud, Scams and Deceptive Practices (transparency.meta.com): deceptive and exaggerated claims policy, fetched 2026-09-07
- Adship's
generate-ad-copyandgenerate-copyedge functions andfrontend/src/components/ai-creatives(internal source): AI Copywriter and inline generator behavior, tone/hook-style options, and character-limit enforcement, read directly from source 2026-09-07
Meet the AI Ad Operating System
Scan, spy, create, and launch Meta and TikTok ads with guarded actions taken with your approval.
Start FreeRecommended Resources
Related Articles
View allMeta Pixel Helper: Install, Read, and Fix Errors (2026)
Install the official Meta Pixel Helper, read Pixel and event statuses, fix common errors, and verify conversion tracking before campaign launch.
How to Manage Facebook and TikTok Ads Together (2026 Guide)
Running Facebook and TikTok ads from two separate dashboards costs you time and money. Here's how to manage both platforms without the chaos.
How to Block Meta Ad Enhancements in 2026
Meta keeps adding AI-powered "enhancements" to your ads, music, 3D motion, text overlays, and more. Here's how to disable them all and keep your creatives exactly as you designed them.