Word Counter
Count words, characters with and without spaces, sentences, paragraphs and reading time. Free, private, runs in your browser.
Loading tool…
How It Works
The DevPlain word counter runs entirely in your browser and reports six metrics for any text you paste: words, characters with spaces, characters without spaces, sentences, paragraphs and reading time. Paste or type into the box and every figure updates as you go; nothing is uploaded, because the counting is plain JavaScript executed on your device.
Words are counted with a Unicode-aware tokenizer. Every run of letters or digits counts once, and every CJK character — Chinese, Japanese kana, full-width forms — counts as one word, so 你好世界 is four words and a mixed sentence like hello 世界 is three. Apostrophes and hyphens split words rather than joining them: don't is two words and well-known is two. Emoji are neither letters nor digits, so they appear in the character counts but never in the word count.
Characters are reported two ways: the with-spaces figure is the raw string length, and the without-spaces figure is the same length after every whitespace character is removed. Sentences are counted by splitting at periods, exclamation marks and question marks and ignoring empty fragments, while paragraphs are counted by splitting on blank lines — a single line break inside a block does not start a new paragraph. Reading time divides the word count by 200 words per minute and rounds up, with a one-minute floor for any non-empty text.
How to use the word counter
- Paste or type your text into the input box — the six metrics update as you type.
- Check the word count against your length limit, minimum or maximum.
- Use the two character figures when a limit is stated in characters, with or without spaces.
- Read paragraphs and sentences to sanity-check structure, and reading time to size a spoken draft.
What each metric means
| Metric | Counting rule | For input: Hello world |
|---|---|---|
| Words | Runs of letters/digits; one CJK character = one word | 2 |
| Characters (with / without spaces) | Raw length, then length minus all whitespace | 11 / 10 |
| Sentences | Split at . ! ?, empty fragments ignored | 1 |
| Paragraphs | Split on blank lines only | 1 |
| Reading time | Words ÷ 200 per minute, rounded up | 1 min |
Examples
Input
Hello worldOutput
Words: 2; Characters (with spaces): 11; Characters (without spaces): 10; Sentences: 1; Paragraphs: 1; Reading time: 1 minA single English sentence — the baseline case.
Input
Para1
Para2Output
Words: 2; Paragraphs: 2; Sentences: 1; Reading time: 1 minA blank line starts a new paragraph, so the paragraph count is 2.
Input
你好世界Output
Words: 4; Characters (with spaces): 4; Reading time: 1 minBoundary: CJK characters count one word each, so 4 characters are 4 words.
Input
Output
Words: 0; Characters: 0; Sentences: 0; Paragraphs: 0; Reading time: 0 minBoundary: empty input returns zero metrics instead of an error.
Frequently Asked Questions
- What counts as one word?
- Any run of letters or digits counts once — numbers like 42 are words too. Each CJK character counts as a separate word, which matches how Chinese text is normally measured. Emoji and punctuation symbols are not words.
- Why do the two character counts differ?
- Characters (with spaces) is the raw length of your text, including every space, tab and line break. Characters (without spaces) removes all whitespace first, which is the figure most form word limits actually ask for.
- How is reading time calculated?
- The word count is divided by 200 words per minute and rounded up, so a 380-word text reads as 2 minutes. Real speed varies by roughly plus or minus 30 percent depending on the reader and the material.
- Is my text uploaded anywhere?
- No. Counting runs in your browser with plain JavaScript, so the text never leaves the page. It keeps working even if you disconnect from the network after the page loads.
Limitations & Accuracy
Sentence counting uses a simple rule: any period, exclamation mark or question mark ends a sentence, so abbreviations like Dr. or e.g. inflate the count. Reading time assumes 200 words per minute, accurate to roughly plus or minus 30 percent. Very large texts are limited only by browser memory; a 10,000-character paste counts in well under half a second.