Text frequency analyzer
The text frequency analyzer counts how often each word or character appears in any text and ranks them from most to least common, with counts and percentages. It is useful for checking keyword density in SEO copy, spotting repeated filler words in essays, studying vocabulary distribution in a transcript, or performing simple frequency analysis on a cipher text.
How it works
In word mode the text is broken into tokens — runs of Unicode letters, digits, and apostrophes — so punctuation and spaces act as separators. Contractions like don't and it's stay intact because the apostrophe is included. In character mode each character (including spaces unless you turn on ignore-spaces) is counted individually. With the default case-insensitive setting, tokens are lower-cased before counting so Dog and dog merge into one entry.
The tool tallies every unique token, sorts by count (alphabetically for ties), and computes each item’s share:
percentage = (count ÷ total tokens) × 100
The total is word count in word mode, or character count (including or excluding spaces) in character mode.
Worked example
For a short passage “the cat sat on the mat, the cat ate the rat” in word mode (case-insensitive, punctuation stripped):
| Word | Count | Percentage |
|---|---|---|
| the | 4 | 30.8% |
| cat | 2 | 15.4% |
| sat | 1 | 7.7% |
| on | 1 | 7.7% |
| mat | 1 | 7.7% |
| ate | 1 | 7.7% |
| rat | 1 | 7.7% |
13 words total; the at 4 occurrences = 30.8%. Click Copy to export the ranked table as tab-separated values.
Practical uses
Keyword density. SEO guidance commonly suggests a primary keyword appearing at around 1–2% of total words. Paste a page draft and check the percentage for your target phrase.
Filler word audit. Words like very, just, really, and that are common over-used filler. Run your essay and look for these near the top of the list.
Cipher frequency analysis. In a simple substitution cipher, the most frequent character often corresponds to e (the most common English letter). Character mode with ignore-spaces gives you the raw distribution to start breaking the code.
Vocabulary range. In word mode, a high ratio of unique words to total words suggests varied vocabulary; heavy repetition at the top of the list signals monotony.
Everything runs in your browser — nothing is uploaded or stored.