Keyword Density Checker
Paste your text to analyze word frequencies, n-gram phrases, and keyword density to check for SEO over-optimization.
Target Keyword Density
| Judgment | Keyword | Count | Density | Diagnosis |
|---|---|---|---|---|
| Enter target keywords to see their individual densities. | ||||
Top 20 Word Frequencies
| # | Word | Count | Density | Proportion |
|---|---|---|---|---|
| Enter text to display frequencies. | ||||
Korean particle (josa) processing uses heuristics, not a morphological analyzer. It removes common particles (e.g., 은/는/이/가/을/를/의/에서/으로) from the end of word units (eojel), which may cause errors with short words ending like particles. Use this for general trend analysis.
Density (%) = Count of word ÷ Total word units (eojel) × 100. While 1-3% is generally considered natural, there is no single correct answer. It is better to write naturally and use this tool for verification, rather than twisting sentences to meet a specific density.
What is the Keyword Density Checker?
How many times should you use a keyword in a blog post? Too few, and you send a weak signal to search engines. Too many, and your text becomes unreadable and looks like spam. This tool helps you find the right balance. Paste your text to instantly see a top-20 frequency list of single words, 2-word phrases, and 3-word phrases. You can track specific target keywords to monitor their density and get warnings if you go over the line. All analysis runs in your browser—your text is never sent to a server, keeping your drafts confidential.
How to use
- Paste your text into the 'Enter text' area, or drag and drop a .txt or .md file onto the page.
- Review the 'Top 20 Word Frequencies' table to see the most-used terms in your document.
- Click the '2-word phrase' or '3-word phrase' buttons to discover recurring expressions.
- Enter your main topics into the 'Target Keywords' box to see their specific density and diagnostics.
- If a keyword has a '⚠️' warning, reduce its repetition or replace it with a synonym to avoid over-optimization.
Keyword Density Checker guide
How this tool is used in real work, and what to watch out for.
Editing your article just to hit a density number is a mistake
Keyword density is a metric from an era when search engines saw documents as just a 'bag of words.' Today, search engines read context and search intent, so whether your article actually covers the topic is far more influential than how many times you used a specific keyword. For an article about 'Gangnam brunch cafes,' it's more important that related terms like 'waiting,' 'price,' 'menu,' and 'parking' appear naturally than it is to just count the main phrase.
Therefore, the correct way to use this tool is as follows. First, write a good article for human readers. Then, paste it here to check the stats. If the density looks odd, don't twist your sentences to fix it. Instead, swap in synonyms or reconsider whether that paragraph is truly necessary.
When to Toggle 'Remove particles (Josa)' and 'Exclude common words'
Both checkboxes are on by default. They are primarily for troubleshooting when your results look strange.
"Remove particles (Josa)" groups related words like 'cafe-is,' 'to-the-cafe,' and 'at-the-cafe' into the single word 'cafe.' It's not a true morphological analyzer; it just strips a list of common particles from the end of word units. We've added safeguards: it only works if at least two characters remain, and it doesn't touch word units shorter than three characters at all. Still, errors can occur with words that happen to end in a similar pattern to a particle.
"Exclude common words" removes words like 'thing,' 'can,' 'really,' 'is,' and 'do' that rank high in any article but are irrelevant to the topic. If your results table is empty, try turning this option off. Conversely, if a specific particle keeps appearing as a word, try turning 'Remove particles (Josa)' on.
| Symptom | What to Try |
|---|---|
| The table is empty. | Turn off "Exclude common words." For short articles, filtering may leave no words behind. |
| The same word is split across multiple rows. | Turn on "Remove particles (Josa)." This happens when variations like 'the cafe' (as an object) and 'the cafe' (as a subject) are being counted separately. |
| A valid word appears truncated. | Turn off "Remove particles (Josa)." This happens when a word that ends like a particle (e.g., 'like' or 'doing') gets clipped. |
| Numbers and single-letter words are missing. | This is by design. Single-character tokens and tokens containing only numbers are excluded as noise. |
Target Keyword Density and the Top 20 Frequencies are calculated differently
If the numbers in the two tables don't seem to match, it's not a bug—it's because they count things differently.
Target Keywords are found by searching for the exact string in the original text (substring match). This is because a phrase with spaces, like "Gangnam brunch cafe," can't be counted if we split the text into individual word units. This method correctly counts one instance of "Gangnam brunch cafe" even if it's followed by a particle, but it will find zero matches for "Gangnam's brunch cafe" where another word is inserted in the middle. You need to enter the keyword in the exact form you want to count.
The density calculation is weighted by the number of word units. A 3-word keyword that appears 5 times is treated as occupying 15 word units, not 5, and this total is then divided by the total word units in the text. This is done to compare a single-word keyword and a three-word phrase on a level playing field.
Use N-grams (2- and 3-word phrases) to Diagnose Your Writing Style
The 2-word and 3-word phrase tabs are more useful for identifying your own writing habits than for checking keywords. If phrases like "really good," "how to do," or "I personally" appear at the top, it's a sign that your entire article is repeating the same rhythm.
Here's a practical workflow: before publishing, open the 3-word phrase tab. If the top three results are all similar sentence patterns, rewrite half of them using different expressions. This makes the text more engaging to read and helps it look less like machine-generated content to search engines.
Clicking "Save CSV" downloads the top 20 results from the current tab as a UTF-8 CSV file with a BOM. This ensures characters open correctly in Excel without breaking. By exporting and comparing CSVs from several articles, you can get a clear view of topic distribution across different categories.
What This Tool Doesn't Count
- Text within images and alt text. The tool only counts the body text you paste. Actual search engines do read alt text.
- The weight of headings. A keyword in an H2 heading and a keyword in the middle of a paragraph are both counted as one occurrence. In reality, the heading is far more important.
- Synonyms and related terms. It sees "cafe" and "coffee shop" as two different words. Search engines understand the connection between them.
- Variations in spacing. "Gangnambrunchcafe" (no spaces) and "Gangnam brunch cafe" (with spaces) are counted as completely different things. Omitting spaces is a common practice on some blogs, so it's safer to add both variations to your target keywords list to check.
- Precise morphology. It doesn't group verb conjugations (e.g., eat/ate/eating). If you need academic or highly precise analysis, you should use a proper morphological analyzer.
Frequently asked questions
What is the ideal keyword density percentage?
While there's no magic number, 1-3% is often considered natural. This tool defaults to a 5% warning line, but it's best to write naturally and use it for verification.
What's the point of analyzing 2-word or 3-word phrases?
It reveals repetitive phrases you might use unconsciously, like "in order to" or "the best way to." This helps you vary your writing and make it more engaging.
How are 'words' and 'density' calculated?
Words are counted based on space-separated units (eojel). Density is a word's count divided by the total word count, then multiplied by 100.
Is the text I enter sent to a server?
No. All analysis happens directly in your browser. Your text is never uploaded or saved on a server, so your content remains completely private.