TEXT TOOL

Word Counter and Character Counter

Paste or type text to count words, characters with and without spaces, letters, sentences and paragraphs, with reading and speaking time and checks against X and SMS limits. Everything runs in your browser; nothing is uploaded.

0
Words
0
Characters
0
Chars (no spaces)
0
Letters
0
Sentences
0
Paragraphs
0s
Read time
0s
Speaking time

Character limits

X post (280, weighted): 0 / 280
SMS: 0 / 160
Enter a number to track it.

About this word counter

This word counter and character counter reads the text in the box every time it changes and reports eight figures: words, characters, characters without spaces, letters, sentences, paragraphs, reading time and speaking time. It also measures the text against the X post limit, the SMS message limit and any limit you set. The counting runs in your browser with JavaScript, so your text is never sent anywhere.

How each count works

Edge cases, tested

Each row was run through the counter and checked against a Python implementation of the same rules:

TextWordsCharactersLettersSentences
well-known fact215131
word—word (no spaces)1981
word — word (spaced dash)31181
3.14 is pi31041
Visit https://example.com today.332251
one two three (extra spaces)316111
See e.g. this list.419132
Dr. Smith arrived.318142
I ❤ 😀 you41041
👍🏽 (skin-tone emoji)1401
我喜欢读书。 (Chinese)1651

Two rows show where simple rules go wrong. Abbreviations such as e.g. and Dr. end with a period followed by a space, so each adds a sentence; the counter cannot tell an abbreviation from the end of a sentence. And Chinese, Japanese and Thai do not put spaces between words, so a space-based count reports a whole sentence as one word. For those languages, use the character or letter count instead; the Chinese full stop 。 is also not treated as a sentence mark.

Emoji raise the character count because most take two UTF-16 code units, and a skin-tone modifier adds two more. That is why 👍🏽 shows 4 characters. Platforms that set their own limits count emoji differently, which is what the limit checks below are for. For more on code points, graphemes and bytes, read word count vs. character count.

Reading time and speaking time: words to minutes

Both times are words divided by a rate, rounded to the nearest second. Reading time defaults to 238 words per minute, the average silent reading rate for English non-fiction in Marc Brysbaert's 2019 meta-analysis of 190 studies and 18,573 participants (Journal of Memory and Language). The same study found 260 words per minute for fiction, which you can pick in the menu, along with a slower 200. Speaking time uses Brysbaert's average oral reading rate of 183 words per minute, which he notes agrees well with typical speaking rates. Treat it as about right for a script read at a normal pace; a slow, deliberate talk will run longer.

WordsSilent, 238 wpmSilent, 260 wpmAloud, 183 wpm
2501m 3s58s1m 22s
5002m 6s1m 55s2m 44s
1,0004m 12s3m 51s5m 28s
1,5006m 18s5m 46s8m 12s
2,0008m 24s7m 42s10m 56s

To turn a word count into pages instead, see how many words is a page.

How the X and SMS limits are counted

X: according to X's developer documentation, a post can hold 280 characters, but Latin letters, punctuation and common symbols count 1 while emoji, CJK characters and other Unicode count 2, every URL counts 23, and the text is measured after NFC normalization. The tool applies the ranges in X's twitter-text v3 configuration. It recognizes links that start with http:// or https://; a bare example.com is counted as typed, so treat the X figure as a close estimate.

SMS: a single message carries 160 characters in the GSM 7-bit alphabet of 3GPP TS 23.038. The extension characters € [ ] { } \ ^ ~ | need an escape code, so each counts 2. One character outside the alphabet, such as an emoji or a curly quote, switches the whole message to UCS-2 with a 70-character limit. Longer messages are split into segments of 153 GSM characters or 67 UCS-2 characters, because each part carries a header that rejoins them, as Twilio explains.

Worked example

The sample text loaded in the box gives 42 words, 232 characters, 190 characters without spaces (it holds 40 spaces and 2 line breaks), 180 letters, 2 paragraphs, a reading time of 11s at 238 wpm and a speaking time of 14s. It reports 5 sentences although a reader sees 4, because e.g. is followed by a space. well-known counts as one word. Every character is in the GSM alphabet, so the SMS check shows 232 GSM-7 characters in 2 segments, and the X check shows 232 of 280.

Common mistakes

To see which words you use most often rather than how many there are, use the Word Frequency Counter.

Frequently asked questions

How does this word counter count words?

It splits the text on spaces, tabs and line breaks and counts the pieces. Hyphenated words such as well-known, contractions such as don't, numbers such as 3.14 and full URLs each count as one word. A dash written with spaces on both sides counts as a word of its own, while a closed-up dash joins its neighbors into one word.

What is the difference between characters and letters?

Characters counts everything in the text, including spaces, line breaks, digits, punctuation and emoji. Letters counts only characters in the Unicode Letter category, so accented letters, Cyrillic, Greek and Chinese characters count, but digits, spaces, punctuation and emoji do not.

How is reading time calculated?

Reading time is the word count divided by 238 words per minute, the average silent reading rate for English non-fiction found in Brysbaert's 2019 meta-analysis of 190 studies. You can switch to 260 words per minute for fiction or a slower 200. The result is rounded to the nearest second.

How long does it take to say 1,000 words?

About 5 minutes 28 seconds at 183 words per minute, the average rate for reading aloud in Brysbaert's 2019 meta-analysis. The Speaking time figure uses this rate. A slow or heavily paused delivery takes longer, so allow some margin when timing a talk.

Does the character count match X (Twitter)?

Not always. X counts most Latin letters and punctuation as 1 but emoji and CJK characters as 2, and every link counts as 23 characters. The X post check on this page applies those weights to links that start with http:// or https://, so use it rather than the plain character count when writing a post.

How many characters fit in a text message?

A single SMS holds 160 characters if every character is in the GSM 7-bit alphabet, or 70 if the message contains anything outside it, such as an emoji. Longer messages are sent in segments of 153 or 67 characters. The SMS check shows which encoding your text needs and how many segments it takes.

Does the word counter work for Chinese or Japanese?

Not for words. Chinese and Japanese do not put spaces between words, so a space-based counter reports a whole sentence as one word. The character and letter counts still work, and character count is the usual way to measure length in those languages.

Do line breaks count as characters?

Yes. Each line break adds one to the Characters figure, the same as a space. The Characters (no spaces) figure leaves out all whitespace, including spaces, tabs and line breaks. Every non-empty line also counts as a paragraph.