Facebook Primary Text: The 125-Character Truncation Line
Meta's primary text field accepts up to 3,000 characters, but mobile feeds truncate at roughly 125 characters with a 'See more' link. Anything past that line is invisible until a user taps — and most won't. This is the spec page for writing to that line.
Use the Ad Specs Validator
Paste your copy once. See if it fits Google, Meta, LinkedIn, TikTok, and 8 more ad networks — instantly.
The actual limits. Meta's documented maximum for primary text across Feed, Reels, Stories, and Carousel placements is 3,000 characters. The truncation threshold is not officially published as a fixed number — it's a layout-driven cutoff that lands near 125 characters on mobile feed and around 200 on desktop feed. In practice, plan to 125 and you'll be safe across iOS, Android, and the in-app browser variants.
What 'character' means here. Meta counts Unicode code points, not bytes. A standard Latin letter, a space, and a punctuation mark each count as 1. A single emoji counts as 1 in Meta's counter, but it occupies roughly 2x the visual width of a letter on mobile, so two emoji at the start of your copy can shave 4–6 effective characters off your visible window. Combined emoji (skin-tone modifiers, ZWJ sequences like 👨👩👧) render as one glyph but may count as 2–5 code points depending on the build.
Truncation behavior. Meta does not reject ads that exceed 125 characters — it silently truncates the rendered preview and appends 'See more' as a tappable link. The full text is delivered in the ad payload; users just don't see it. Ads Manager will, however, warn you with a yellow notice ('Your text may be shortened') once you cross the threshold. The warning is informational, not blocking.
Why the limit exists. Mobile feed cards are designed around a fixed vertical budget: profile row, primary text, media, headline/description strip, CTA button. Meta caps text height to roughly three lines on most devices so the creative and CTA stay above the fold as the user scrolls. 125 characters is what fits in those three lines at the default font size on a 390pt-wide iPhone viewport. Larger phones get slightly more; smaller and accessibility-text users get less.
Common gotchas:
- Line breaks (
\n) count as1character but consume a full line of vertical space, so two line breaks can push your visible copy from125to~80effective characters. - Curly quotes (
“ ”) and em-dashes (—) count as1but break some third-party copy counters that assume ASCII. - RTL languages (Arabic, Hebrew) get the same code-point budget but Meta sometimes truncates earlier due to glyph width.
- Hashtags count fully —
#summersale2025is15characters of your budget. - The first character cannot be whitespace; Meta strips leading spaces before counting.
Rules for fitting copy.
- Front-load the offer or hook in the first
40characters. That's what displays even on the smallest mobile breakpoints and in notification previews. - Keep the visible window self-contained. If a sentence ends at character
130, the user sees a fragment and a 'See more' — rewrite to close the thought by122. - Avoid one long run-on. A short sentence at
60characters plus a short sentence at60reads better than a120-character compound. - Use line breaks deliberately for scannability, but count them against your budget.
- Save URLs for the headline or description fields. A URL in primary text wastes 20–30 characters that the link preview already provides.
Worked rewrite. Original at 168 characters: 'Our brand-new noise-cancelling wireless earbuds deliver up to 36 hours of battery life and ship free anywhere in the US — try them risk-free for 60 days.' Trimmed to 124: 'New noise-cancelling earbuds. 36-hour battery, free US shipping, 60-day risk-free trial.' Same offer, hook lands at character 4, full sentence closes before truncation.
Example
A meal-kit advertiser tested two versions of the same offer. Version A (142 chars) truncated at 'Get 8 free meals plus free shipping on your first…'. Version B (118 chars): 'Get 8 free meals + free shipping on box one. Cancel anytime.' CTR on B was 1.8x higher and CPA dropped 31% — same landing page, same creative, same audience.
Questions
Is the 125-character cutoff hard or does it shift by device?
Do emoji and special characters count differently than letters?
AdPlus is live — free Starter tier
One login for 12 ad networks. AI plans your campaign, validates every asset automatically, and publishes across every connected account. Start on the free Starter tier.
Get started