Character & Word Counter
Count characters, words, sentences, paragraphs and reading time in any text instantly. Perfect for Twitter posts (280 chars), meta descriptions (155β160 chars), SMS (160 chars per segment), school essays and SEO snippets. Live updates as you type, no submit button, no upload.
How to use
- 1
Paste your text
Type or paste any text into the editor. Updates happen live.
- 2
Read the counters
Characters, words, sentences, paragraphs and reading time are shown in real time.
- 3
Compare to platform limits
See at a glance whether your text fits Twitter, an SMS or a meta description.
Technical details
Character counting sounds trivial until you deal with emoji, combining marks, surrogate pairs and grapheme clusters. The naΓ―ve `string.length` in JavaScript counts UTF-16 code units, so a single emoji like π¨βπ©βπ§βπ¦ returns 11 instead of 1. Our counter uses `Intl.Segmenter` (when available) to count user-perceived characters correctly.
Word counting is also surprisingly nuanced. Latin scripts use spaces, but Chinese and Japanese do not separate words at all, and Thai relies on contextual segmentation. We provide separate counts for the most useful tokens: characters, characters without spaces, words (whitespace-delimited), sentences (period / question / exclamation) and paragraphs (double newline).
Reading time is estimated at 200 words per minute for casual reading and 250 for fluent native speakers. The estimate is shown in minutes and seconds, useful when sizing blog posts, podcast scripts or video voice-overs.
The tool also lists frequent character limits: Twitter (280), Bluesky (300), LinkedIn post (3,000), Mastodon (500), SMS segment (160 with GSM-7, 70 with UCS-2), HTML meta description (155β160), HTML title (50β60).
Frequently asked questions
Are emoji counted correctly?
How is reading time calculated?
Does the counter work for Chinese or Japanese?
Is my text uploaded anywhere?
Can I see selected text counts?
This tool was tested and calibrated by our engineering team. All processing happens locally in your browser β your files and data never leave your device.