Count how often every character appears, ranked by frequency, with case, space and punctuation toggles, browser-only
- Runs locally
- Category Text
- Best for Removing repetitive cleanup work from everyday writing and operations.
The frequency table appears here once you add text.
100% local. Your text never leaves your browser.What this tool does
A character frequency counter that tells you exactly how many times each character appears in a piece of text, ranked from most to least common. Counting works by Unicode code point, so an emoji counts as one character and a Chinese ideograph counts as one character instead of being split into surrogate halves. Three switches let you shape the count for the job in front of you: fold uppercase and lowercase together or keep them apart, include or skip whitespace, and include or skip punctuation and symbols. The result is a sortable table of character, count, and share of the whole as a percentage, with invisible characters like space, tab, and newline shown as readable labels so a row is never an empty cell. You also get the total character count and the number of distinct characters at a glance, plus one-click copy of the whole ranking as CSV for a spreadsheet. This is the tool people reach for when doing frequency analysis on a Caesar or substitution cipher, auditing which symbols dominate a string, or checking letter distribution in any language. Everything runs in your browser and the text you analyze is never uploaded.
Tool details
- Input
- Text
- The page exposes text boxes, numeric controls, file pickers, or structured inputs depending on the tool.
- Output
- Live result + Copy
- The result area focuses on usable output, with copy, download, or preview actions when supported.
- Privacy
- Browser-side processing
- The main tool logic does not call an external API, so inputs normally stay in the current tab.
- Save / share
- Shareable URL state
- Key settings are encoded in the URL so another person can reopen the same setup.
- Performance budget
- Initial JS <= 9 KB
- No WASM budget is declared, keeping the tool quick to open on mobile.
- Best fit
- Text · Developer
- Category and role tags drive related tools, internal links, and quick fit checks.
How to use
-
1. Input
Paste or drop your content into the tool panel.
-
2. Process
Click the button. All processing is local in your browser.
-
3. Copy / Download
Copy the result or download to disk in one click.
How Character Frequency Counter fits into your work
Use it to clean, compare, reshape, or extract plain text before it goes into a document, CMS, spreadsheet, or prompt.
Text jobs
- Removing repetitive cleanup work from everyday writing and operations.
- Making text easier to compare, paste, publish, or feed into another tool.
- Working with content locally when the text is private or unfinished.
Text checks
- Scan for unintended whitespace, duplicate lines, and lost punctuation.
- For long text, test the first few lines before applying the whole change.
- Copy the final output only after checking the preview.
Good next steps
These links move the current task into a more complete workflow.
- 1 Word Frequency Counter Rank every word + phrase by frequency, with keyword density, stop-word filtering, and n-gram analysis — browser-only Open
- 2 Word Counter Count words, characters, sentences, paragraphs and reading time in any text — instant, browser-only Open
- 3 Text Deduplicator Remove duplicate lines from any list — case-sensitive optional, whitespace-trim optional, count duplicates — browser-only Open
Real-world use cases
Break a Caesar or substitution cipher by hand
You have a block of ciphertext and no key. Paste it in, turn off spaces and punctuation so only letters count, and read the ranking. In English the runaway top letter is almost always the encoding of E, followed by T, A, O. Match the top ciphertext rows against e t a o i n and you have your first guesses. The percentage column shows which peaks are sharp enough to trust, and once you spot the shift that turns the top cipher letter into E, the Caesar key falls out.
Audit which symbols dominate a string or token
You are designing a slug, a password policy, or a coupon code format and want to know the real character mix of a sample. Paste a few hundred examples, keep punctuation on, and the table shows whether hyphens, underscores, or digits are pulling more weight than you expected. If one separator appears in 30 percent of positions, that is a pattern worth standardizing instead of leaving to chance.
Check letter distribution for a word game or font test
Building a Wordle clone, a typing drill, or a pangram check needs you to know how evenly letters are spread. Paste your word list and read the per-letter counts. A spread that leans hard on E and S while Q and Z barely appear tells you the difficulty is uneven. For a font specimen, counting confirms your sample actually exercises every glyph you mean to show off before you ship the page.
Count a specific character in Chinese or mixed text
A word counter cannot tell you how many times one Chinese character appears because Chinese has no spaces, but this counter can. Paste an essay, leave counting by code point as is, and search the ranked table for the character you care about. Writers use this to catch a repeated 的 or 了 that makes prose feel flat, and editors use it to measure how heavily a key term leans on a single character.
Common pitfalls
Leaving spaces counted when doing letter-frequency analysis. In normal prose the space is one of the most frequent characters, so it sits at the top of the ranking and pushes the letters you actually want down a row. Turn off count spaces before reading letter distribution or attacking a cipher.
Forgetting that case folding is on by default. If you are studying how often a capital letter is used, a folded count merges A into a and hides the answer. Turn on case-sensitive first, otherwise your uppercase and lowercase totals are silently added together.
Comparing raw counts across texts of different lengths instead of the percentage. The letter e appearing 40 times means very different things in a 200-character note and a 4000-character article. When you compare two texts, read the share column, not the count column, so length does not distort the picture.
Privacy
Counting, ranking, percentage math, and CSV copy all run as plain JavaScript in your browser tab. The text you analyze is never uploaded, never logged, and nothing records what you pasted. The one caveat is the shareable link, which encodes the first part of your text in the URL query string, so pasting a share link of sensitive text into chat will leave that text in the recipient server access log. For private or secret input such as ciphertext you must keep confidential, use the copy button instead of sharing the URL.
FAQ
Tool combos
Folks in your role tend to reach for these alongside this tool.
- 555 Timer Calculator Astable f = 1.44/((R1+2R2)C) + monostable t = 1.1RC — pick R1, R2, C in Ω/kΩ and µF/nF, read frequency, duty cycle and pulse width — browser-only
- AES Text Encryptor Encrypt & decrypt text with a password — AES-256-GCM + PBKDF2 via WebCrypto — 100% in your browser, nothing uploaded
- Affine Cipher Encoder & Decoder Encrypt and decrypt the ax+b affine cipher with live modular-inverse check, browser-only
- Age Difference Calculator The exact gap between two birthdays — years/months/days, percentage, and the date one person is twice the other's age — browser-only