Ad specs / X
X ad specs and character limits
X ad character limits, image sizes and hard floors. Every figure quoted from X's own documentation with the date it was read, 2026-08-10.
read 2026-08-10 Source: https://business.x.com/en/help/campaign-setup/creative-ad-specifications
Character limits and sizes
| Placement | Headline | Body text | Max file |
|---|---|---|---|
| Timeline: promoted post with image 1:1 1200 x 1200 | 70 | 257 to stay visible · 280 hard cap | 5 MB |
| Timeline: promoted post with video 1:1 1200 x 1200 | 70 | 257 to stay visible · 280 hard cap | 1024 MB |
| Timeline: promoted text post | not stated | 257 to stay visible · 280 hard cap | — |
Where two numbers are given, the first is what stays visible and the second is what the field accepts. They're different questions. Copy over the cap gets rejected at upload. Copy over the visible limit runs, and gets cut off. Most guides publish only one of the two.
Timeline: promoted post with image — Headline
The website card title. X: "70 characters... Up to two lines of text are rendered on the card title; any text beyond that is truncated with an ellipsis. Although not guaranteed, limiting the description to 50 characters should ensure that truncation won't occur across most devices." X's own wording conflates title and description in that sentence, so treat 50 as the safe target and 70 as the cap rather than reading a separate description limit into it.
Timeline: promoted post with image — Body text
X: "280 characters. (Note: each link used reduces character count by 23 characters, electing 257 characters for X copy.)" 257 is the working budget for any ad with a destination, which is all of them here.
Timeline: promoted post with video — Headline
X: media headline "Max 70 characters."
A link costs you 23 characters
X's post copy budget is not 280 characters for an ad that links anywhere. X: "each link used reduces character count by 23 characters, electing 257 characters for X copy." Every ad this app generates has a destination, so 257 is the real budget and a variant written to 280 will not fit. Beyond that, X advises 3-5 creative options in rotation rather than a tightly controlled one-axis matrix, which is a different testing philosophy from Meta's — with no minimum campaign spend, the cheap move is more creative variety rather than more precisely isolated variables.
- Which call-to-action buttons this platform offers.
- Which ad categories are restricted here, and what declaring one does to your targeting.
- How this platform tracks conversions, and its default attribution window.
Listed rather than omitted. A spec sheet with no gaps is either complete or hiding something, and from the outside those look identical.
Count these before you paste
AdPlaybook holds this spec as dated data and checks a finished campaign against it — character counts, audience floors, forbidden exclusions — before you paste anything into X Ads Manager. It is arithmetic, not a judgement call, so it runs on every campaign and costs nothing.