logo
Schedulin

Caption character limits by network

Every social network sets its own ceiling on how long a post caption can be. Schedulin checks the right limit for the network you've selected and blocks the post at validation time if you go over — that way you find out in the composer rather than at publish time.

Quick reference

NetworkCaption capNotes
Bluesky300 graphemesEmoji and complex scripts each count as one grapheme, not one character
Threads500 charactersHard cap on the network
LinkedIn3,000 charactersApplies to the post body; first comments are shorter on LinkedIn's side
Instagram2,200 charactersFeed posts and Reels
TikTok2,200 charactersPlus a separate 5-hashtag cap (see below)
Pinterest800 charactersPin description; truncated in-feed around 500
Facebook5,000 charactersPage posts and Reels
YouTube5,000 charactersUsed as the video description; titles are capped at 100
X / Twitter25,000 charactersStandard accounts are still limited to 280 by X; Schedulin allows up to 25,000 so Premium users aren't blocked here

Network-specific notes

Bluesky uses graphemes, not characters

Bluesky measures post length in graphemes, which is closer to "what a person sees as one character." A flag emoji or a multi-codepoint script cluster counts as one grapheme. Schedulin uses the platform's grapheme segmenter, so the count you see in the composer matches what Bluesky enforces.

TikTok hashtags are capped separately

On top of the 2,200-character body cap, TikTok will not accept more than 5 hashtags in a single caption. Schedulin counts hashtags before submit and blocks the post if you've added a sixth, regardless of how long your caption is.

YouTube splits into title and description

YouTube is the one network where the post caption isn't a single field. The composer splits it into:

  • Title — required, up to 100 characters, and the symbols < and > are not allowed
  • Description — up to 5,000 characters, taken from the main caption field

If you typically write longer captions, treat the title as the headline and let the rest flow into the description.

Instagram Stories

Stories accept an empty caption; Schedulin doesn't require one for the Stories placement. Captions on stories aren't shown the same way feed captions are.

X / Twitter and Premium

X publishes any caption up to 280 characters for free accounts. Premium and Premium+ accounts can post up to 25,000. Because Schedulin doesn't know your account tier at compose time, we accept up to 25,000 and let X enforce the 280 cap on its end for free accounts. Threads on X follow the same rule per segment.

What happens when you go over

Schedulin runs validation when you click Schedule, Queue, or Save Draft. If a caption exceeds its network's cap you'll see an inline error pointing at the caption field with the limit and your current length. Fix the caption (or trim hashtags for TikTok) and submit again.

If you're publishing the same caption to several networks at once, the strictest cap wins for that post — for example, a 600-character caption is fine for LinkedIn or Instagram but will fail Bluesky and Threads. Either trim the shared caption to fit the smallest network you're targeting or split the post into per-network composers.

Related articles