Social

Social Media Character Limits and How Each Platform Counts

Current character limits for X, Bluesky, Threads, Mastodon, LinkedIn, Instagram, TikTok, YouTube and SMS, and the counting rules behind “why is my post too long?”.

A character limit is only half the story. The other half is what each platform counts as a character, and that’s why a post that fits on one network fails on the next.

Limits at a glance

Platform Field Limit
X post 280 weighted (Premium: 25,000)
Bluesky post 300 graphemes
Threads post 500
Mastodon post 500 by default (set per server)
LinkedIn post / headline / About 3,000 / 220 / 2,600
Instagram caption / bio 2,200 / 150
TikTok caption 4,000 in the app (2,200 via the API)
YouTube title / description 100 / 5,000
Pinterest title / description 100 / 500
Facebook post 63,206
Reddit post title 300
SMS one message 160 GSM-7 characters or 70 Unicode

Platforms adjust limits from time to time, and some third-party sources disagree (Pinterest descriptions are sometimes listed as 800). The figures above are what we use in our counters and review regularly.

The counting rules that catch people out

X weights characters

X counts with the open-source twitter-text library. Most Latin, Greek and Cyrillic characters weigh 1. Emoji and characters from Chinese, Japanese and Korean weigh 2. Every URL counts as 23, however long or short, because it’s wrapped in a t.co link. So 140 Chinese characters fill a post.

Bluesky counts what you see

Bluesky’s 300 limit counts grapheme clusters (user-perceived characters) so a family emoji or a flag counts once.

Mastodon discounts links and remote names

Links count as 23 characters, and a mention like @[email protected] counts only the @user part.

SMS switches encoding

An SMS is sent in GSM-7 (160 characters, 153 per segment when split) unless any character falls outside that small alphabet (an emoji, a curly apostrophe, an em dash), in which case the whole message becomes Unicode: 70 characters, 67 per segment. One smart quote can double the cost of a message.

The fold matters more than the limit

Feeds truncate long posts. Roughly the first 125 characters of an Instagram caption and 210 of a LinkedIn post show before “…more”, depending on device and line breaks. Put the hook there.

Practical tips

  1. Draft once, check everywhere. A multi-platform counter avoids surprises.
  2. Split long text deliberately. A thread splitter that breaks at sentences reads better than one that cuts mid-thought.
  3. Use CamelCase hashtags (#WritingTips) so screen readers pronounce them.
  4. Avoid styled Unicode “fonts” for important words: they’re hard for screen readers and search.

Sources

  • X Developer Platform, “Counting characters”, and the twitter-text configuration on GitHub.
  • Bluesky documentation on post length (300 graphemes).
  • YouTube Help: video chapters requirements.
  • 3GPP TS 23.038, GSM 7-bit default alphabet.