Word Counter
Live word, sentence and paragraph counts with reading time and keyword frequency — for any script, not just English.
Runs in your browser. Nothing you enter here is uploaded to a server.
How to use the word counter
Step 1: Paste or type your text
Every statistic recalculates as you type. There is nothing to submit and no button to press.
Step 2: Adjust the reading and speaking rates
Defaults are 200 words a minute for silent reading and 130 for speaking aloud. Change them to match your audience or your own pace.
Step 3: Review the keyword list
The most frequent words are listed with their counts, after a small stop-word list removes "the", "and" and similar filler.
Worked example
Checking a conference talk against its slot
A 2,600-word draft at the default rates.
- Words
- 2,600
- Speaking time at 130 wpm
- about 20 minutes
- Reading time at 200 wpm
- about 13 minutes
- Implication for a 25-minute slot
- Roughly right, with no room for questions
Speaking time is the number that matters for a talk, and it is substantially longer than reading time. Tools that only report reading time will make a script look far shorter than it is.
How the counts are made
Where the browser supports it, Intl.Segmenter splits the text into words and sentences using Unicode rules. Only segments the standard classes as word-like are counted, so punctuation and whitespace are excluded.
reading time = words ÷ reading rate (default 200 wpm)
speaking time = words ÷ speaking rate (default 130 wpm)
paragraphs = blocks separated by one or more blank lines- Unicode-aware segmentation is what makes the count correct for languages that do not put spaces between words.
- Where Intl.Segmenter is unavailable, the tool falls back to a documented regular-expression split and says so, because that fallback is less accurate for those scripts.
- Unicode segmentation breaks on a hyphen, so "well-known" counts as two words. Most word processors count it as one, which is the usual reason a figure here differs slightly from Word or Google Docs.
Limitations and privacy
What this tool does not do
- Reading and speaking rates are averages. Dense technical prose is read more slowly than a news article, and presenters vary widely.
- Sentence detection is rule-based. Abbreviations such as "e.g." and decimal points inside numbers can occasionally be read as sentence endings.
- The stop-word list is small and English-only. Keyword frequency for other languages will include common function words.
- Keyword counts are literal string frequencies. There is no stemming, so "run" and "running" count separately.
- Hyphenated compounds count as two words, following the Unicode rules. Word processors usually count them as one, so a hyphen-heavy document will read slightly longer here than in Word.
- Very large documents are debounced to keep typing responsive, so the counts may lag a keystroke or two behind.
Your text stays in this page. It is held in memory only, never uploaded, never stored, and cleared when you reset or close the tab.
Frequently asked questions
How is a word defined here?
As a word-like segment under Unicode segmentation rules rather than as anything between two spaces. That is what lets the tool count Japanese, Chinese and Thai correctly, where there are no spaces to split on. The same rules break on a hyphen, so "well-known" counts as two words here and as one in most word processors.
How accurate is the reading time?
It is an estimate from an average rate. Adult silent reading of general prose typically falls between 200 and 250 words a minute, so the default of 200 is slightly conservative. Technical or unfamiliar material can be much slower, and the rate is adjustable for that reason.
Why is speaking time longer than reading time?
Because speech is slower than silent reading — around 130 words a minute for clear, unhurried delivery against roughly 200 for reading. If you are timing a talk or a voiceover, the speaking figure is the one to use.
Does the counter work with languages other than English?
Yes, wherever the browser provides Intl.Segmenter, which covers all current major browsers. Scripts without spaces between words are segmented properly. The keyword stop-word list is English-only, so frequency results in other languages will include common function words.
Is my text sent anywhere for analysis?
No. Every count, including the keyword frequency analysis, runs in your browser. Nothing is uploaded, and no part of your text appears in any analytics event.
Related tools
Other tools people use alongside the word counter.
Character Counter
Count characters the way people see them and the way software measures them, with UTF-8 byte size, line counts and a character limit tracker.
Case Converter
Convert text to lowercase, UPPERCASE, Sentence case, Title Case, camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE or alternating case.
UUID Generator
Generate up to 100 random version 4 UUIDs at once, with optional uppercase, braces or no hyphens. Copy them all or download them as a text file.
QR Code Generator
Create QR codes for links, text, email, phone, SMS and Wi-Fi networks. Download as PNG or SVG. Encoding happens in your browser, not on a server.
Part of Text & Developer Tools. Last reviewed .