Word Counter
Count words, characters, sentences, paragraphs, and read times in real-time.
Word Counter workspace
Nothing to work with yet
Case-insensitive.
Text Statistics
225 wpm is a common average for adult silent reading.
Common limits
X counts most Latin characters as one and CJK or emoji as two, so its number differs from the character count above.
SMS segments
GSM-7 fits 160 characters in one segment and 153 in each part of a longer message. A single character outside GSM-7 — a curly quote or an emoji — switches the whole message to UCS-2, where the limits drop to 70 and 67.
Everything on this page is computed in your browser. Nothing is uploaded, and nothing is saved between visits — closing the tab is enough to clear it.
Using Word Counter
Paste Content: Type or paste your document text into the editor pane.
Analyze Counters: Review the character, word, sentence, and paragraph counts updated in real-time.
Check Read Time: Read the estimated silent reading time calculated on standard speeds.
Clear Editor: Click 'Clear' to wipe the text field and reset all counters.
Analyze document text lengths in real-time. The text parser matches characters against regular expressions to compute word counts, characters (with and without spaces), sentences, and reading durations.
Paste or type, and every figure updates as you go: words, characters, sentences, paragraphs, lines, average word length, reading and speaking time, the five most frequent terms, and live bars for the limits people actually write to. The separate character counter has been folded into this page, so this is the one place to count anything.
A character is three different things
Ask three systems how long a thumbs-up is and you get three answers, so this page reports all of them side by side.
- Characters — what you can see. These are Unicode grapheme clusters, measured with
Intl.Segmenter, so an accented é, a thumbs-up and a family emoji each count as one. - UTF-16 code units — what
String.lengthreturns in JavaScript, and what a great many database columns and API validators enforce behind the scenes. - Weighted units — X charges one per code point for most Latin text and two for CJK and emoji, which is the number its own composer counts down from.
The gap widens quickly. 👨👩👧👦 is one character on screen but seven code points and eleven UTF-16 code units, because it is four people welded together by three invisible zero-width joiners. A field that advertises "50 characters" while measuring String.length will reject four of those emoji and a short word.
Where each limit is really enforced
The SEO title bar stops at 60 and the meta description bar at 160, which are conventions rather than rules: Google truncates by pixel width, so a headline in wide capitals gets cut before 60 and a narrow one survives past it. Use the bar as a warning light, not a specification. The X bar at 280 uses the weighted count, which is why it can disagree with the character figure directly above it.
Why one curly quote can triple a text message
GSM-7 packs each character into seven bits and fits 160 into one segment; once a message needs more than one segment, part of each is spent on a header and the limit falls to 153. Ten characters live in the GSM extension table — including the euro sign, curly braces, square brackets and the backslash — and each is billed as two.
Step outside that set even once and the whole message switches to UCS-2, where a segment holds 70 units and 67 in a concatenated message. So a 160-character promotional text costs one segment. Swap a single straight apostrophe for a typographic one and the identical message needs three, because 160 UCS-2 units divided by 67 rounds up to three parts. The SMS panel names the encoding it picked so you can see which cliff you are standing on.
Reading time is a budget, not a measurement
Reading time is calculated at 225 words per minute by default and the box is editable, because a technical specification and a newsletter do not read at the same speed. Speaking time is fixed at 130 words per minute, which is a reasonable pace for a presentation script. Both are planning figures. Nobody reads at a constant rate, and a page dense with numbers will take far longer than the estimate suggests.
What this counts as a word
A token must contain a letter or a digit to count, so a row of dashes is punctuation while 2026 and e-mail are one word each. Sentences are found by terminal punctuation, which means approx. 5 kg is read as two. Word and Google Docs each draw these lines slightly differently, so small disagreements between them and this page are expected rather than a fault.
Find and replace works on the same text, and nothing here is written to storage — reload and the box is empty.
Related text tools
- Case Converter — ten casing styles, including locale-aware uppercasing.
- Text Cleaner — trim, de-duplicate and sort a list in one pass.
- Lorem Ipsum Generator — placeholder copy with randomised sentence lengths.
Frequently asked
How does the tool define a word?
It splits text by spaces, carriage returns, and punctuation marks, counting any sequence of non-whitespace characters as a word.
What is the average reading speed assumption?
It assumes an average reading speed of 225 words per minute (WPM) to calculate target reading times.
Are my drafted articles saved on your server?
No, the script parses text entirely client-side. Your text never leaves your device.