WebToolsPlanet
text Tools

Word Counter

Count words, characters, sentences, paragraphs, and reading time — with keyword density analysis and platform-specific character limit indicators.

Last updated: March 25, 2026

Used 58K+ times
Client-Side Processing
Input Data Stays on Device
Instant Local Execution

What users say

I write for 5 different clients with different word limits. This handles all of them from one tab — especially love the platform character limit indicators for social posts.
Elle D.Content Writer
The meta description character counter is the feature I didn't know I needed. The keyword density analysis catches my overuse of target keywords before I publish.
Ben A.SEO Specialist

Find this tool useful? Support the project to keep it free!

Buy me a coffee

What is Word Counter?

A word counter is an analysis tool that measures text across multiple dimensions simultaneously — not just words, but characters (both with and without spaces), sentences, paragraphs, unique words, average word length, reading time, and keyword frequency. While Microsoft Word and Google Docs show a basic word count, browser-based word counters are faster for quick checks on text that's not in a document — social media captions, API responses, content briefs, or code comments.

Reading time is calculated from research on average adult reading speeds: 200–238 words per minute (wpm) for general prose (Rayner et al., 2016). Platform character limits vary: Twitter/X posts are 280 characters; LinkedIn posts allow 3,000 characters; SEO meta descriptions should stay under 160 characters; email subject lines are most effective under 60 characters; Google Ads headlines are limited to 30 characters. This tool provides real-time character counts and color-coded indicators when you approach or exceed these platform limits.

How to Use Word Counter

1

Type or paste your text into the large input area — all statistics update live as you type

2

View the statistics panel: Words, Characters (with spaces), Characters (without spaces), Sentences, Paragraphs, Unique Words

3

Check the "Reading Time" estimate (based on 238 wpm average reading speed)

4

Select a platform from the "Character Limit" dropdown (Twitter, LinkedIn, Meta Description, etc.) to see a color-coded character count gauge

5

Toggle "Word Frequency" to see the most used words (excluding common stop words) — useful for SEO keyword density analysis

Common Use Cases

  • Checking that a blog post draft meets a target word count (1,500+ words for SEO content depth)
  • Staying within the 280-character limit when crafting a Twitter/X post before copying it to the platform
  • Verifying an SEO meta description stays under 160 characters to avoid truncation in Google search results
  • Meeting college essay word limits (the Common App limit is 650 words — this tool shows exactly when you hit it)
  • Estimating reading time for a blog post or newsletter section to display as "X min read" beneath the title
  • Analyzing keyword density for SEO — checking that your target keyword appears at the right frequency in an article
  • Ensuring a LinkedIn post caption stays under 3,000 characters to avoid the "see more" truncation
  • Counting characters in a REST API response body to track approximate payload sizes during debugging

Example Input and Output

Analyzing a paragraph of text for a blog post vs Twitter use case:

Sample text
TypeScript is a statically typed superset of JavaScript that compiles to plain JavaScript. It adds optional type annotations, interfaces, enums, and generics — helping teams catch bugs at compile time rather than runtime. TypeScript is maintained by Microsoft and widely adopted by large engineering teams.
Word counter analysis
Words:            44
Characters:       282 (with spaces)
Characters:       239 (without spaces)
Sentences:        3
Paragraphs:       1
Unique words:     37
Avg word length:  5.4 chars

Reading time:     ~11 seconds (at 238 wpm)

Platform check:
  Twitter (280 chars): ⚠️ 282 chars — 2 over limit
  LinkedIn (3000):     ✅ 282 of 3000 chars
  Meta description:    ❌ 282 of 160 chars limit

Top keywords (density):
  TypeScript (3×) — 8.3% frequency

Client-Side Processing

All text analysis runs in your browser. Your content — whether drafts, client work, or proprietary documents — is never sent to our servers.

SEO Word Count Guidelines

Content length benchmarks by search intent: Informational articles: 1,500–2,500 words for competitive topics. How-to guides: 1,000–2,000 words. Listicles: 1,000–1,500 words. Product pages: 300–500 words (more is fine). Landing pages: 500–1,000 words. Blog posts under 300 words are at risk of Google's thin-content classifier. However, longer is not always better — a well-structured 800-word article outperforms a padded 2,000-word one. Focus on depth over raw word count.

Flesch-Kincaid Readability

Readability scores measure how easy text is to read. Flesch Reading Ease: 90–100 = 5th grade (very easy); 60–70 = 8th grade (standard for web content); 30–50 = college level; 0–30 = very difficult. Calculated as: 206.835 - 1.015×(words/sentences) - 84.6×(syllables/words). Target 60–70 for blog content aimed at a general audience. Lower scores indicate complex sentence structure or vocabulary, which can hurt comprehension and bounce rates.

Frequently Asked Questions

How is word count calculated?
Words are counted by splitting the text on whitespace boundaries and filtering out empty strings: text.trim().split(/\s+/).filter(Boolean). This counts hyphenated words (well-designed) as one word, contracted words (don't) as one word, and numbers as words. URLs are counted as single words. Punctuation attached to words (period, comma, colon) is not counted separately. Multiple consecutive spaces or newlines between words do not create extra word counts — only space-separated tokens count.
What is the average reading speed used for reading time calculations?
The tool uses 238 words per minute (wpm), the commonly cited research median from Brysbaert (2019) "How many words do we read per minute?". Context matters: silent reading of familiar prose averages ~250wpm; technical content (code, legal text) is slower at ~150wpm; skimming can reach 500+wpm. Medium uses 265wpm. Ghost CMS uses 275wpm. Most reading time estimators use 200–275wpm. The "X min read" convention rounds up: a 250-word piece at 238wpm = 1.05 min → displayed as "2 min read".
How is keyword density calculated?
Keyword density = (keyword occurrences / total word count) × 100%. The tool first removes stop words (a, the, and, of, it, is, that...) from frequency analysis to surface meaningful content words. Ideal SEO keyword density: 1–2% for the primary keyword. Above 3–4% may be flagged as keyword stuffing by search engines. For a 500-word article, your primary keyword should appear approximately 5–10 times. The word frequency tool helps identify if you're overusing a keyword without realizing it.
What counts as a sentence?
Sentences are counted by detecting terminal punctuation — periods (.), exclamation marks (!), and question marks (?) — that are followed by whitespace or end of string. Limitations: abbreviations (e.g., "Dr. Smith" or "U.S.A.") may be incorrectly counted as sentence terminators. Decimal numbers (3.14) are not falsely counted as sentences (no space after the period). For academic writing requiring exact sentence counts, verify with your word processor's sentence counter which may handle edge cases differently.
Why do different tools give different word counts?
Word counting algorithms differ on edge cases: (1) Hyphenated words: "state-of-the-art" counts as 1 (one hyphenated token) or 4 in some tools. (2) URLs: "https://example.com/path" as 1 word or split at slashes. (3) Numbers with commas: "1,000,000" as 1 word or 0 (depending on whether digits count as words). (4) Contractions: "don't" as 1 or 2. (5) Em dashes: "text—more text" with no spaces may appear as 1 word. Minor discrepancies (±5%) between this tool and Microsoft Word are normal due to these edge cases.
What is the Twitter/X character limit and how do URLs count?
Twitter/X has a 280-character limit for most accounts (raised from 140 in 2017). URLs in tweets are always wrapped by Twitter's t.co shortener and count as exactly 23 characters, regardless of the original URL length (even a 200-character URL only uses 23 characters toward the limit). Emojis: most emojis count as 2 characters (they use Unicode surrogate pairs). Mentions (@username) and hashtags (#keyword) count normally toward the 280-character limit — there's no special handling for them.

How This Tool Works

The input text is analyzed through a series of regex operations: words are extracted by /\S+/g and filtered for non-empty tokens; characters are count via string.length (with spaces) and the string with all whitespace removed (without spaces); sentences are split by /[.!?]+(?:\s|$)/g; paragraphs by /\n{2,}/; unique words by loading all tokens into a Set. Reading time divides word count by 238. Keyword frequency builds a Map of lowercase tokens (minus stop words) sorted by count. The platform character limit gauge compares character count to the selected limit threshold.

Technical Stack

JavaScript regex tokenizerSet-based unique word countingReading speed research (238 wpm)Platform limit indicatorsClient-side only