Skip to content

Text Statistics for AI

Characters, words, sentences, syllables, reading level, character entropy and an estimated token count for any text you paste.

Estimated tokens
84

4.20 characters per token, 1.35 tokens per word.

Characters
353
Characters without spaces
291
UTF-8 bytes
353
Words
62
Unique words
45 (72.6% of all words)
Sentences
4
Paragraphs
2
Average words per sentence
15.5
Average syllables per word
1.47
Flesch reading ease
66.9 — fairly dense
Flesch–Kincaid grade
7.8
Shannon entropy
4.20 bits per character
Entropy floor for the text
186 bytes

Estimated, not tokenized. Token figures here come from an approximation running in your browser: no tokenizer vocabulary is downloaded, because a real one is megabytes and nothing on this page fetches anything. It imitates how a byte-level BPE splits text — words, digit groups, punctuation runs, whitespace runs — but it has no merge table, so treat it as a planning number. The authoritative count is the usage object on a real API response.

What this assumes: A word is a run of letters, digits, apostrophes and hyphens, so "don't" is one word and "state-of-the-art" is one word. Sentences are split on . ! ? followed by whitespace, with a list of common abbreviations and single initials held back — it will still be wrong on an unusual one. Syllables come from the standard vowel-group heuristic, which is approximate by construction and is what every Flesch implementation uses. Both readability scores were designed for English prose and are meaningless on code, tables or a language they were not fitted to. Entropy is the zero-order Shannon entropy of the character distribution: it is a floor on what a perfect symbol-by-symbol coder would need, not a prediction of what gzip will do.

Character count, word count and token count answer three different questions, and only the last one is billed. The ratio between them is the useful part: English prose lands somewhere near four characters per token, code lands lower because punctuation and camelCase split aggressively, and text in a script the tokenizer covers thinly lands lower still. If the characters-per-token figure above is well under three, that is worth knowing before you plan a context budget around a character count.

Reading level is here because prompts are read by a model that was trained on human text, and long serpentine sentences with three subordinate clauses degrade instruction-following the same way they degrade a skim-reading human. The Flesch score is a crude proxy — it counts syllables, not sense, and you can lower it by chopping sentences without making anything clearer — but a system prompt at grade 16 is usually a system prompt that could be a numbered list.

Entropy is the most misread number of the set. Around 4.1 bits per character is ordinary English; noticeably lower means repetition, and repetition is compressible, which is a hint that a chunk of the text is boilerplate that could be a reference instead of a paste. Noticeably higher usually means base64, hashes, IDs or minified code — content with no redundancy for a tokenizer to exploit, and therefore content that costs close to one token per two or three characters. If you are wondering why a prompt full of UUIDs is so expensive, the entropy line is the reason.

Text Statistics for AI · Multigrid