Primary Text Character Limits by Network (2026)
Primary text is the body copy above or beside your creative on social feeds. Each network truncates at a different visible character count, and the hard limit is almost never what matters — the truncation point is. This page documents both.
Use the Ad Specs Validator
Paste your copy once. See if it fits Google, Meta, LinkedIn, TikTok, and 8 more ad networks — instantly.
Visible limits vs. hard limits. Every network publishes a hard character limit (the point at which the ad manager rejects your copy) and an unpublished *visible* limit (the point where the platform inserts a 'See more' link or clips the line). The hard limit is a technical ceiling. The visible limit is what actually controls whether your hook gets read. They are rarely the same number.
Network-by-network reference:
- Meta (Facebook + Instagram) Feed primary text:
125characters visible on mobile before 'See more'; hard limit3,000. Stories, Reels, and Carousel inherit the same 125-character mobile truncation. - TikTok In-Feed Ad caption:
100hard limit on paid In-Feed creative; roughly50characters visible before the caption clips behind the right-rail UI. - TikTok Spark Ads: inherits the organic post limit of
2,200characters, but feed truncation still hits at ~50visible. - LinkedIn Sponsored Content intro text:
600hard limit;~150visible on desktop before 'See more', and closer to~100on mobile depending on viewport. - LinkedIn Message Ads body:
1,500characters, no truncation (rendered in full inside the inbox UI). - X (Twitter) Promoted Posts:
280characters total for standard accounts. X Premium accounts can post up to25,000, but Promoted Post placement still favors the 280-character render. - Reddit Promoted Post body (text):
40,000characters for text posts; link posts use only title (300). - Pinterest Promoted Pin description:
500hard limit,~50–75visible depending on placement.
Why these numbers exist. The 125-character Meta limit isn't arbitrary — it's the line count that fits above the 'See more' fold on a 375px-wide iPhone viewport (the most common mobile screen Meta optimizes for). TikTok's ~50-char visible window exists because the right-rail UI (profile, like, comment, share, sound) eats roughly 60px of horizontal space, leaving very little caption real estate. LinkedIn's 150-char desktop visible reflects the original 2017 feed redesign and hasn't moved since.
What happens when you exceed the limit:
- Hard limit exceeded: ad rejected at upload, error returned in the editor. No silent fail.
- Visible limit exceeded: copy truncates mid-sentence with an ellipsis or 'See more' link. The ad still serves; the hook just gets cut.
- Special characters: emoji count as
2-4bytes each but typically register as1-2characters in Meta's counter. Test before assuming. - RTL languages (Arabic, Hebrew): same character limits apply, but the truncation point can render differently because of bidirectional text wrapping. Always preview in the actual feed.
- Line breaks: each
\ncounts as one character on Meta and LinkedIn. Three line breaks in a row = three characters of your budget gone for whitespace.
Rules for fitting copy inside the visible window:
- Front-load the offer or hook in the first
40–50characters. That's the floor across every network. - Treat anything past the truncation point as *qualifier copy* — proof, specs, disclaimers — not the sales pitch.
- Don't end the visible portion mid-clause. If 'See more' has to appear, make it appear after a natural pause, not 'free shipping on orders over...'.
- Avoid front-loading brand name. 'Nike — running shoes built for...' wastes 7 characters on a logo that's already visible in the ad.
- Numerals beat words. '50% off' is 7 characters; 'fifty percent off' is 17.
Example
Original headline (60 chars): Discover our new running shoes designed for marathon training
Trimmed for a 30-char field: Marathon-ready running shoes (28 chars) — keyword front-loaded, brand context dropped, intent preserved.
For a 125-char Meta primary: Marathon-ready running shoes — tested at 26.2 miles. Free returns, ships in 24 hours, sizes 6–14 in stock now. (113 chars, fits with margin.)
Questions
Do emoji and special characters count differently against the limit?
Does longer primary text hurt ad performance on Meta?
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