Word Counter & Text Analyzer
Count words, characters, sentences and paragraphs as you type, then check readability, keyword density, reading time and platform limits. Everything runs in your browser — your text is never uploaded.
Word counting tool
Up to 300,000 characters. Text stays in this browser tab and is not transmitted anywhere. Counts update after a short pause while typing.
Text statistics
| Characters (with spaces) | 0 |
|---|---|
| Characters (without spaces) | 0 |
| Visible characters (emoji-aware) | 0 |
| Unique words | 0 |
| Lines | 0 |
| Pages (approx., 500 words) | 0 |
| Average word length | 0 |
| Average sentence length | 0 |
| Longest word | — |
| Syllables | 0 |
| Letters | 0 |
| Digits | 0 |
Time estimates
| Reading time | 0 sec |
|---|---|
| Speaking time | 0 sec |
| Handwriting time | 0 sec |
Speaking time assumes 130 words per minute, a typical presentation or voice-over pace. Handwriting assumes 20 words per minute. Both are estimates, not measurements.
Writing goal
No goal set. Enter a target to track progress.
Readability
Scores are calculated from syllable and sentence patterns. They work best on English prose and are hidden for very short text or mostly non-Latin scripts.
Keyword density
Density is the share of all words in the text. Common English stop words are excluded from single words. Phrase counts show terms that single-word analysis misses.
Top words
| Word | Count | Density |
|---|
No repeated words yet.
Two-word phrases
| Phrase | Count | Density |
|---|
No repeated two-word phrases yet.
Three-word phrases
| Phrase | Count | Density |
|---|
No repeated three-word phrases yet.
Platform character limits
Counts use visible characters. Platform rules can differ: X counts links as 23 characters and some scripts as two. Treat these as practical guides, not platform guarantees.
Long sentences
Sentences over 25 words are often harder to read. None found yet.
Ready. Paste or type text to begin.
How to use the word counter
- Type or paste your text into the editor. Counts update automatically after a short pause, so long documents stay responsive.
- Read the quick counts for words, characters, sentences and paragraphs. The detailed table below them adds characters without spaces, unique words, syllables and more.
- Check readability if you are writing English prose. The three scores estimate how hard the text is to read, not whether it is good.
- Review keyword density to see which words and phrases repeat. It is a diagnostic, not a target to hit.
- Compare against platform limits before publishing a post, meta description or SMS message.
- Copy the report or download a CSV if you need the numbers outside the page.
The tool works offline after the page loads. No text is sent to a server, and nothing is stored after you close or reload the tab.
What each count means
| Statistic | What it counts |
|---|---|
| Words | Sequences of letters and numbers. Apostrophes and hyphens inside a word are kept, so don't and state-of-the-art each count as one word. This matches the common convention in Word and Google Docs. |
| Characters (with spaces) | UTF-16 code units, which is what most form fields and databases measure with string.length. |
| Characters (without spaces) | The same count after removing whitespace. Useful for limits that exclude spaces. |
| Visible characters | What a person sees: an emoji such as 👩💻 counts as one, even though it is several code units. This is the fairest count for social platforms. |
| Sentences | Text split at sentence-ending punctuation. Common abbreviations such as Dr., e.g. and decimals are protected so they do not create false sentence breaks. |
| Paragraphs | Blocks separated by one or more line breaks. A single hard return starts a new paragraph, which matches how most editors treat it. |
| Unique words | Distinct words after lowercasing and removing apostrophes. Case and punctuation do not create separate entries. |
| Syllables | An English heuristic based on vowel groups. It is an estimate, and it is not applied to non-Latin scripts. |
| Pages | Words divided by 500. A rough approximation for planning, not a print layout. |
How reading time is estimated
Reading time is words divided by reading speed. The default is 200 words per minute, the same baseline used by Medium, DEV.to and most reading-time plugins[reference:2]. You can switch to 150, 250 or 300 words per minute in the tool.
Speaking time uses 130 words per minute, a typical presentation or voice-over pace. Handwriting uses 20 words per minute. These are planning estimates. Dense technical text is usually read 30–50% slower, and a rehearsed speech is often delivered faster than a cold read[reference:3].
Understanding the readability scores
All three scores use word length and sentence length as proxies for difficulty. None of them understands meaning, so a short sentence with difficult ideas can score as “easy” while a clear sentence with a long word can score as “hard”.
| Score | What it measures | How to read it |
|---|---|---|
| Flesch Reading Ease | Sentence length and syllables per word | 0–100, higher is easier. 60–70 is plain English; below 50 is difficult for a general audience. |
| Flesch–Kincaid Grade | The same inputs, expressed as a US school grade | A score of 8 means a typical eighth-grade reader should manage it. Most web content aims for 7–9. |
| Gunning Fog | Sentence length and the share of words with three or more syllables | Estimates years of formal education needed. Lower is easier; technical writing often lands higher. |
Scores are shown only when the text has at least 20 words, at least one sentence, and is mostly written in Latin script. Very short text produces unreliable numbers, so the tool shows a dash instead of a misleading score.
Keyword density: use it as a diagnostic
Keyword density is the number of times a word or phrase appears divided by the total number of words. It is useful for spotting accidental repetition — for example, using content twelve times in a 400-word page. It is not a ranking lever.
There is no correct density to target. Older advice suggested 1–3% for a main keyword, but modern search systems evaluate meaning and usefulness, and repeating a phrase to hit a percentage makes writing worse[reference:4]. Treat a high density as a prompt to reread the paragraph, not as a number to optimise.
Two-word and three-word phrases are often more informative than single words. Credit card is a meaningful term; credit and card counted separately are not. The phrase tables show terms that single-word analysis misses[reference:5].
Platform character limits
Limits change, and platforms count in different ways. The values used in the tool are current practical limits, shown with visible-character counts:
| Where | Limit | Notes |
|---|---|---|
| X / Twitter post | 280 | Links count as 23 characters; some scripts and emoji count as two[reference:6]. |
| Bluesky post | 300 | — |
| Threads post | 500 | — |
| Instagram caption | 2,200 | — |
| LinkedIn post | 3,000 | About the first 210 characters show before “see more”[reference:7]. |
| SMS, single message | 160 | GSM-7 text only. Unicode messages are limited to 70 characters. |
| SEO meta title | 60 | A display guideline, not a hard cap. |
| SEO meta description | 160 | Around 120 characters often display on mobile[reference:8]. |
Word count targets by content type
There is no universal correct length. These ranges are planning guides based on common publishing practice, not rules that search engines enforce:
| Content | Typical range | Why |
|---|---|---|
| Meta description | 120–160 characters | Display truncation |
| Social post | Under 280 characters | Platform limits and scanning behaviour |
| News brief | 150–400 words | One fact pattern, quickly |
| Blog post | 800–1,500 words | Enough depth to answer a question |
| Long-form guide | 2,000–4,000 words | Multiple sub-questions and examples |
| School essay | Set by the assignment | Follow the brief, not a generic target |
Longer is not automatically better. A 600-word page that answers the question completely beats a 2,000-word page padded to reach a number.
Limitations to know
- Word boundaries differ between tools. This tool counts hyphenated compounds as one word, matching common word processors. Some tools split them, so counts can differ by a few percent.
- Sentence detection is punctuation-based. Abbreviations are protected, but unusual punctuation, missing full stops or text without sentence endings can produce a different sentence count than a human would.
- Readability scores are English-only estimates. They are hidden for short text and for text that is mostly non-Latin script.
- Platform limits are approximate. X applies its own weighting, and SMS depends on the character encoding. Always confirm in the platform’s own composer before publishing.
- CJK and Thai word counts depend on the browser. When the browser provides
Intl.Segmenter, those languages are segmented into real words. Older browsers may fall back to character-based counting. - Emoji counts can differ by definition. “Visible characters” counts grapheme clusters, which is what a person sees. “Characters (with spaces)” counts UTF-16 code units, which is what many systems store.
- The page does not save your text. Reloading or closing the tab clears it. Copy anything you need before leaving.
Frequently asked questions
How is the word count calculated?
The tool extracts sequences of letters and numbers, keeping apostrophes and internal hyphens. don't and state-of-the-art each count as one word. For Chinese, Japanese, Korean and Thai, the browser’s word segmenter is used so a sentence is not counted as a single word.
Does punctuation count as a word?
No. Punctuation alone is not a word. A token must contain at least one letter or number. Dashes, bullets and symbols are ignored.
Why do character counts differ from other tools?
There are three common definitions: UTF-16 code units (string.length), code points, and visible characters. An emoji can be one visible character but several code units. This tool shows all three so you can match whichever limit you are checking.
How is reading time estimated?
Words divided by reading speed. The default is 200 words per minute; you can switch to 150, 250 or 300. Speaking time uses 130 words per minute and handwriting uses 20. These are estimates, and technical text is usually read more slowly.
Why is my readability score blank?
Scores need at least 20 words, at least one sentence, and mostly Latin-script text. Short samples, lists, code and non-English scripts do not produce reliable scores, so the tool shows a dash rather than a misleading number.
Is keyword density a ranking factor?
Not in the way older SEO advice suggested. Density is a diagnostic for spotting repetition. Repeating a keyword to reach a percentage makes writing worse. Use the phrase tables to check that the terms you care about appear naturally.
Does it count Chinese, Japanese or Korean words correctly?
Yes, in browsers that support Intl.Segmenter. Those languages are written without spaces, so the tool uses the browser’s dictionary-based segmentation instead of splitting on spaces. In older browsers, the fallback may count characters rather than words.
Can I check X, LinkedIn or meta description limits?
Yes. The platform limits section shows visible-character counts against X (280), Bluesky (300), Threads (500), Instagram (2,200), LinkedIn (3,000), SMS (160), meta title (60) and meta description (160). X applies its own weighting, so confirm in the composer before publishing.
Is my text uploaded or stored?
No. All counting, scoring and keyword analysis runs in the browser. No request carries your text anywhere. When you close or reload the tab, the text is gone unless you copied or downloaded it.
What is the difference between characters with and without spaces?
“With spaces” is the raw length including whitespace, which is what most form fields measure. “Without spaces” strips whitespace first, which is useful for limits that exclude spaces. The visible-character count is the one to use for social platforms.