Keyword Density Analysis
Paste text to analyze word frequency: 1-, 2- and 3-grams with percentages. Identify keyword stuffing or gaps.
Keyword Density Analysis — N-gram Frequency
Analyze keyword frequency in text: single words, two- and three-word phrases. Percentages, stopword filtering and SEO recommendations for optimal density.
How to Use
- Paste the page text (20+ characters) into the box
- Review frequency tables for each n-gram type
- Optimize content by recommendations (2-3% for main keyword)
FAQ
How this keyword density checker calculates density
Keyword density is the share of a term among all the words in a text: occurrences ÷ total words × 100%. If an article has 600 words and "espresso" appears 12 times, its density is 2%. Before counting, the checker lowercases the text and turns punctuation into spaces. The total includes every word, stop words too; the tables don't — common English and Russian stop words ("the", "and", "of", "for", "with"…) and one-letter words are filtered out so the list isn't topped by filler.
You get three tables: the 30 most frequent words, up to 20 two-word phrases and up to 15 three-word phrases. Phrases appear only if they occur at least twice. The bar next to each word is colour-coded by density: green up to 2.5%, yellow from 2.5% to 4%, red above 4%. "Diversity" at the top is unique meaningful words as a share of all words — the lower it is, the more repetitive the text.
How phrase density is calculated
Two- and three-word phrases are built after stop words are removed. So "price of the espresso machine" is counted as "price espresso machine", and a phrase can bridge a full stop, joining the end of one sentence to the start of the next. Phrase density uses the same formula — phrase occurrences ÷ total words. Some keyword density tools multiply that by the number of words in the phrase; this one doesn't, so phrase percentages here will look lower than in those tools. Compare like with like.
What is a good keyword density?
Google has never published one. Its spam policies define keyword stuffing as filling a page with keywords or numbers in an attempt to manipulate rankings — with no percentage attached — and Google has said repeatedly that there's no ideal density to aim for. The 1–3% guideline for a main term is SEO folklore, and the colours in the table are a rough heuristic rather than a verdict:
- Your main keyword is red — read the text aloud. If the repetition sounds unnatural, cut it back.
- A generic word is red ("company", "our", "services", "best") — a sign of boilerplate copy worth rewriting.
- Your main keyword isn't in the top ten — the text may not be about what you think it is. That's a bigger problem than over-optimisation.
Length matters. In a 300-word product description one extra mention adds 0.33%, so short copy turns red easily. In a 3,000-word guide, 2% means 60 mentions — already heavy for natural writing.
How to check keyword density on your own page
- Copy only the main content. The checker analyses pasted text; it doesn't fetch URLs. Navigation, footer and sidebars repeat across the site and skew the result. Reader mode in your browser is a quick way to grab just the article.
- Look at the top ten words. They should describe the page's topic. If "shipping", "warranty" and "contact" outrank "espresso", the page is dominated by template text.
- Study the two-word phrases. They're closer to real search queries. Ideally you'll see the main query and its variations: "espresso machine", "manual espresso", "milk frother".
- Compare with the pages that rank. Paste the text of two or three top results for your query. Don't chase their percentages — look for subtopics they cover and you don't. Those are content gaps.
- Check placement separately. Density says nothing about where a keyword sits. Make sure the main query appears in the title tag, H1 and opening paragraph — the meta tag checker shows the first two at a glance.
What to look for on different page types
| Page | What to check |
|---|---|
| Product page (100–300 words) | The model name easily turns red — that's normal for short copy. What matters is that specs and use cases make the top of the list, not "buy" and "shipping". |
| Category page | Category copy is often written for a keyword and overloaded with it. If the main term is above 4% and everything else is product names, the text adds nothing to the listing — rewrite or trim it. |
| Blog post or guide (1,000+ words) | The main query typically lands around 0.5–1.5%. The two-word phrases should reveal subtopics; if there are none, the article is probably thin. |
| Service landing page | Red bars on "we", "our team", "professional" mean the copy is about you rather than the customer's problem. |
These figures are observations, not rules. Your best benchmark is always the set of pages already ranking for your query.
What the counts don't merge
- No stemming. "Machine" and "machines", "brew", "brews" and "brewing" are counted separately. Add up the forms yourself for the real total.
- Hyphens and apostrophes split words. "E-commerce" becomes "commerce" (the single "e" is dropped), "don't" becomes "don". Keep that in mind when you look for compound terms.
- Numbers count as words. Years, prices and model numbers appear in the table alongside text.
- Stop words cover English and Russian only. For German, French or Spanish text, articles and prepositions will show up in the word list — just skip them.
Signs of keyword stuffing — and how to fix it
Stuffing is obvious without any percentages: the same phrase in every paragraph, blocks of city names or synonyms nobody reads, ungrammatical exact-match phrases like "best espresso machine cheap UK" dropped into a sentence. To fix it:
- replace some repeats with pronouns and descriptive references ("it", "this model", "the machine");
- delete keyword lists and "we serve these cities" blocks — the ranking upside is long gone, the risk isn't;
- cover the topic more fully: answers to real questions, specs and comparisons naturally dilute the keyword with related vocabulary;
- check whether another page on your site targets the same query — the keyword cannibalization checker finds this from Google's data.
Beyond keyword density
Density is a blunt metric: it sees repetition, not meaning. To see whether word frequencies in a text look natural, run it through the Zipf's law analyzer — in natural writing frequencies fall off smoothly, while in over-optimised copy a few words spike. For why density is still worth a look and how not to overdo it, see keyword density: why check it today.
RankBotAI — AI SEO Optimization for WordPress
RankBotAI AI plugin automatically finds and fixes SEO issues in WordPress products and posts — no manual editing.