Text Statistics
Analyze word frequency, reading time, and more.
100% client-side processing
Basic Statistics
Reading Time
Top Words
Top words will appear here...
Character Distribution
Character distribution will appear here...
Text Statistics turns a block of prose into ten live numbers plus two frequency charts. It reports characters with and without spaces, words, unique words, sentences, paragraphs, lines, average word length, the longest word, reading time, speaking time, a top-10 word frequency list, and a letter distribution. Writers use it to hit length targets, editors use it to spot repetition, and speakers use it to time a script. Every calculation runs in the browser, so an unpublished draft never leaves the page.
How the Ten Metrics Are Computed
Words are matched with the Unicode pattern for runs of letters and numbers. Characters use the raw string length, and the “without spaces” figure strips all whitespace first. Lines are counted after normalizing Windows and Mac line endings, while paragraphs are separated by blank lines and empty paragraphs are discarded. Sentences come from terminal punctuation followed by whitespace or the end of the text; if there is content but no terminal mark, the tool reports one sentence. Unique words are lowercased and de-duplicated, reading time is words divided by 238, and speaking time is words divided by 130, both rounded to one decimal place.
The last two panels are frequency views. The top-words chart lowercases every token, counts it, and lists the ten most common. The character distribution chart keeps only letters, lowercases them, and sorts the result alphabetically. Input is debounced by half a second, so stats update shortly after you stop typing rather than on every keystroke.
Worked Example: A Short Paragraph
Paste this sentence:
The quick brown fox. It jumps! Do you see it?
The analyzer returns 45 characters, 36 without spaces, 10 words, 9 unique words, 3 sentences, 1 paragraph, and 1 line. The average word length is 3.3 and the longest word is quick at five characters. Reading time rounds to 0.0 minutes and speaking time to 0.1 minutes. The top-words list puts the and it at two each and the remaining eight words at one each.
To plan a longer piece, use the rate table:
| Words | Reading (238 wpm) | Speaking (130 wpm) |
|---|---|---|
| 50 | 0.2 min | 0.4 min |
| 238 | 1.0 min | 1.8 min |
| 500 | 2.1 min | 3.8 min |
| 1,000 | 4.2 min | 7.7 min |
Where the Counting Rules Get Surprising
Three cases trip people up. First, apostrophes and hyphens are separators, so contractions and compound adjectives raise the count. Second, numbers are words, which means tables of figures can dominate the token count. Third, visual characters are not words: a line of ten emoji reports ten characters (or twenty, since many emoji use two UTF-16 code units) but zero words, zero sentences once counts are updated, and no entries in the letter distribution.
Sentence detection is also mechanical. A decimal like 3.14 does not end a sentence because the period is followed by a digit, but an abbreviation followed by a space does. Ellipses made of separate periods generally do not add sentences, since only the final mark touches whitespace or the end of the string.
Paragraph and line counts answer different questions. A line is anything between two newline characters, so a bullet list of eight items reports eight lines. A paragraph is a block separated by at least one blank line, so the same eight bullets count as a single paragraph if no blank line divides them. Paste an empty string and every count reads zero. Paste a single letter and you get one character, one line, one paragraph, zero words, and a zero-minute reading time. When characters are high but words are low, the text is probably numbers, symbols, or emoji rather than prose.
Revision Signals in the Frequency Table
Raw counts answer “how long,” but the ratios answer “how written.” If unique words are a small fraction of total words, the text repeats itself. If just, very, really, or actually crowd the top ten, those are filler candidates. Dividing words by sentences gives average sentence length; long averages often signal sentences worth splitting. None of these numbers is a score to maximize — they are prompts that point you at specific paragraphs to reread. They are descriptive, not prescriptive: a high unique-word ratio can mean either rich vocabulary or a long list of proper nouns, so read the actual words in the frequency table before acting on any ratio.
Limits to Keep in Mind
The analyzer measures form, not quality. It cannot tell a tight argument from a padded one, and it does not understand grammar, so it will happily count a nonsense string as words. Character counts use UTF-16 code units, which means astral-plane characters such as many emoji register as two. Very large pastes can make the update lag, and the reading-time estimate assumes uniform text difficulty and no diagrams, code, or footnotes. Treat every figure as a measurement of the input string, not of how long a real reader will spend with the finished work. For anything beyond a few thousand words, a dedicated editor with a document outline will serve you better than a live counter.
Related Tools
Frequently Asked Questions
Why does a short paragraph still show a reading time of 0 minutes?
Reading time is words divided by 238 and rounded to one decimal place. At that rate roughly 12 words equal 0.05 minutes, which rounds to 0.0. The estimate only becomes a visible 1.0 minute at about 226 words. Short passages are better judged by their word count than by the rounded time.
How does the analyzer treat apostrophes and hyphens?
It finds words with the Unicode pattern for runs of letters and numbers, so punctuation splits tokens. "Don't" becomes "don" and "t" (two words), and "well-known" becomes "well" and "known" (also two). Abbreviations like "it's" therefore inflate the word count slightly compared with a human reading.
Do numbers and emoji count as words?
Numbers count as words because digits are included in the pattern — "2024" is one word. Emoji, dashes, bullets, and other symbols are not letters or numbers, so an emoji-only line contributes zero words while still adding characters and (often) two UTF-16 code units each.
How are sentences counted?
The tool counts periods, question marks, and exclamation marks that are followed by whitespace or the end of the text. A block with no terminal punctuation but non-empty content is counted as one sentence. Because the rule is punctuation-based, "Dr. Smith arrived" is counted as two sentences even though it is grammatically one.
What does the character distribution panel show?
It counts only Unicode letters, folds them to lowercase, and shows each letter's frequency sorted alphabetically. Digits, spaces, and punctuation are excluded, so the panel reflects letter usage rather than raw character usage. Non-Latin letters are included and sorted with the browser's locale rules.
How is unique-word count different from word count?
Unique words are the distinct lowercased tokens in the text. A 500-word essay that uses "the" 40 times contributes 40 to the word count but only one to the unique count. Dividing unique words by total words gives a rough type-token ratio, a quick signal of how repetitive the prose is.
Reviewed by the HandyTools Hub team · Last updated