Keyword Density Checker
Count target keywords, inspect repeated phrases up to 20 words, and compare two pasted texts.
Also try: Word Counter · Reading Time · Speaking Time
Runs locally in your browser. Nothing is uploaded or sent to a server.
Paste content into Text to analyze to get keyword counts and density percentages automatically. Use at least five counted words to display the main results, or choose Upload .txt to read a local text file. Enter up to 50 target keywords together, inspect repeated phrases from 1 to 20 words, or compare two pasted texts. Density divides occurrences by counted words, including stop words. Analysis runs on-device, and Download CSV saves the result tables.
Updated
Related Tools
Readability Checker
Compare six readability formulas and find long sentences in pasted text or a local .txt file.
seo-toolsUTM Builder
Build bulk campaign links with nine UTM fields, reusable JSON templates, and a GA4 channel pre-check.
text-toolsWord Counter
Count your draft with optional citation and parenthesis exclusions, then track a word goal.
text-toolsEssay Word Counter
Count essay words, exclude detected citations, set a goal, and highlight long sentences on-device.
seo-toolsSchema Markup Generator
Build JSON-LD with nine schema forms, import existing markup, and edit linked graph nodes.
How do you check keyword frequency and build a bulk keyword report?
Paste the text you want to inspect into Text to analyze. Enter your target list in Target keywords (one per line or comma-separated) to get a count and density for each term. The list accepts up to 50 distinct entries, including phrases. This answers a bulk keyword check for one document; it does not crawl a set of URLs or produce search ranking reports.
For a reproducible example, paste seo tools help writers seo tools improve drafts. There are eight counted words. Add seo, seo tools, and drafts as targets. Density uses occurrences ÷ counted words × 100, even for a multi-word phrase. It does not multiply the phrase count by the number of words in the phrase.
| Target | Count | Calculation | Density |
|---|---|---|---|
| seo | 2 | 2 ÷ 8 × 100 | 25% |
| seo tools | 2 | 2 ÷ 8 × 100 | 25% |
| drafts | 1 | 1 ÷ 8 × 100 | 12.5% |
Frequency is the raw Count value; density makes that count relative to document length. Click Count in the target table to cycle through descending order, ascending order, and original list order. Targets that differ only in capitalization are deduplicated. A target missing from the text still gets a row with zero occurrences, which helps review a supplied list without relying on the top-keyword table.
Which words count toward the density percentage?
The standard tokenizer converts text to lowercase, keeps Unicode letters and numbers, and replaces most punctuation with spaces. It preserves internal apostrophes and hyphens, removes them from token edges, and discards tokens of one character. For example, I use on-device seo/tools produces four counted tokens: use, on-device, seo, and tools in that order. Add another counted word before expecting the main results to appear.
The main results require at least five counted words. If a document contains many single-letter words, its total can differ from a simple whitespace count. Use Word Counter for a separate text-length review, but keep this checker's displayed total as the denominator when verifying its percentages. Neither changing the minimum word length nor filtering stop words recalculates that denominator.
Filter stop words is checked initially and uses an English list. The initial minimum word length is two characters and the minimum frequency is one occurrence. The keyword table shows up to 20 entries in descending count order. Custom exclusions accept comma-separated or newline-separated words; they apply even when the built-in stop-word filter is disabled. These controls decide which terms appear, rather than removing those terms from the source text.
How do standard phrases differ from custom 20-word phrases?
The 2-word Phrases, 3-word Phrases, and 4-word Phrases tabs use the standard counted tokens. Each shows up to ten phrases appearing at least twice, or at your higher minimum frequency. A phrase is excluded when every token is a stop word. Stop words inside a mixed phrase remain in place; filtering does not join the words on either side of them.
The custom tab starts at five words and accepts lengths from 1 to 20. It uses a separate scan that retains stop words and single-character tokens. It splits sentences on periods, exclamation marks, and question marks when followed by whitespace or the end of the text. Standard phrase tabs do not make that sentence split, so their results can differ from custom results at the same length.
For example, paste we make a useful guide. we make a useful guide. and keep the minimum frequency at one. The custom five-word scan finds we make a useful guide twice, including the single-letter word. The standard tokenizer drops that letter, so it cannot report the same five-word sequence. Custom results require at least two occurrences and show up to 20 phrases. Use this view to locate repeated passages, then inspect whether they belong in the document.
What do the density colors and status labels mean?
The main keyword badges are green at 2% or below, yellow above 2% through 3%, and red above 3%. The target table distinguishes zero matches, below 1%, 1–2% labeled Optimal, above 2% through 3% labeled High, and above 3% labeled Stuffing risk. These are fixed interface thresholds applied to the calculated percentage, not a ranking measurement or an evaluation of writing quality.
In the eight-word example, 25% triggers the highest target warning because the denominator is small. That warning alone does not explain whether the sentence is useful or repetitive. Read the surrounding text before editing. Click a keyword row to highlight it in the preview, or use multi-highlight to mark up to five leading keywords together. Pair the counts with Readability Checker when reviewing how the draft reads.
How do you compare two texts and export the results?
Enable Compare with a second text and paste the other document into Text B (for example a competitor page). The main input is Text A. Comparison supports single words, two-word phrases, and three-word phrases, with up to 20 results for each selected length. Results sort by the largest absolute density difference. Delta is density B minus density A: 5% in A and 8% in B gives +3 percentage points.
A term gets missing in A when its count in A is zero and its count in B is at least two. This is a literal occurrence check within the supplied content. The tool does not fetch a page from its URL, check keyword positions in search results, or identify topics that a ranking system expects. Paste comparable portions of both documents if you want the percentages to describe similar content.
Copy Keywords copies the current tab's rows as tab-separated text. Download CSV saves the standard keyword and phrase tables plus available target, custom phrase, and comparison sections. The CSV uses UTF-8 with a byte order mark. Analysis runs in browser code; Upload .txt reads a selected local text file with FileReader, and CSV download uses a locally created Blob.
How to Use Keyword Density Checker
-
Text to analyze
Paste your content into Text to analyze, or choose Upload .txt. The main results appear with at least five counted words; single-character tokens do not count toward that total.
-
Filter stop words
Keep Filter stop words checked to exclude built-in English stop words from keyword results. Adjust Minimum word length and Minimum frequency if needed; these filters do not shrink the density denominator.
-
Target keywords (one per line or comma-separated)
Enter up to 50 distinct keywords or phrases. Read Count, Density, and Status for each entry, and click Count to sort the target table.
-
Custom phrase length (words)
Open the Custom 5-word tab, then change Custom phrase length (words) to a value from 1 to 20. Review phrases that meet the repetition threshold.
-
Download CSV
Optionally enable Compare with a second text and paste Text B (for example a competitor page). Choose Download CSV to save the standard tables and available target, custom phrase, and comparison results.