Word Frequency Counter

Paste text to see how often each word appears, sorted by frequency — case-insensitive.

What it does

This tool counts how many times each word appears in the text you paste. Results are sorted by frequency — the most common words first — and ties are broken alphabetically. Case does not matter: "The" and "the" are counted together.

How it works

The tool splits the text on whitespace, then strips leading and trailing punctuation from each token. Everything is converted to lower case before counting, so capitalisation at the start of a sentence is ignored. Words shorter than one character (empty tokens) are discarded. The resulting word–count pairs are sorted by count descending, then word ascending for ties.

Worked example

Take the text the cat sat on the mat. After splitting and normalising, "the" appears 2 times, making it the most frequent word. All other words appear once, sorted alphabetically.

Case is folded before counting: Hello hello HELLO collapses to one entry, "hello", with a count of 3. Punctuation at a word's edge is stripped before counting, too: one, two. one becomes "one" (count 2) and "two" (count 1).

Tokenisation choices and limits

Only punctuation at the very start or end of a token is removed — a comma after "word," or a full stop closing a sentence. Punctuation inside a token is left alone, so a hyphenated compound like "well-known" and a contraction like "don't" are each counted as one distinct word, hyphen or apostrophe included. That means "well-known" and "well known" (typed without the hyphen) count as two different words, not one.

There is no stemming and no stop-word filtering. "Run" and "running" are different words, and common function words — "the", "a", "and", "of" — are counted on equal footing with everything else, which is why they usually top the list for ordinary prose. A dedicated keyword-density tool would strip those out first; this one shows the raw counts.

Numbers are treated as words: "2024" counts as its own token. Text is split on whitespace only, so two words joined without a space — a typo, or text copied from a PDF that lost its line breaks — are counted as a single combined token rather than two.

Use cases

  • Keyword density — check which terms dominate a draft to avoid unintentional repetition or thin content.
  • Stylometric analysis — compare word-frequency profiles of different texts to study writing style.
  • Text uniqueness — identify filler words or over-used phrases before publishing.
  • Language learning — find the high-frequency words in a passage to focus vocabulary study.

Frequently asked

Is it case-sensitive?

No. All text is lowercased before counting, so "Hello", "hello" and "HELLO" all count as the same word.

How is punctuation handled?

Punctuation attached to a word boundary is stripped — so "word," counts as "word". Punctuation inside a token, such as the hyphen in "well-known" or the apostrophe in "don't", is left in place, so the whole token — punctuation included — is what gets counted.

Does my text leave my browser?

No. Counting happens entirely in your browser. Nothing is uploaded or stored.

Does it filter out common words like "the" and "and"?

No. Every word is counted on equal terms, including short function words. For ordinary prose, "the" and similar common words will usually sit at the top of the list precisely because they occur so often — that's expected, not a fault.

Are "run" and "running" counted separately?

Yes. The counter matches exact strings after case-folding; it does not stem or lemmatise, so different inflections of the same root word are counted as different entries.

What happens with numbers?

Numbers are treated as ordinary tokens and counted like any word — "2024" would appear in the results as its own entry if it occurs in the text.