X (Twitter) Character Limit: The Exact Number and What Counts Toward It
280 characters sounds like a simple number, right up until a link, an emoji, or an @ mention makes the actual count feel like it doesn't add up.
The standard character limit for a post on X (formerly Twitter) is 280 characters for most accounts. That number itself is simple. What trips people up is what actually counts toward it — links, mentions, and certain characters behave differently than a plain character count would suggest.
The Limits, by Account Type
| Account type | Character limit |
|---|---|
| Standard (free) account | 280 characters |
| X Premium subscribers | Up to 25,000 characters (displayed with a "Show more" truncation in-feed) |
| Direct messages | 10,000 characters |
The Premium tier's much higher limit is intended for longer-form posts, but the in-feed display still truncates and shows a "Show more" link past a certain length — meaning even with the higher technical limit, the practical, immediately visible portion of a post is still much closer to the original 280-character range for most casual scrolling.
What Actually Counts Toward the 280
Standard text characters count exactly as expected — each letter, number, space, and punctuation mark is one character.
Links (URLs) are counted at a fixed length regardless of their actual length. Any link included in a post — no matter how long the actual URL is — counts as a fixed number of characters (historically 23), because X automatically shortens all links through its own URL wrapper. A link that's genuinely 80 characters long and one that's 20 characters long both consume the same fixed portion of the 280-character limit.
@ mentions count as their full displayed length — the "@" symbol plus the username, character for character, the same as any other text.
Hashtags count as their full displayed length as well — the "#" symbol plus the tag text, with no special shortening applied.
Emoji generally count as 2 characters each in X's counting system, due to how emoji are encoded at the technical level (most emoji require two UTF-16 code units), rather than the single character they visually appear to be.
The link-shortening behavior is the detail most likely to throw off a manual character count — a post can look like it's over 280 characters by a plain text count, but still fit comfortably within the limit once the actual, fixed link-character cost is factored in, since the visible URL text isn't what actually gets counted.
A Practical Example
A post containing 250 characters of regular text plus one link might look like it totals well over 280 characters if the link itself is long — say, a 90-character URL. But because X counts any link at its fixed shortened length rather than its actual displayed length, the real total is 250 plus the fixed link cost, not 250 plus 90 — comfortably within the limit despite how it might look at a glance.
Why This Differs From Other Platforms' Character Limits
This link-shortening behavior is specific to X and doesn't apply the same way to other platforms with their own character limits — character limits by platform covers the broader landscape of how different platforms handle length restrictions, and X's fixed-cost link counting is one of the more distinctive, easy-to-miss quirks among them.
Checking a Draft Before Posting
Since the exact character math involves several non-obvious rules — link shortening, emoji encoding, mention length — the most reliable way to confirm a draft fits before posting isn't estimating by eye, but checking the actual character count directly. A character counter gives an exact count for the plain text portion of a draft; for posts including links, manually accounting for the fixed link-character cost on top of that count (rather than the link's visible length) gives the accurate total against the 280-character limit.
280 characters is a simple number until links, mentions, and emoji enter the count — each following its own specific rule rather than a straightforward character-by-character tally. Understanding these rules, particularly the fixed cost applied to any link regardless of its actual length, is the difference between a post that mysteriously seems to not fit and one that predictably does.
For questions or inquiries contact us at info@cleartexteditor.com