Tweet Character Counter
Count characters and see how your post fits on Twitter/X, Bluesky, Mastodon, Threads, and LinkedIn. URLs and emoji are weighted correctly. Runs in your browser.
Use this free tweet character counter to check the same post against every major social platform at once — Twitter/X, Bluesky, Mastodon, Threads, LinkedIn, Instagram, and Facebook. URLs are weighted the way each platform actually weighs them, and emoji and flags are counted as one grapheme.
How to use it
No account, no upload — it all happens on your device.
2026 character limits, at a glance
The full reference table for cross-posting.
| Platform | Limit | Counting rule |
|---|---|---|
| Twitter / X (free) | 280 | Graphemes; URLs weight 23 each |
| Twitter / X (Premium) | 25,000 | Same rule, higher cap |
| Bluesky | 300 | Graphemes |
| Mastodon (default) | 500 | Graphemes; some instances raise it |
| Threads | 500 | Graphemes |
| LinkedIn post | 3,000 | UTF-16 code units |
| LinkedIn headline | 220 | UTF-16 code units |
| Instagram caption | 2,200 | UTF-16 code units; truncates at 125 |
| Facebook post | 63,206 | UTF-16 code units; collapses at ~477 |
| YouTube description | 5,000 | UTF-16 code units |
Why posts that fit on Twitter sometimes break on other platforms
Twitter is unusual in two ways: it caps short (280) and it short- circuits long URLs to 23 characters. A post that fills Twitter to the brim may have plenty of room on Bluesky and Mastodon — but a post that uses a long URL might fit on Twitter (23 chars) and bust another platform (200 chars). Always check the platform you are actually posting to.
Emoji is the other landmine. The US flag 🇺🇸 is two code points, the family emoji 👨👩👧 is five with two zero-width joiners. Modern platforms count graphemes (one each), but a few legacy systems count code units and reject what looked fine in your composer.
Tips for cross-posting
- Write to the tightest platform first. Drafting for Twitter (280) and Bluesky (300) forces a clearer point; everything else fits easily.
- Keep one canonical URL at the end of the post. It lands in the preview card on most platforms and only costs 23 chars on Twitter.
- If you cross-post to LinkedIn, expand the first line — LinkedIn shows ~210 characters before the truncation. Hook fast.
- Instagram only shows the first 125 characters before the More tap. Front-load the value.
Privacy
Your draft never leaves your browser. The counter is plain JavaScript using the browser's built-in Intl.Segmenter for grapheme-accurate counting and TextEncoder for UTF-8 byte size. Nothing is uploaded, nothing is logged.