Word & character counter
Count words, characters and reading time — with emoji and accents counted the way people count them.
Runs entirely in your browser. Nothing you enter is uploaded.
How this works
What counts as one character
“How many characters is this?” has more than one correct answer, and the differences are not trivial. There are three levels a computer can count at:
- Code units — how the text is stored. This is what
string.lengthreturns in JavaScript. An emoji can be several units long. - Code points — individual entries in the Unicode standard. Better, but a letter with a separate combining accent still counts as two.
- Grapheme clusters — what a reader would call a character. This is what the main count above reports.
The gap can be large. A three-person family emoji is one grapheme cluster, five code points, and eight UTF-16 code units. If a form rejects your text as too long when your counter says it fits, this is almost always why.
Full-width counting
Japanese forms frequently count a full-width character — kana, kanji, full-width punctuation — as two units and a half-width character as one. A limit of “100 characters” on such a form means 50 Japanese characters, or 100 Latin ones, or some mixture.
The full-width figure above applies that rule, so you can check against either convention without doing the arithmetic yourself.
Words, without spaces to guide you
Word counting is easy in languages that separate words with spaces and impossible to do perfectly in those that do not. Splitting Japanese text on whitespace returns one word, which is useless. Genuine word segmentation for CJK requires a dictionary and is beyond what a browser tool should carry.
The compromise here: count each CJK character as one word, split the remaining text normally, and add them. For a mixed sentence like “API を使う” you get four. It will not match a linguistic parser, but it is stable, predictable, and close enough for length estimation.
The limits worth watching
| Where | Practical limit |
|---|---|
| Page title in search results | About 60 characters before truncation |
| Meta description | About 160 characters |
| Social post | 280 characters on most platforms |
Search engines truncate by pixel width rather than character count, so a title in wide capitals gets cut sooner than one in narrow lowercase. Sixty characters is a working rule, not a hard boundary.
The word frequency list
The most-used words panel is a quick way to catch a habit you cannot see while writing. If one term appears far more often than anything else, the text is usually either repetitive or circling a point it has not made yet. Tokens shorter than three letters are excluded, since articles and prepositions would otherwise fill the entire list.
Common questions
- Why does my emoji count as one character here but eight elsewhere?
- Because most counters report UTF-16 code units — what JavaScript's .length returns — and a family emoji is built from several code points joined by invisible connectors. This tool counts grapheme clusters instead: the units a person would point at. Both numbers are real, but only one of them matches what you see on screen.
- Which count does a social platform or CMS use?
- It varies, which is precisely the problem. Some count code units, some count code points, some count grapheme clusters, and Japanese forms often count full-width characters as two. This page shows the character count and the full-width count side by side so you can match whichever one your form is using.
- How are words counted in Japanese or Chinese?
- Those languages do not put spaces between words, so a whitespace split returns one enormous "word". This counter treats each CJK character as a word and splits the remaining text on whitespace, then adds the two. It is an approximation, but it produces a usable number instead of a meaningless one.
- Where does the reading time come from?
- About 200 words a minute for Latin text and about 400 characters a minute for Japanese, which are conventional figures for reading aloud at a comfortable pace. Silent reading is faster — often half again — so treat the estimate as an upper bound for presentations and scripts.
- Is my text uploaded anywhere?
- No. Every count runs in your browser as you type. Nothing is sent, stored, or logged, which is worth knowing if you are pasting something confidential to check its length.