Twitter character counter
A plain letter count disagrees with X. Links always cost 23, every emoji costs 2, and characters outside X's common-script ranges cost 2. This counter applies X's own published weighting rules live, so the count here tracks the one the post button uses.
- 0 characters typed
- 0 links · 23 each
- 0 emoji · 2 each
- 0 other 2-weight characters
How X actually counts to 280
X does not count letters, it counts weights. Characters in the ranges X's rules list as weight 1 cover most common scripts: Latin, Greek, Cyrillic, Hebrew, Arabic, and more, plus digits, punctuation, and everyday symbols. Emoji weigh 2 each, however many codepoints they are built from, and so does everything outside those listed ranges, CJK included. And every URL is wrapped by the t.co shortener and always costs exactly 23, whether the original link is 25 characters or 250. All of this is documented in X's own developer reference on counting characters, and it is why a generic word-processor count disagrees with the post button.
Two practical consequences. First, emoji-heavy posts run out of room much faster than they look: 10 emoji spend 20 of your 280. Second, long links cost you nothing extra, so there is no reason to hand-shorten a URL before posting.
The X character limits, in one table
| Field | Limit | Notes |
|---|---|---|
| Post | 280 | Weighted characters on a free account. Reply text counts the same way. |
| Post (X Premium) | 25,000 | Premium subscribers can write long posts. The feed collapses them behind "Show more". |
| Any URL | 23 | Every link is wrapped by the t.co shortener and always counts as 23, no matter its real length. |
| Any emoji | 2 | Every emoji counts as 2, even multi-part ones like family or skin-tone emoji. |
| Direct message | 10,000 | DMs have their own, much higher cap. |
| Bio | 160 | Profile bio field. |
| Display name | 50 | The name shown above your handle. |
| Username | 15 | The @handle itself. |
Post, URL, and emoji figures are from X's developer documentation on counting characters. Profile field limits are X's long-standing documented values. Verified August 2026. Checking a caption against the other 8 platforms too? Use our all-platform character counter and post preview.
Don't cut it, thread it
The 280 limit is the classic way an automated X post fails: a model drafts something great at 340 characters, the platform refuses it, and the workflow discovers this after the fact. The lazy fix is truncation, which ships a post with its ending cut off.
Threading is usually the better instruction, and through Blotato it is one call rather than a chain of replies to manage: the first post goes in content.text and the rest in content.additionalPosts, an array of follow-up posts that Blotato chains for you, no tweet IDs to capture. The same field works for Threads and Bluesky. Tell the agent: count with X's weights first, and when a draft will not fit, split it at sentence boundaries into a thread instead of cutting it, the way the preview above does.
Twitter character counter questions
01 How many characters can I post on Twitter (X)?
02 Do links count toward the 280 characters?
03 Why does X say my post is too long when I counted 280?
04 Do emoji really count as 2 characters on X?
05 What happens if my post is over the limit?
06 How do I post something longer than 280 characters?
07 Is this the same as an Instagram character counter?
08 How does an automation avoid the 280 limit?
-
AI Watermark Remover
Clean supported hidden marks before your agent posts the asset.
Open tool -
YouTube to Markdown Converter
Drop in a video link, get clean AI-ready context for your agent.
Open tool -
Character Counter & Post Preview
Count your caption against Instagram and 8 more platforms.
Open tool -
LinkedIn Text Formatter
Bold and italic that paste clean, plus a see-more fold preview.
Open tool -
Instagram Line Break Generator
Stop Instagram from collapsing your caption spacing.
Open tool -
Hashtag Generator
Type a keyword, get 25 to 30 relevant hashtags.
Open tool -
Instagram Caption Generator
Turn one idea into 3 ready-to-post captions.
Open tool -
Instagram Font Generator
25 copy-paste font styles, no broken boxes.
Open tool -
Social Media API Cost Calculator
What posting via the official APIs actually costs per month.
Open tool -
Instagram Bio Generator
Six bio structures that fit the 150-character limit.
Open tool -
Aesthetic Username Generator
Type a word, pick a vibe, get styled handle ideas.
Open tool -
TikTok Username Ideas
Niche-based handle ideas you can actually register.
Open tool -
Social Media Posting Limits
Daily posting caps per platform, and the stricter one a tool enforces.
Open tool -
Best Time to Post
The best days and hours to post, by platform.
Open tool -
Free Claude Skills
7 skills that take Claude from blank page to scheduled post.
Open tool