On this page
Threads allows 500 characters, Instagram and TikTok 2,200, YouTube a 100-character title and a 5,000-byte description, and Snapchat Spotlight 160. The numbers are the easy part. What causes failed posts is how they are counted — Threads counts emoji by their bytes, YouTube counts its whole description in bytes — and the fact that Threads rejects a long post instead of cutting it.
The limits, from each platform's API documentation
Platform | Field | Limit | Counted as |
|---|---|---|---|
Threads | Post text | 500 | Characters; emoji by their UTF-8 bytes |
Caption | 2,200; 30 hashtags; 20 @ tags | Characters | |
TikTok | Caption | 2,200 | UTF-16 units (most emoji = 2) |
YouTube | Title | 100 | Characters |
YouTube | Description | 5,000 | Bytes |
YouTube | Tags (metadata) | 500 in total | Characters, commas and quotes included |
Snapchat Spotlight | Description | 160, hashtags included | Characters |
Post text | Not stated in the Posts API | — | |
Facebook Reels | Description | Not stated in the Reels API | — |
Pinterest's API reference doesn't state its limits either; the figures in circulation (100 characters for a title, 500 for a description) come from secondary sources, and we use them as a working limit rather than as a confirmed rule.
Threads: the limit that fails the post
Most platforms cut or hide a long caption behind "more". Threads doesn't: a text over 500 characters is refused by the API, so a scheduled post that was written for Instagram and sent to Threads unchanged simply doesn't go out. Three more Threads rules sit next to the length:
Emoji count by bytes. Meta's documentation says emoji are "counted as the number of UTF-8 bytes", so one emoji can use four of your 500.
At most five links per post; since December 22, 2025, posts with more fail.
One topic tag per post. If the text has several, Threads uses the first valid one.
Threads also limits a profile to 250 API-published posts in a rolling 24 hours, which only matters for automated accounts.
YouTube: 5,000 bytes is not 5,000 characters
YouTube's API documentation measures the description as "a maximum length of 5000 bytes". In UTF-8, English letters and digits take one byte, accented letters such as é, ü or ő take two, and most emoji take four. A description that looks like 4,000 characters can be over the limit in Hungarian, Polish or German, or with a few lines of emoji.
Text | Characters | UTF-8 bytes |
|---|---|---|
schedule | 8 | 8 |
ütemezés | 8 | 10 |
🎬🔥 | 2 | 8 |
The title, by contrast, is 100 characters, and both fields reject the characters < and >.
Instagram and TikTok: long limits, short attention
Both accept 2,200, but they count differently. Instagram counts characters. TikTok counts UTF-16 units, where a typical emoji takes two. Neither limit is a problem for a normal caption; the practical limit is how much shows before "more" — usually the first line or two. Put the hook first and the hashtags at the end. Instagram also caps hashtags at 30 and @ mentions at 20 per caption; see hashtag limits by platform.
One text, several networks
Writing a single caption and sending it everywhere runs into these limits from both ends: too long for Threads and Snapchat, too short to be useful as a YouTube description. Two habits help:
Write a long and a short version. A full description for YouTube and LinkedIn, and a one-line caption with a hook for Threads, Reels and TikTok.
Keep hashtags in a block at the end. If a text has to be shortened, it can then be cut before the hashtags instead of through them.
Uplonic does the shortening at publishing time, per network: it trims the text to the network's limit while keeping the hashtag block at the end, counts YouTube's description in bytes, and caps hashtags per network. You see each network's final text before you publish. To try it without an account, paste a caption into the caption preview tool, which runs the same formatting on our server.
The video files have their own limits — length, size and format per network are in our social media video specs overview.
Sources & methodology
How we got these numbers: every limit is from the platform's own API documentation, re-checked on October 17, 2026. Where a platform's publishing API doesn't state a limit (LinkedIn, Facebook Reels, Pinterest), the table says so. The byte counts in the YouTube example are UTF-8 encodings.
Threads API — Posts — Meta for Developers, accessed October 2026
Threads API — Overview (rate limits) — Meta for Developers, accessed October 2026
IG User Media — Meta for Developers, accessed October 2026
Content Posting API — Direct Post — TikTok for Developers, accessed October 2026
Videos resource — YouTube Data API, accessed October 2026
Posts API — LinkedIn (Microsoft Learn), accessed October 2026
Public Profile API — Post Spotlight — Snap for Developers, accessed October 2026




