Keyword Density Checker
Paste your draft and see what it's actually about — statistically. This checker tokenizes your text and counts every 1-word, 2-word, and 3-word phrase, showing the top 20 of each with raw counts and density (count ÷ total words). A stop-word filter strips the “the/and/of” noise so real topical phrases surface, and an optional target-keyword field reports exactly how often your intended phrase appears, highlights it in the tables, and flags densities above ~3% where repetition starts reading as stuffing. Use it as a diagnostic mirror: if your money phrase ranks below random two-word combinations, the page isn't saying what you think it's saying.
Paste some text above to see word counts, top 1–3 word phrases, and density percentages.
How to use the keyword density checker
- Paste your article or page copy — analysis runs instantly and caps at 50,000 words for very long texts.
- Leave the stop-word filter on to surface meaningful phrases; turn it off to audit everything.
- Switch between the 1-word, 2-word, and 3-word tabs — the multi-word tabs usually reveal more than single words.
- Enter your target keyword to see its exact count and density, with its row highlighted in the tables.
- Read the result as a diagnosis: a missing target phrase or one phrase above ~3% both signal a rewrite, not a tweak.
Density is a diagnostic, not a ranking lever
There is no density percentage that makes a page rank. Google's representatives have said for over a decade that keyword density is not a useful metric to optimize, and modern retrieval doesn't count repetitions linearly — term-weighting schemes in the BM25 family saturate, meaning the fifth occurrence of a word adds far less relevance signal than the first, and the twentieth adds almost nothing. Since systems like Hummingbird (2013) and BERT (2019), Google scores meaning, not string matches: a page can rank for “running shoes” while mostly saying “trainers” and “footwear.” What density can do is diagnose. If your target phrase appears zero times, the page probably never commits to its topic. If one phrase towers over everything else at 4–5%, the prose almost certainly reads like it was written for a crawler.
A worked example, with numbers
Take a 1,200-word article targeting “standing desk.” If the phrase appears 8 times, density is 8 ÷ 1,200 = 0.67% — typical of natural writing, where a topic phrase tends to land somewhere around 0.5–2% without anyone trying. If it appears 50 times, density is 4.17%: that's a phrase every 24 words, which a human reader registers as nagging long before a percentage proves it. The more interesting check is the 2- and 3-word tabs: a healthy article about standing desks will surface related phrases — “desk height,” “sit stand,” “monitor arm,” “lower back” — because covering a topic well drags its vocabulary along. If your top 20 bigrams are all brand boilerplate and calls to action, the page is thin on substance regardless of what the single-word counts say.
Where the obsession came from — and what high density signals now
In the late 1990s, engines like AltaVista really did weight raw term frequency heavily, and “optimal density” charts (the folkloric 2–3%) worked well enough that an industry formed around them. Google's link-based ranking eroded the trick, and the Panda update (2011) and the Helpful Content system (2022, now part of core updates) explicitly target content written to hit term quotas. Today, unnaturally high density is mostly a negative signal: keyword stuffing is named spam in Google's policies, and stuffed pages convert badly even when they rank. The modern playbook this tool supports: write naturally, confirm the target phrase actually appears a handful of times in important places (title, headings, opening paragraph), and check that related entities and phrasings show up in the 2–3 word tables — coverage, not repetition, is what correlates with ranking.
Frequently asked questions
What is the ideal keyword density for SEO?
There isn't one — no percentage target has been part of how Google ranks pages for many years. Natural writing about a topic usually lands its main phrase somewhere around 0.5–2% without trying, which is why this tool flags densities above ~3% as worth re-reading rather than prescribing a number to hit. Optimize for coverage and clarity, then use density to catch accidents.
How is keyword density calculated here?
Density = (number of times the phrase occurs ÷ total words in the text) × 100, for 1-, 2-, and 3-word phrases alike. A 2-word phrase appearing 12 times in a 1,000-word text shows 1.20%. Counting uses overlapping phrases on the tokenized word stream, so “new york city” contributes to “new york” and “york city” as well.
Is keyword stuffing still penalized?
Yes — keyword stuffing is explicitly listed in Google's spam policies, and pages written to hit term quotas are exactly what the Helpful Content signals (now folded into core updates) demote. In practice the bigger cost is human: stuffed copy reads badly, earns no links, and converts poorly. If this tool shows one phrase far above everything else, rewrite for the reader first.
Why do the 2-word and 3-word tables matter more than single words?
Single-word counts are dominated by generic vocabulary, even with stop words filtered. Multi-word phrases are where topics live: “keyword density,” “standing desk,” “tax filing deadline.” A well-covered topic drags its related phrases into the bigram and trigram tables naturally — and their absence is a faster thinness diagnosis than any single-word percentage.
What does the stop-word filter actually do?
For single words it hides ~90 common English function words (the, and, of, is…). For 2- and 3-word phrases it hides phrases that start or end with a stop word, so “of the best” disappears while “best standing desk” stays. Turn it off when you want a complete audit — for example, checking an exact-match phrase that begins with “how to.”
Why does the analysis cap at 50,000 words?
Counting every overlapping 1–3 word phrase in your browser scales with text length, and 50,000 words (a short book) is past the point where density numbers stabilize — sampling the first 50k tells you the same story as the whole text. If you paste more, the tool analyzes the first 50,000 words and shows a notice so you know the scope.
Related tools
- Keyword Combiner / MixerCombine up to 4 keyword lists into every permutation instantly — deduped, lowercased, and ready to paste into Google Ads or your SEO tool.
- PPC Keyword Wrapper (Match Types)Wrap keyword lists into phrase and exact match for Google Ads in one click — quotes and brackets, with negative variants and dedupe built in.
- SERP Snippet Preview & Meta Length CheckerPreview your Google snippet pixel-accurately and check title tag and meta description lengths before you publish — desktop and mobile views.
- Word Frequency CounterCount word frequency in any text — a sortable table of the most common words, two and three-word phrases, stopword filtering, and CSV export.
- Article Schema GeneratorGenerate Article, NewsArticle, or BlogPosting JSON-LD schema with author, publisher, and dates. Copy valid markup for Google article rich results.
- Conversion Rate CalculatorCalculate conversion rate from conversions and visitors, solve for the conversions or traffic you need, and get revenue per visitor from your AOV.