Character Counter

Count characters, words, lines, paragraphs, sentences and bytes (UTF-8 and Shift_JIS) as you type. Emoji and combining marks count as one character, and Japanese words are counted too. Set a target length such as 140, 280 or 400 characters to see how many are left, and check full-width / half-width counts, 400-character manuscript pages and reading time.

About this tool

What is the Character Counter?

A live character counter (文字数カウント) for essays, reports, social media posts, ad copy, SEO titles and meta descriptions, and job application forms with a length limit. Type or paste text and every count updates immediately. It counts what you see as one character, so 👨‍👩‍👧 or 🇯🇵 is 1 character, not 8 or 4.

How to use

  1. Type or paste text into the box. The text is saved in this browser.
  2. Read the counts below the box: Characters, No spaces, No newlines, Words, Lines and so on.
  3. To write to a length limit, pick a Target (140, 280, 400, 800, 2,000) or choose Custom and enter a number. The bar shows how many characters are left, or how many you are over.
  4. Press Count by to choose how the big number and the target are counted (see below).

Choosing how to count

Forms and systems count length in different ways. Count by changes the big number at the top and the target:

  • Count: Characters (as seen) counts 👨‍👩‍👧 or が as 1. Code points counts each Unicode code point (👨‍👩‍👧 is 5). UTF-16 code units matches JavaScript length, Excel LEN and many database limits (😀 is 2). Bytes counts the size in the chosen encoding: UTF-8, Shift_JIS (CP932), EUC-JP or UTF-16.
  • Exclude spaces leaves out spaces (including the full-width space) and tabs. Exclude newlines leaves out newlines.
  • Half-width = 0.5 counts ASCII and half-width katakana as half a character, as many Japanese forms do (全角 1 文字、半角 0.5 文字).

In Shift_JIS and EUC-JP, characters that the encoding cannot store, such as emoji, are not counted and are shown as a separate number.

What each count means

CountMeaning
CharactersVisible characters (grapheme clusters, via Intl.Segmenter). Spaces and newlines are included; a Windows newline (CR LF) is 1
No spacesCharacters except spaces (including the full-width space  ), tabs and newlines
No newlinesCharacters except newlines (spaces are counted)
WordsWord-like segments from Intl.Segmenter. Japanese and Chinese text, which has no spaces, is split with the browser's dictionary
SentencesSentences ending with . ! ? 。 ! ? and similar
Lines / Non-empty linesAll lines (a trailing newline starts a new, empty line) and lines with some text
ParagraphsBlocks of text separated by one or more empty lines
UTF-8 bytesSize of the text saved as UTF-8
Shift_JIS bytesSize in Shift_JIS (CP932): half-width characters (ASCII and half-width katakana) are 1 byte, full-width characters are 2. Characters that Shift_JIS cannot store, such as emoji, are not included and are shown separately
Full-width / Half-widthHalf-width means ASCII and half-width katakana (アイウ); everything else except newlines is full-width
Manuscript pages400-character Japanese manuscript paper (原稿用紙) pages: characters without newlines divided by 400, rounded up. Real manuscript paper also uses up squares at the end of each paragraph, so the true number of pages can be higher
Reading timeAbout 500 characters per minute for Japanese, Chinese and Korean, and 230 words per minute for other languages

Japanese word analysis (形態素解析)

Press Analyze words to split Japanese text into morphemes with kuromoji.js and the IPADIC dictionary. You get the number of morphemes, words (without punctuation), content words (without particles and auxiliary verbs) and different words, a count for each part of speech, and the most frequent nouns, verbs and adjectives in their dictionary form (見た → 見る). It is handy for checking repeated words in an essay or the vocabulary of a text.

The dictionary (about 18 MB) is downloaded from the jsDelivr CDN only when you press the button. Your text is analyzed in the browser and is not sent anywhere.

Common length limits

  • X (Twitter): 280 (Japanese, Chinese and Korean characters count as 2, so 140 of them)
  • Google search title: about 30 full-width or 60 half-width characters; meta description: about 120 full-width or 160 half-width characters
  • Japanese job application essays (ES) and reports: often 200, 400 or 800 characters

FAQ

Why does this count differ from JavaScript length or Excel LEN?

Those count UTF-16 code units, so an emoji can count as 2 or more. This counter counts what you see as one character. The UTF-8 and Shift_JIS byte counts show the storage size instead.

Are spaces and newlines counted?

Characters counts both. No spaces leaves out spaces, tabs and newlines, and No newlines leaves out only newlines. To use one of these for the target, turn on Exclude spaces or Exclude newlines in Count by.

Can I count bytes instead of characters?

Yes. In Count by, choose Bytes and an encoding (UTF-8, Shift_JIS, EUC-JP or UTF-16). The target then works in bytes, which helps with database columns and systems that limit bytes.

How are Japanese words counted?

With Intl.Segmenter, the same dictionary-based word breaking the browser uses for double-click selection. The result can vary slightly between browsers.

How is "Words" different from "Japanese word analysis"?

Words uses the browser's built-in word breaking (Intl.Segmenter), which needs no download but does not know parts of speech. Japanese word analysis uses a morphological analyzer, which also tells you the part of speech and dictionary form of each word.

Is my text sent anywhere?

No. Everything is counted in your browser.