Skip to content
QKQuickKit日本語
TextLOCALRuns in your browser

Character / Byte Counter

Count characters, bytes, words, and lines of text live in the browser, including emoji-aware counts.

This tool handles input and primary processing in your browser and is designed not to send the input to QuickKit’s server.

Live counts

Live counts
Characters (UTF-16 units)
Characters without whitespace
Graphemes (visible characters)
Unicode code points
Bytes (UTF-8)
Bytes (UTF-16)
Words (whitespace-separated)
Words (Unicode segmentation)
Lines
Non-empty lines
Whitespace characters
How it works

Characters counts UTF-16 code units, the value JavaScript's string length returns. Graphemes counts what a reader sees as one character, so a family emoji counts as one. UTF-8 bytes is the size when saved or sent as UTF-8. Two word counts are shown because they answer different questions: the whitespace-separated count splits on spaces only, so Japanese, Chinese, Thai, and other text written without spaces reports as a single word; the Unicode word count uses the browser's Intl.Segmenter (UAX #29 word boundaries) and does segment those scripts. Counting updates as you type.