X (Twitter) Character Counter
Paste a post and get the number X will actually use. Links count as 23 whatever their length, emoji count as 2 however many code points they are built from, and Japanese, Chinese, Korean and Thai count double. Free, no account, and nothing you type is saved or sent anywhere.
Paste it or type it. Nothing you enter is stored or sent anywhere.
The limit on a standard account. X rejects anything longer outright rather than truncating it.
Links weigh 23
Every link is wrapped by t.co before it publishes, so the wrapped form is what counts. Length past that is free.
Emoji weigh 2
Including compound ones. A family emoji is eleven code units and still counts as two, which is what trips up most counters.
Japanese weighs double
CJK, Hangul and Thai characters count as 2 each. A 140-character Japanese post is already at the limit.
Private by default
Nothing you type is saved or sent anywhere. That matters when you are pasting a draft that has not gone out yet.
Why your count and X’s count disagree
X does not count characters. It counts weight, and it publishes the configuration it uses, which is why a post can be rejected at what a text editor swears is 260 characters. Three rules cause almost every disagreement.
The first is links. Every link you post is rewritten through t.co before it goes out, and the wrapped form is what counts: a flat 23 characters, whatever the original was. A bare domain and a URL carrying four tracking parameters weigh the same. This cuts both ways. A counter measuring literal length will tell you a long link has eaten your whole post when it has not, and it will let a post with four short links through when X would reject it.
The second is emoji. An emoji weighs 2 no matter how it is built, and many are built from several code points joined together. A family emoji is four people and three joiners, eleven code units in total, and X counts the whole cluster as 2. Counters that iterate over code points report eleven, which is the version of this bug people actually notice, because the number leaps when they type one character.
The third is script. X gives the Latin, Cyrillic, Greek, Hebrew and Arabic ranges a weight of 1 and everything else a weight of 2. In practice that means Japanese, Chinese, Korean and Thai cost double, so those languages are working with 140 characters rather than 280 while a Russian or Arabic post gets the full 280.
The 280 limit, and the one that replaced it for some people
Two hundred and eighty is the limit on a standard account, and it is enforced rather than advisory: X rejects an over-length post outright instead of truncating it, which is why an automation that does not check first fails rather than publishing something clipped.
X Premium raises the ceiling to 25,000 characters for long posts. It is worth being clear about what that buys you, because it is less than it sounds. Everyone scrolling past still sees roughly the first 280 characters with a Show more link underneath, so the opening still has to earn the click on its own. A long post is a page someone has to choose to open, and it competes with everything else in the feed on the strength of its first two lines.
Which is the practical case for threads over long posts, and why the counter links to the thread splitter when you go over. A thread gives every part its own impression in the feed. A long post gives the whole thing one.
Direct messages are a separate limit at 10,000 characters, and it applies on every tier including free accounts.
What does not cost you anything
Media is free. Images, video, GIFs, polls and quoted posts are attachments rather than text, so none of them take a single character from your 280. Neither does the link preview card that appears under a post: that is generated from the page you linked to, and only the link itself is counted.
The mentions X puts at the top of a reply are also free. When you reply into a conversation with five people in it, those handles sit outside the post body and do not count against you. Any handle you type yourself inside the post does count, in full, including the @.
Trailing whitespace and line breaks do count, one each, which occasionally explains a post that is over by exactly the number of blank lines you left at the bottom.
Counting is the easy part.
The hard part is having something to count in the first place, every week, on every platform, without running out of ideas by Thursday. bbuddy reads your brand, drafts posts built for X rather than broadcast across eight platforms at once, and either queues them for your approval or publishes them itself.
It runs this same weighted count before anything goes out, so a post never fails on length.
Frequently asked questions
How many characters is a tweet in 2026?
Two hundred and eighty on a standard account, and that has not changed since 2017. X Premium raises it to 25,000 for long posts, but everyone scrolling still sees the first 280 with a "Show more" link underneath, so the opening has to stand on its own either way. Direct messages sit at 10,000 on every tier.
Why does X say my post is too long when my counter says it fits?
Almost always a link or an emoji. X rewrites every link through its t.co wrapper before publishing and counts the wrapped form, which is a flat 23 characters no matter how long the original was, so a short link can count for more than it looks. In the other direction, an emoji counts as 2 and characters in Japanese, Chinese, Korean and Thai count as 2 each, so a post that looks short can be at the limit. This counter applies all three rules.
How many characters does a link use on X?
Twenty-three, always. X passes every link through t.co, and the wrapped form is what counts against the limit, so a five-character domain and a two-kilobyte URL with tracking parameters weigh exactly the same. There is no benefit to shortening a link before you post it, and adding UTM parameters costs you nothing.
Do hashtags and @mentions count toward the character limit?
Yes, both count in full, including the # and the @. The one exception is the mentions X adds automatically at the top of a reply, which sit outside the post body and do not count. Anything you type yourself does.
How many characters does an emoji use on X?
Two, whatever the emoji is. That holds for compound ones too: a family emoji is four people joined by zero-width joiners and eleven code units in total, and it still counts as 2. Counters that measure code points report eleven for it, which is why the number seems to jump when you type one.
Does attaching an image or a video use characters?
No. Media, polls, quoted posts and the link preview card are all attached rather than written into the post, so none of them consume any of your 280.
Is this character counter free, and does it store what I type?
It is free with no account, no email address and no limit on use. Nothing you type is stored or sent anywhere: the whole thing runs in your browser, which matters because most people paste a draft that has not been published yet.
Free counter now, a channel that runs itself next..
Counting characters takes a second. Filling the feed every week is the part that takes your Thursday.
Cancel any time · Secure checkout · 5-minute setup