Word and character counter

Paste your text to get word, character, line, sentence and paragraph counts plus its size in bytes. The tool separates characters as a reader sees them from code points, because a letter with diacritics or an emoji can be made of several code points. It works as a character counter too, with counts both with and without spaces, so it suits essays, articles and posts that have a length limit.

Loading the tool…

Processing and privacy: The result is calculated inside your browser and your data is not sent to any server.

How to use it

  1. Type or paste text into the box, or press “Load example”.
  2. Read the counts under the box; they update as you type.
  3. Change the reading speed if you want a different reading-time estimate.
  4. Copy the result or download it as a text file.

Example

The text “مَرْحَبًا 👨‍👩‍👧” gives: 1 word, 7 characters as read (5 Arabic letters, a space and one emoji), 6 characters without spaces, 15 code points and 37 UTF-8 bytes.

The four Arabic diacritics are counted with their letters, and the family emoji is three emoji joined by two invisible joiners but reads as one character.

Limits and caveats

  • Tested by pasting about 1.5 MB of mixed text (100,000 short lines) in Chrome on a desktop computer: the counts appeared after 5 to 7 seconds. Most of that is the browser text box itself drawing the paste (it freezes for about 3 to 4 seconds); the counting runs in slices of roughly half a second or less. A text of 15,000 lines (about 0.6 MB) is counted in about a second and a half. A single very long line with no line breaks is counted in one go. Above about 4,000 lines or 150,000 characters the text box shows every line in one direction (taken from its first letter) instead of a direction per line, because per-line direction makes the browser extremely slow at that size.
  • Word and sentence boundaries follow the Unicode rules built into your browser (Intl.Segmenter), so numbers can differ slightly between browsers and from programs such as Word.
  • An abbreviation followed by a capital letter or an Arabic word, such as “Dr. Smith” or “د. أحمد”, is counted as the end of a sentence, because the rule does not know abbreviations.
  • The browser text box converts CRLF line endings to LF when you paste, so each line break counts as one character and one byte. The byte count can differ from a file saved with Windows line endings.
  • Reading time is only arithmetic: the word count divided by the speed you set.

Questions about this tool

Why is “characters” different from “code points”?

A character as a reader sees it can be made of several code points: an Arabic letter with its diacritics, a combined emoji or a country flag. Platform limits (form fields, for example) are usually measured in code points, UTF-16 units or bytes, so all of them are shown.

How are Arabic words with attached particles such as و or ال counted?

As one word: “وبالعالم” is a single word, because counting relies on spaces and punctuation, not on grammar. A word with diacritics or stretched with tatweel is still one word.

Is my text sent to a server?

No. All counting happens inside your browser. The text is not stored or sent anywhere.

How do I count the words in a text?

Paste the text into the box and the word count appears under it at once, updating as you type with no button to press. Words are found at spaces and punctuation using the Unicode rules, so “Hello world, this is a test.” counts as 6 words, and numbers count as words too.

Does the word counter count characters with and without spaces?

Yes, it shows both. “Characters (as read)” includes spaces, and “Characters without spaces” leaves out every space, tab and line break. For example, “Hello world, this is a test.” has 28 characters with spaces and 23 without. If a limit is measured in bytes, use the UTF-8 bytes count, because each Arabic letter takes 2 bytes.