Ad specs / TikTok

TikTok ad specs and character limits

TikTok ad character limits, image sizes and hard floors. Every figure quoted from TikTok's own documentation with the date it was read, 2026-08-10.

Character limits and sizes

PlacementHeadlineBody textMax file
For You feed: in-feed video (non-Spark)
9:16 540 x 960 or larger
not statednot stated500 MB
For You feed: Spark Ad (boosted organic post)
not statednot stated

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.

The 1,000 matched-user floor
  • custom audience minimum: 1000 — TikTok: "There is a requirement to have 1,000 total matched users in a Custom Audience to use it in an ad group." This is a floor on the audience itself, not on the ad group — a customer list that matches fewer than 1,000 users cannot be used at all, so a small business's list will often not qualify. Say so rather than recommending it.

These are the numbers that decide whether a campaign delivers at all, and none of them produces an error message when you cross it.

For You feed: in-feed video (non-Spark) — Body text

TikTok's own in-feed specification page states no character count for ad text — it was checked and the number is not there. So none is asserted. Write the caption short because it sits over video and truncates behind a 'See more', but do not treat any specific number as TikTok's published limit. TikTok does state the caption is "Displayed in white with a uniform font that can't be customized" and "Does not support any clickable links, symbols (@), or hashtags".

For You feed: Spark Ad (boosted organic post) — Body text

TikTok: ad captions are "Extracted directly from the organic video captions. A maximum of 4 lines can be displayed". You do not write this copy at ad level — it comes from the post. Four lines is not a character count and is not enforced here.

Why an ad group here refuses to spend

TikTok punishes anything that looks like an ad, so the usual variant grid — same footage, four headlines — tests the wrong axis. The thing that moves performance here is whether the creative reads as a native post, and that is a property of the whole video rather than of a line of copy. Test creative concepts against each other, not captions. Also: ad captions cannot contain clickable links, @ symbols or hashtags, so any copy that leans on one will be rejected or read as broken. And Spark Ads run against a real organic post, which means the comment thread is public and permanent — the same exposure Reddit has.

What we could not verify
  • 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.

Check a campaign against this spec

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 TikTok Ads Manager. It is arithmetic, not a judgement call, so it runs on every campaign and costs nothing.

Get AdPlaybook All eight platforms