How to use it
- Type or paste your text into the box, or drop a
.txt,.mdor.srtfile onto it. - Read the basic counts at the top — two word counts, characters with and without spaces, sentences, paragraphs and reading time.
- Look at Where is it going? for the count your destination will actually apply.
- Check the report at the bottom for characters you cannot see.
There is no single answer to “how many characters”
A character count feels like it should be a fact, the way the number of pages in a book is a fact. It is not. It is the answer to a question, and different systems are asking different questions: one wants to know how much storage this takes, another how much room it needs on a screen, a third how much it costs to send. Those are three different numbers for the same sentence, and the only one that matters is the one belonging to whatever is about to reject your text.
This is the same problem as an upload form that refuses a file which is exactly the size it says it allows — a mismatch between the number you were shown and the number being checked. We wrote that one up in why a 500 KB file fails a 500 KB limit. Text has the same flaw and hides it better, because nobody expects counting words to be contentious.
Why two word counts
Word counters disagree, and they disagree in a boring, specific place: hyphens and symbols. Google Docs generally treats well-being as one word, because there is no space in it. Other tools split it into two. The same argument applies to slash-joined terms, to strings with digits in them, and to anything separated by a symbol rather than a space.
For most writing the gap is under one percent and nobody notices. It starts to matter at exactly the moment you cannot afford it: a 2,000 word cap on an assignment, a journal's submission limit, a tender with a stated maximum. Hyphen-heavy academic and medical writing is where the gap is widest, which is also where the limits tend to be enforced most strictly.
Rather than pick one rule and present it as the truth, this page shows both and names the rule behind each. When they differ it tells you by how much. Which rule your destination uses is usually undocumented, so the honest answer is to know your exposure and leave yourself margin.
What X actually counts
X, still widely searched for as Twitter, does not count characters. It counts weight, against a maximum weighted length of 280. Its published rules give Latin letters, punctuation and common symbols a weight of one, and give emoji, CJK characters and most other Unicode a weight of two. A post in Chinese hits the limit at around 140 visible characters. A line of emoji hits it at 140 too.
The part that surprises people is links. Every URL is wrapped by the t.co shortener and counts as 23 characters regardless of its real length. A three-character link and a two-hundred-character link with tracking parameters cost exactly the same. That cuts both ways: there is no point shortening a URL before posting, and there is also no hiding a link's cost by making it look small.
X also normalises text to Unicode Normalization Form C before counting. An accented letter can be stored either as a single character or as a plain letter followed by a combining mark; normalisation collapses the second form into the first, so text pasted out of certain editors counts differently there than it does in a naive counter. The X row on this page applies all three rules.
URL detection here is approximate. X runs its own parser over your post to decide what is a link. This page uses a simpler pattern, which is enough to show you the 23-character cost but can differ on unusual text. Treat the X row as a close estimate, not as a guarantee from X.
How one emoji costs you ninety characters of SMS
An SMS is sent in one of two encodings, and it cannot mix them. GSM-7 spends seven bits per character, which is where the familiar 160 comes from. Anything outside the GSM-7 character set forces the entire message into UCS-2, which spends sixteen bits per character and fits 70.
The consequence is abrupt. A 158-character message sends as one SMS. Add a single emoji, a curly quote pasted from a word processor, or an em dash, and every other character in the message is re-encoded as well — the message is now 159 characters in a 70-character format, so it sends as three segments and is billed as three. Nothing warned you, because the character count barely moved.
Longer messages are split into segments that each carry a small header, which is why the per-segment allowance drops from 160 to 153, and from 70 to 67. The page shows which encoding your text falls into, how many segments it will become, and which character pushed it over when one did.
The characters you cannot see
Text copied out of a word processor, a PDF or a web page arrives carrying passengers: non-breaking spaces that look identical to ordinary ones, zero-width characters, a byte order mark at the very front, trailing spaces at the ends of lines, Windows-style line endings that are two characters rather than one.
None of them are visible and all of them count. They inflate character totals, break exact-match lookups, and a single non-breaking space is enough to knock an SMS into the expensive encoding. This page lists what it finds and how many of each, rather than silently cleaning your text up — the point is to tell you what is there, so you can decide.
What it does not claim
It does not claim to match Microsoft Word exactly. Word's counting rules are not fully published, and a tool that asserts a match it cannot demonstrate is just guessing with confidence. What this page does instead is name the rule behind every number it shows, so you can compare like with like and see where a difference is coming from.