Character Counter
Paste or type your text to see its length, most frequent words and estimated reading time. Everything is calculated in your browser, including emoji and accented characters.
Analyze your text
Your text is analyzed in this browser only. It is not uploaded, saved, or sent anywhere.
Live results
Characters
0
Characters without whitespace
0
Whitespace
0
Words
0
Reading time
0 min
Estimate at 200 words/min.
Speaking time
0 min
Estimate at 130 words/min.
Sentences
0
Paragraphs
0
Lines
0
UTF-8 size
0 bytes
Word density
The 25 most frequent words, with counts and a share of all words. Uppercase and lowercase forms are grouped; common words and numbers are included.Add text to see word density.
Character categories
Each non-whitespace grapheme is counted once. The first match wins: emoji sequences, numbers, Latin, Cyrillic, Arabic, Han, Hiragana, Katakana, Hangul, other letters, then punctuation/symbols. Unclassified characters go in “Emoji and other”. Script categories describe writing systems, not spoken languages; Han characters are used in several languages.
Add text to see its character categories.
How to use the counter
- Paste or type text into the field.
- Check character, word, sentence, paragraph and line totals, then review the reading and speaking estimates. The UTF-8 result shows the text’s encoded size.
- Use the category breakdown when you need to understand mixed writing systems.
How the results are counted
Characters are Unicode grapheme clusters: an accented letter or a family emoji can count as one character even when it contains several code points. The total includes whitespace. It measures text characters, not how many glyphs a particular font draws.
Whitespace includes spaces, tabs, non-breaking spaces and Unicode line separators. A CRLF pair counts as one whitespace character and one line break. LF, CR, NEL, and Unicode line and paragraph separators also start a new line. Empty text has zero lines; a final line break adds an empty line.
When available, the browser’s Intl.Segmenter finds word boundaries for the selected language, including languages such as Chinese that do not separate words with spaces. Without it, each continuous run of letters or numbers is one word, allowing combining marks and internal apostrophes. An unspaced Chinese passage is then counted as one run, so word totals can differ between browsers.
UTF-8 size measures the encoded text in bytes. One KB is 1,000 bytes and one KiB is 1,024; one MB is 1,000,000 bytes and one MiB is 1,048,576. Emoji and non-Latin characters often need several bytes even when they count as one character.
In older browsers, the character-count fallback keeps common combining marks, emoji sequences, flags, and Hangul syllables together. It is not a complete replacement for Unicode segmentation: uncommon script-specific combinations may be counted differently. If a browser cannot identify a Unicode category reliably, the character appears under “Emoji and other”.
Sentences follow the browser’s language-aware sentence boundaries when available, or a punctuation-based estimate in older browsers. Abbreviations and unusual punctuation can still affect the result. Blank lines, including lines containing only spaces or tabs, separate paragraphs; a Unicode paragraph separator does too. One ordinary line break stays within the same paragraph.
Reading time uses 200 words per minute and speaking time uses 130, rounded up to whole minutes. These are rough planning estimates, not measurements: language, pauses, content and personal pace all matter, especially for languages such as Chinese.
Word density is a word’s occurrence count divided by the total word count, multiplied by 100. The list shows up to 25 words and includes common words and numbers. Case and equivalent accent encodings are grouped; different word forms remain separate. Percentages use all words, so the displayed entries need not add up to 100%.
Lines count explicit line breaks, including blank lines, rather than the rows created by wrapping text to fit your screen. Seven paragraphs separated by six blank lines have 13 lines if there are no other line breaks.
What this counter is useful for
Use it to prepare social posts, form fields, messages, titles, meta descriptions and short descriptions with a character limit.
Check an assignment or editorial brief against its requested length, then use the sentence and paragraph totals to review the structure. Reading and speaking estimates help plan articles, presentations and voice-over scripts.
Use word density to spot repeated wording before publishing. The character-category breakdown also helps inspect multilingual drafts, while line totals describe the structure of pasted text.
Because everything runs locally, you can check sensitive drafts, application text or unpublished copy without sending it to an online service.
Frequently asked questions
Related tools
More useful tools are on the way.
Browse all tools