Word Counter
Count words, characters, sentences, and estimate reading time instantly.
0
Words
0
Characters
0
Chars (no spaces)
0
Sentences
0
Paragraphs
1 min
Reading time
1 min
Speaking time
About This Tool
What it does
Word Counter is a live text-analysis tool. You paste or type writing into the box and seven stat cards update on every keystroke: Words, Characters, Chars (no spaces), Sentences, Paragraphs, Reading time, and Speaking time. There is no "calculate" button to press. Everything runs in your browser, in page state only, so the text you paste is never uploaded, logged, or saved.
The stats are intentionally simple and transparent. No dictionary, no language model, no server round-trip. Just whitespace splits, character counts, and two fixed reading-rate constants. That's part of why it's fast, and part of why the numbers behave a little quirkily on edge cases (more on that below).
Who actually uses this
Most people land on a word counter because they're working against a length limit and want to see where they stand without leaving the page they're writing on. Real examples:
- Students hitting an essay word target (the classic "between 1,500 and 2,000 words").
- Copywriters and editors trimming a draft toward a brief: landing pages, email subject lines, meta descriptions.
- Social-media managers matching platform character ceilings (X posts, LinkedIn previews, Bluesky's 300, Instagram captions).
- SEO editors watching the character count on a meta title (around 60) or meta description (around 160).
- Speakers and presenters sizing a script for a five-minute talk or a 30-second voiceover read.
- Translators and proofreaders who quote per word and need a fast count on a clipboard paste.
How to use it
Paste or type into the text area. Read the card you care about. When there's text in the box, a small Clear text link appears below the cards. Click it to empty the textarea and reset every stat to 0.
That's the whole interaction. There's no settings panel, no language picker, no upload. If you want to compare two versions of the same paragraph, open two browser tabs side by side. The counters are independent.
How each metric is computed
These are the actual rules the page runs, not a generic explanation. Knowing them is the difference between trusting the number and being surprised by it.
- Words — the text is trimmed of surrounding whitespace, then split on any run of whitespace (
\s+, meaning spaces, tabs, line breaks). Each non-empty chunk is one word. A hyphenated term like well-known counts as one. A URL with no spaces inside it counts as one. A run of emojis with no spaces between them counts as one. Empty or whitespace-only text returns 0. - Characters — the raw
lengthof the string, including every space, line break, and punctuation mark. This is what most platforms mean by "characters" when they enforce a limit. - Chars (no spaces) — every whitespace character is stripped first (spaces, tabs, newlines), then the remainder is counted. Some platforms quote limits this way, so both numbers are shown to save you the mental arithmetic.
- Sentences — the text is split on runs of
.,!, and?(the regex is[.!?]+), and the non-empty pieces after trimming are counted. This is naive on purpose. Abbreviations like Dr., etc., or U.S.A. will inflate the count because each internal period creates extra fragments. Decimals like 3.14 add one, ellipses add one, and a final line without ending punctuation may not register at all. Treat this number as an estimate. - Paragraphs — splits on blank lines (a line break, optional whitespace, then another line break, written as
\n\s*\n) and counts the non-empty blocks. If your paragraphs are separated by a single newline rather than a blank line, the whole thing counts as one paragraph. Most rich-text editors insert blank lines on Enter, so paste-from-Word usually works as expected. - Reading time:
max(1, ceil(words / 200)). Two hundred words per minute is a common silent-reading pace for general English prose. - Speaking time:
max(1, ceil(words / 130)). A measured presentation pace, slower than reading because of breath, pauses, and clarity.
Both time stats round up to the next whole minute and never show less than one. Fifty words shows "1 min" for both. That's a deliberate floor. Sub-minute precision would be misleading on a rate-based estimate.
A worked example
Paste this paragraph into the box:
"The quick brown fox jumps over the lazy dog. It does this every morning at 6 a.m., then again at noon. The dog, for its part, sleeps."
You'll see exactly:
- Words: 27. Every whitespace-separated chunk, including 6 and a.m., as separate tokens.
- Characters: 133. Counts the spaces and punctuation.
- Chars (no spaces): 107. Strips the spaces.
- Sentences: 5, not 3. The splitter cuts on every run of
.,!, or?, and a.m. contains two separate periods with letters between them. The string breaks into the fragments "The quick brown fox jumps over the lazy dog", "It does this every morning at 6 a", "m", ", then again at noon", and "The dog, for its part, sleeps". Five non-empty pieces, so five sentences. This is the classic abbreviation quirk. - Paragraphs: 1. No blank line.
- Reading time: 1 min, Speaking time: 1 min. Both floored.
That sentence miscount is a good illustration of why the headline number is "Words". It's the metric the tool gets right on essentially any input.
Common pitfalls and how to read around them
- Abbreviations break sentence counts. A page with Dr. Smith, Mrs. Jones, U.S., and a few etc.s scattered through can easily report 20% more sentences than there are. Don't quote the sentence figure verbatim in an editorial brief.
- Single-newline paragraphs collapse. If your source uses one newline between paragraphs (some plain-text editors do), the paragraph count will be 1. Insert blank lines between blocks if you need accurate paragraph counts.
- URLs and code count as one word. A long
https://example.com/path?with=lots&of=paramsis one token. Same with file paths, hashes, or any chunk without spaces. - Hyphens and em dashes behave differently. state-of-the-art is one word. state — of — the — art (with spaces around the dashes) is seven. If your style guide treats either as multi-word, do a quick find-replace before counting.
- Smart quotes and curly apostrophes are fine. They don't split words.
- Languages that don't space-separate words (Chinese, Japanese, Thai) will count entire sentences as one or two "words". This tool is not suitable for those. Use a language-aware counter.
When not to use this
A word counter is not the right tool for:
- LLM context-window budgeting. Models count tokens, not words, and one token is roughly 0.75 English words on average. Use the Token Counter instead.
- Readability scoring. If you need Flesch, Flesch-Kincaid, or grade-level scores, this tool doesn't compute them.
- Keyword density. See the dedicated Keyword Density Calculator for that.
- Comparing two drafts. Use a diff tool like Prompt Diff to see what actually changed, not just the size delta.
- CJK or other non-space-segmented languages. The word count won't be meaningful.
Privacy
The textarea value lives in React state on the page you're looking at. There is no network request when you type. Nothing is saved between visits. Refresh the tab and the box is empty. You can safely paste unpublished manuscripts, NDAs, internal memos, draft press releases, or anything else that shouldn't leave your machine.
Related tools
If a word count is just the first step of what you're doing, these usually come next: the Token Counter for LLM prompt sizing, Markdown Preview to see formatted output, Prompt Diff to compare versions, and JSON Formatter when the text you're counting is actually structured data.
The about text and FAQ on this page were drafted with AI assistance and reviewed by a member of the Coherence Daddy team before publishing. See our Content Policy for editorial standards.