Skip to content
I Hate Online Tools

Word frequency counter

Count how often each word appears in a block of text.

Runs in this tab. The file stays here.

0 unique, 0 counted

#WordCountShare
Paste some text above.

This runs in your browser. Nothing is uploaded.

About Word frequency counter

Paste a block of text and see every word ranked by how often it appears, with counts and percentages. You can copy or download the full table as CSV. The text stays in your tab.

Paste an essay, a transcript, a set of reviews, or a log, and you get a ranked table: word, count, and share of the total. It's the quickest way to see what a document is actually about, spot the word you've used eleven times in one page, or pull a keyword list out of customer feedback. The unique-word and total counts sit just above the table.

Counting is deliberately simple. Text is lowercased, so "Data" and "data" count together, then split on anything that isn't a letter, number, apostrophe, or hyphen, so "don't" and "well-known" stay in one piece. Single-character tokens are dropped. There's no stemming or lemmatising, which means "run", "runs" and "running" are three separate rows. A toggle, on by default, ignores a bundled list of common English words like "the" and "of". Shares are calculated on what's counted after that filter, not on the raw word total.

Show top sets how many rows are on screen (50 to start), but the CSV always contains every word, not just the visible ones. The stop-word list is English only. Languages written without spaces between words, such as Chinese or Japanese, won't be split into words, so a whole sentence can come out as one entry. For a prettier version of the same idea, the word cloud takes pasted text and draws the top words as a picture.

How to use Word frequency counter

  1. 1Paste your text into the box.
  2. 2Leave "Ignore common words" on, or turn it off if you want every word counted.
  3. 3Set how many rows to show.
  4. 4Read the table, or copy or download the CSV.

What it won't do

  • No minimum-length or case options; single-character tokens are always dropped and everything is lowercased.
  • English stop words only; no stemming.
  • Text without spaces between words, such as Chinese or Japanese, isn't segmented.

Common questions

Which common words are ignored?

A fixed English list of function words: articles, prepositions, pronouns, and common contractions such as "the", "of", "and", "don't". Turn the checkbox off to count everything. Other languages aren't covered.

Is it case sensitive?

No. Everything is lowercased before counting, and there's no option to change that. If capitalisation matters, such as telling a name from a verb, this tool can't separate them.

Does the CSV include every word or only the rows shown?

Every word. The table on screen is limited by Show top, but both the copied and downloaded CSV contain the whole list, sorted by count and then alphabetically.

Why are "run" and "running" counted separately?

The tool matches strings, not meaning. It doesn't reduce words to a root form. If you need grouped forms, merge the rows yourself in a spreadsheet.

Related tools

Why this one doesn't upload your file

There is no server to upload to. This page is a static file, and the work happens in your browser using the same graphics and WebAssembly code that renders every other site you visit. Your file is read from disk into memory, processed, and handed back as a download. Once the page has loaded you can disconnect from the network entirely and it keeps working. The longer explanation

Install the app