Text and Strings

Word countersee what each number measures

Compare text length, word boundaries and frequency in one report.

Word counter

Input text

Text stays in this browser; it is not uploaded.

Statistics

UTF-16 code units
0
Unicode code points
0
Graphemes
0
UTF-8 bytes
0
Words
0
Lines
0
Paragraphs
0

UTF-16 units, code points, graphemes and UTF-8 bytes include spaces and punctuation. Graphemes are complete text clusters; the totals measure different units.

Character entropy

0.0000

Samples: 0 · distinct keys: 0

H = −Σ p log2(p), in bits per filtered character sample. The denominator is the filtered sample total, not all graphemes. The full distribution is used. Equal frequencies give equal entropy regardless of order; this is not password strength or proof of randomness.

Word frequency

Character frequency keeps graphemes containing a Unicode letter, mark, number or symbol. Pure punctuation, whitespace and controls are excluded; percentages use the filtered sample total. Word percentages use all counted words.

Effective segmentation locale: Unavailable

No counted tokens.

Counting options

Analysis defaults to English, independently of the page language. Words use Intl.Segmenter word-like segments; Chinese is not split merely at spaces. Browser dictionaries can differ.

Enter text; empty input has zero counts.

A word counter helps when a draft must fit a word limit, but the receiving field measures characters or bytes. Compare all seven totals before choosing the number that matches your requirement.

The character counter distinguishes visible clusters from storage units. Frequency tables add another view: repeated words and symbols remain measurable even when their positions change.

Why use this word counter?

One emoji, several lengths

This word counter gives a smiley one grapheme, two UTF-16 units and four UTF-8 bytes. The difference explains why a visible symbol can consume more than one position in a technical limit.

A smiling emoji connects to one cluster block, two unit blocks and four byte blocks.

Repetition without a guess about quality

Compare distributions rather than judging a text by length alone. Rearranging the same symbols leaves their frequencies and entropy unchanged; a shuffled string is not automatically more random.

Two different symbol arrangements connect to matching frequency bars.

Choose a rule before exporting

01

Set the analysis language

English is the initial analysis locale in every interface language. Choose the language of the text, then check the effective locale beneath the frequency controls.

02

Control when the result changes

Automatic counting waits 350 ms after edits. Turn it off to reveal Count, or use Ctrl/Cmd+Enter. Changing text or options disables export until statistics are refreshed.

03

Inspect before replacing or exporting

Example and Clear first show a replacement preview and lengths. Apply confirms it; Undo restores one preceding snapshot. Tables start with 50 rows and reveal 50 more; JSON includes every row.

Length and distribution together

Seven separate measurements

Review UTF-16 units, code points, graphemes, byte count, words, lines and paragraphs without converting one total into an estimate of another.

Language-aware word frequency

Only word-like segments enter the word table. Punctuation alone is not a word, and the selected language informs browser segmentation.

A line counter with explicit separators

CRLF counts as one separator; CR, LF, U+2028 and U+2029 also separate lines. A trailing separator creates a final empty line.

Inspect symbol identities

Character rows include U+ code point sequences. These help distinguish combining marks and symbols that look similar on screen.

What the numbers do not promise

100,000 UTF-16 units
Larger input is rejected without silently truncating it. A supplementary emoji uses two of these units, so the cap is not a visible-character limit. Without Intl.Segmenter, basic counts remain exportable and segmentation-dependent fields are null.
Current text, not original file size
UTF-8 encoding adds no BOM. Pasting or editing can normalize line endings; isolated surrogate units encode as replacement characters. The byte total describes the current editor text.
Case merging has a precise scope
Frequencies ignore case by default using locale-based lowercase keys for each original segment. No NFC normalization or full case folding is applied: ß does not merge with ss.
Paragraphs follow blank lines
A paragraph is a run of nonblank lines, separated by lines that trim to empty. Screen wrapping creates no new lines; blank input has zero paragraphs.
Statistics do not certify a destination
There are no platform-specific quotas, document import, password ratings or randomness tests. Entropy describes the complete filtered character distribution, not total information or guessing difficulty.
Plain text analysis only
No file, URL or OCR import; no rewriting, cleanup, spelling correction, stemming or stopword removal. Reading speed and sentence counts are not estimated. Draft storage, voice input and synchronization are not provided.

Word counter questions

What counts as a word?

The browser segments text using the chosen language and keeps only word-like segments. Numbers may count as words; punctuation alone does not. The word counter does not use spaces as its only boundary.

Are spaces included in character totals?

Yes. UTF-16, code point, grapheme and byte totals include whitespace and punctuation. The filtered character-frequency sample is a separate measure and should not be read as a spaces-only subtraction.

How are emoji counted?

A simple smiley is one grapheme, one code point, two UTF-16 units and four UTF-8 bytes. A joined family emoji may contain several code points while remaining one grapheme.

Why does another tool return a different number?

Tools can split hyphenated words differently or use code units instead of graphemes. Browser dictionaries and destination rules also differ. Compare the rule as well as the displayed number.

Is the text uploaded or saved?

Counting runs in browser memory. This tool does not upload the input or save drafts. Copying or downloading explicitly creates a report containing statistics and frequency keys.

Found a counting boundary worth checking?

Return to the word counter

Use the word counter to compare a short sample, choose its language and keep a report that records the counting conventions.