X character counter
Paste a draft and watch the weighted count X's own compose box uses — the one that makes a link cost 23 and an emoji cost 2.
Links cost 23 · emoji and CJK cost 2
280 left
- Words
- 0
- Sentences
- 0
- Graphemes
- 0
- UTF-8 bytes
- 0
The X character limit
A post on X is limited to 280 characters on a free account, and to 25,000 characters with an X Premium subscription.
- Every link is shortened to a t.co address and counts as exactly 23 characters, however long the real URL is — including a domain typed without https://.
- The 280 is a weighted count. X's published configuration gives Latin, Cyrillic, Greek, Hebrew and Arabic characters a weight of 1, and everything else — emoji, CJK, Hangul, Hiragana, Katakana, most symbols — a weight of 2.
- A multi-part emoji — a flag, a skin tone, a family — counts as 2 in total, not 2 per piece.
- Text is normalised (NFC) before counting, so an accented letter typed as two code points still counts as 1.
- @mentions and #hashtags count in full. Replies no longer count the handles you are replying to.
- A long post over 280 characters is collapsed in the timeline behind a “Show more”, so the first ~280 characters still do the work.
Tier differences
Free account
280 characters
The weighted 280 every unsubscribed account gets. 280 English characters fit; 280 Japanese characters are 560 on X's scale and will not.
Source ↗X Premium (Basic, Premium, Premium+)
25,000 characters
Longer posts are a Premium feature: everyone can read them, only subscribers can write them. They can be used in quotes and replies, and support bold and italics — but they cannot be scheduled.
Source ↗What happens if you go over the limit on X
In the app
Nothing is truncated and nothing is sent. The circular counter turns red and counts past zero, and the Post button is disabled until you cut the post back under the limit.
Through the API
The post is rejected outright — X returns an error for text over the weighted limit rather than trimming it. MicroPoster splits the text into a native thread instead of letting the call fail.
Character limits on every platform
The same post is a different length on every network. This is the full comparison, with the document each number comes from.
| Platform | Limit | Paid tier | How it counts | Source |
|---|---|---|---|---|
| X (Twitter) — this page | 280 | 25,000Premium | Links cost 23 · emoji and CJK cost 2 | X developer docs — Counting characters ↗ |
| Bluesky | 3003,000 bytes | — | Counts graphemes — an emoji is 1 | AT Protocol lexicon — app.bsky.feed.post ↗ |
| Threads | 500 | — | 500 characters · an emoji costs its UTF-8 bytes | Meta developer docs — Threads posts ↗ |
| Mastodon | 500default, per server | — | Links cost 23 · mentions drop the domain | Mastodon docs — Posting ↗ |
| 3,000 | — | Plain characters · the feed folds at ~210 | LinkedIn Help — Post and share updates ↗ | |
| Instagram caption | 2,200 | — | 2,200 characters · 30 hashtags · 20 @ tags | Meta developer docs — IG User Media (caption) ↗ |
| Facebook post | 63,206 | — | 63,206 characters · folds at ~477 | Meta developer docs — Pages API Posts (no limit published) ↗ |
| TikTok caption | 2,200 | — | 2,200 UTF-16 units — an emoji costs 2 | TikTok for Developers — Content Posting API ↗ |
Last verified: September 8, 2026 · X developer docs — Counting characters ↗
Writing this for more than one platform? MicroPoster cross-posts from X to Threads, Bluesky and Mastodon, and handles each platform's limit automatically.
7-day free trial · No credit card
X questions
What is the character limit on X?
280 characters on a free account. An X Premium subscription raises it to 25,000 characters for a long post. The 280 is a weighted count, so 280 English letters fit but 280 Japanese characters do not.
Do links count towards the 280 characters?
Yes, but at a fixed price. Every link is rewritten as a t.co address and counts as exactly 23 characters, however long the original URL is. A 200-character tracking link and a 12-character short link cost the same, and typing a bare domain such as microposter.so still costs 23.
Why does my Japanese or emoji post go over at 140 characters?
X weighs characters rather than counting them. Its published configuration gives Latin, Cyrillic, Greek, Hebrew and Arabic characters a weight of 1 and everything else — CJK, Hangul, Hiragana, Katakana, emoji, most symbols — a weight of 2. 140 Japanese characters are already the full 280.
Does a reply have fewer characters than a post?
No. Replies get the same 280, and the handles you are replying to are no longer deducted from it. Quotes get the full budget too, and the quoted post costs nothing.
Counters for the platforms next to this one
Or start from the character counter hub, which counts your draft against all eight platforms at once.