Word & Character Counter

Files & data

Words, characters, bytes and reading time — and why they differ.

Words
17
85 characters · about 1 min read
Characters
85
Sentences
2
Paragraphs
1
How long, exactly
Characters — what a person counts85
Characters without spaces69
Code units — what .length returns85
UTF-8 bytes — what a database column counts85
Unique words16
Lines1
Average word length3.9
Speaking time, minutes — read aloud1

How to use

What it's for

Count the words and characters in an essay, a caption, an application answer or anything else with a length limit, and see roughly how long it takes to read or to say aloud.

Before you start

Have the text ready to paste, and know the limit you must meet and whether it counts words, characters or bytes. Nothing you paste leaves your browser.

  1. Put in your text

    Type or paste it into the Text box, replacing the sample sentences.

  2. Press Count

    Press Count to bring the answer into view. The figures also change as you type, so you can trim the text in the box and watch the count fall.

  3. Check the figure your limit uses

    Look under How long, exactly for Characters without spaces, UTF-8 bytes, Unique words, Lines and more. Use the one that matches how your limit is counted: Characters includes the spaces, and Characters without spaces leaves them out.

Reading the result

  • Words: the main figure, with the character count and about how many minutes the text takes to read under it.
  • Characters, Sentences and Paragraphs: every letter, space and mark; the sentences that end in a full stop, question mark or exclamation mark; and the blocks of text with an empty line between them.
  • UTF-8 bytes: how much room the text takes when a computer stores it. It is higher than the character count when the text has ñ, the ₱ sign or emoji.
  • Speaking time, minutes: about how long it takes to read the text aloud, which is slower than reading it silently.

If it goes wrong

  • A form says your text is too long when it looks short enough: check UTF-8 bytes — letters like ñ and the ₱ sign take more than one byte, and some systems count bytes, not characters.
  • Paragraphs shows 1 for text with many lines: a new paragraph needs an empty line before it. A single line break only starts a new line, which is counted under Lines.
  • Sentences is a little high: a short form that ends in a full stop, such as Engr. or Jr., is counted as the end of a sentence. Treat that figure as an estimate.

What this is

“How many characters” has three answers, and they only agree on plain English.

Characters are what a person counts. Code units are what JavaScript’s .length returns. Bytes are what a database column limit counts.

The peso sign is one character, one code unit and three bytes. An emoji is one character, two code units and four bytes.

So a form validating length with .length against a byte-limited column accepts text the database then refuses — and the failure lands nowhere near the form. That is why all three are shown.

Questions

Why are there three different character counts?

Because “how many characters” has three answers and they only agree on plain English. Characters are what a person counts. Code units are what JavaScript’s .length returns. Bytes are what a database column limit counts. The peso sign is one character, one code unit and three bytes; an emoji is one character, two code units and four bytes.

Why does that difference matter?

Because a form that validates length in code units against a byte-limited database column will accept text the database then refuses — and the failure appears nowhere near the form. If you are checking against a limit, check which unit the limit is in.

How is reading time worked out?

At 200 words a minute, which is a common estimate for an adult reading silently. Speaking time is shown separately at 130, because reading aloud is slower and it is a different question. Both are rough — the rate varies enormously with the material and the reader.

How does it count sentences?

By counting runs ending in a full stop, question mark or exclamation mark, plus a final run with no terminator. It is an estimate: an abbreviation ending in a full stop is counted as a sentence ending, and getting that exactly right needs a dictionary. It is reported as an estimate rather than presented as a fact.

What counts as a paragraph?

A run of text separated by a blank line. A single line break is a wrapped line, not a new paragraph, and treating every newline as a paragraph break gives a wildly inflated count on any text that was hard-wrapped.

Is my text sent anywhere?

No. Everything is counted in your browser and nothing is transmitted or stored.

The maths

One character, three answers
a1 character · 1 code unit · 1 byte
ñ1 character · 1 code unit · 2 bytes
₱1 character · 1 code unit · 3 bytes
😀1 character · 2 code units · 4 bytes

Counting by code point is still not counting by character: it splits a family emoji into six. Intl.Segmenter is the right tool.

Lines against paragraphs

A paragraph is separated by a blank line, not by any line break. A wrapped line is not a new paragraph, and treating it as one gives a wildly inflated count on hard-wrapped text.

Keep going

Important

Counted in your browser; nothing is transmitted. Sentence counts are an estimate — an abbreviation ending in a full stop is read as a sentence ending. Reading and speaking times are rough averages. Nothing you type here is sent to our servers — the calculation runs entirely in your browser.