Paste text. See total lines, non-blank lines, blank lines, words, and characters. Live update — nothing uploaded.
A quick read-out of total lines, non-blank lines, blank lines, words, and character count. Useful for spec sheets, social-post drafts, log triage, or asking "how big is this chunk?".
No file upload, no API call. The whole thing runs as a few String.split() calls inside the page. Paste, see the numbers, move on.
Drop in anything. Whitespace, line endings, weird Unicode — all handled.
Five rows update live: TOTAL LINES, NON-BLANK, BLANK, WORDS, CHARACTERS. Aligned for easy scanning.
Hit Copy to grab the stats block as plain text — handy for tickets and changelogs.
Anything between whitespace runs counts as one word. Punctuation is part of the adjacent word.
A line that contains only whitespace (or nothing). A line with a single space is blank.
With. The character count is the raw length of the input, including \n.
Most emoji count as 2 (JavaScript string length). We may add a grapheme-cluster count later.
Characters: every Unicode code point counts as 1, so a Han character, an emoji, and a Latin letter all count the same. Words: whitespace-split, which works for English/European text but undercounts CJK (Chinese / Japanese don't use spaces between words). For CJK word counts, you need a segmenter — beyond what we do here. Line and character counts work the same for any script.
Count is the lightest of the eight — just statistics, no result text to render. It handles millions of lines smoothly; the only ceiling is the browser tab's memory budget (≈ 1 GB on most desktops). There's nothing to copy or download here — the numbers update live as you type or paste.