Skip to content
FileKit
Web And SEORuns in your browser6 min read

Keyword Density Checker

This keyword density checker analyses pasted text or HTML content and reports how often every one, two and three word phrase appears, alongside its density as a percentage of total words. Paste an article body, strip out the boilerplate with the built in HTML mode, and see exactly which phrases dominate the page, intentionally or not.

Loading the tool interface
Files never leave your deviceNo upload wait and no queueNo signup, watermark or file limit

Keyword density is a diagnostic, not a target to hit. It exists to catch two failure modes: content so thin or so generic it never repeats its actual subject at all, and content so aggressively optimised that a phrase appears far more often than natural writing would produce, a pattern search engines have penalised for two decades under the general heading of keyword stuffing. Neither extreme reads well to a person, which is usually the more reliable signal to write for in the first place.

Everything runs locally. A draft that has not been published, or content from a client project under embargo, never leaves your browser to be analysed. Used on its own it works as a general keyword frequency analyzer across the whole page, and the dedicated target keyword analysis field narrows that down to one phrase you actually care about.

Why density is measured for one, two and three word phrases

Single word frequency alone misses almost everything useful, since the words that repeat most in any piece of writing are usually function words like the, and and to, which carry no topical meaning. Filtering those out with a stop word list gets single word counts closer to useful, but real search phrases are rarely one word, they are two or three word combinations like content marketing or email newsletter signup.

This tool counts all three lengths side by side as a genuine phrase density tool rather than a single word counter with extra steps. Two and three word phrase density typically tells you far more about what the page is actually about than single word counts do, since a phrase like content marketing strategy is specific in a way that content, marketing and strategy individually are not.

The stop word filter, and what it deliberately leaves in

The built in stop word filter removes common function words, articles, pronouns and conjunctions, the, a, an, and, of, to, in and similar, from the single word frequency list, since counting them adds noise without adding insight. It does not touch two and three word phrases, because a stop word inside a meaningful phrase is often necessary for the phrase to make sense, for example how to and best of are common, useful phrasings that a naive filter would otherwise mangle by stripping the small words out of the middle.

This distinction matters for accuracy. A filter aggressive enough to strip stop words from every phrase length ends up erasing the exact multi word phrases that actual searches are built from, which defeats the purpose of a phrase level check in the first place.

Checking a specific target keyword against your content

Beyond the general frequency table, this tool includes a dedicated target keyword field. Enter the phrase you are writing the page around and it reports the exact count and density for that phrase specifically, plus where in the text it first appears, since a target phrase that only shows up deep in the content carries less weight than one present in the opening paragraph.

There is no single correct density number to aim for, and any tool that claims otherwise is oversimplifying a problem that depends heavily on content type and length. As a practical range, most well written, naturally optimised pages land somewhere between 0.5 and 2.5 percent for their primary phrase, with the exact number mattering far less than whether the writing still reads naturally out loud.

  • Below roughly 0.5 percent, the content may not clearly signal what it is about.
  • Between roughly 0.5 and 2.5 percent is a common range for naturally written, well optimised content.
  • Above roughly 3 percent, check whether the phrase is being repeated more than natural writing would produce.
  • Read the flagged sentences aloud. Density numbers are a proxy, not a replacement for that simple test.

Analysing HTML instead of plain text

Pasting raw HTML into a plain text analyser corrupts the result, since tag names, attribute values and script content all get counted as if they were part of the readable article, inflating or distorting the real word and phrase counts. This tool's HTML mode strips tags, style and script blocks, and common boilerplate elements like navigation and footer content before counting, so the numbers reflect what a visitor would actually read rather than what is present in the underlying markup.

This matters most when analysing a live competitor page, where copying directly from view source is far faster than manually selecting only the visible article text, and where navigation menus, cookie notices and footer links would otherwise pad out phrase counts with irrelevant repetition.

How this keyword density checker counts phrases

Text is split into individual words using boundaries defined by whitespace and punctuation, then every consecutive run of one, two and three words is counted as a distinct phrase occurrence, a method known as an n-gram count. Density for any phrase is calculated as its occurrence count multiplied by the number of words in the phrase, divided by the total word count of the content, expressed as a percentage.

This is the same calculation method search engines and SEO tools generally use when the concept of keyword density comes up, which keeps the number this tool reports comparable to figures you may see referenced elsewhere, including in an SEO auditing checklist or a content brief.

Rough density bands for a primary phrase
DensityInterpretation
Below 0.5%Topic may not be clearly established
0.5% to 2.5%Typical range for natural, well optimised content
Above 3%Check for unnatural repetition or keyword stuffing

How to use the keyword density checker

  1. 1

    Paste your text or HTML

    Paste plain text, or switch to HTML mode to paste raw markup and have tags and boilerplate stripped automatically.

  2. 2

    Review the phrase frequency tables

    Check the one, two and three word phrase tables, sorted by density, to see what the content is actually emphasising.

  3. 3

    Enter a target keyword

    Type the specific phrase you are writing around to see its exact count, density and first appearance.

  4. 4

    Adjust and recheck

    Rewrite any section that under or over uses the target phrase, then paste the updated text back in to confirm the change.

Related tools worth bookmarking

Sources and further reading

Frequently asked questions

Common questions about the keyword density checker.

There is no single correct number, but most naturally written, well optimised content for a primary phrase lands somewhere between 0.5 and 2.5 percent. Density much lower than that can mean the content never clearly establishes its topic, while density much higher often means a phrase is being repeated more than natural writing would produce, which risks reading as keyword stuffing.

Yes, when it crosses into keyword stuffing, a pattern search engines have specifically targeted for years because it produces a worse reading experience while trying to manipulate rankings. There is no fixed percentage that triggers a penalty, but content that repeats a phrase unnaturally often, in a way a human reader would notice, is the kind of pattern to avoid regardless of the exact number.

Stop words like of, to and the carry no topical meaning on their own, so filtering them from single word counts removes noise. Inside a two or three word phrase, though, a stop word is often structurally necessary, as in how to or best of, and stripping it out would break the phrase rather than clean it, which is why this tool leaves multi word phrases intact.

Yes. Switching to HTML mode strips tags, style and script content along with common boilerplate such as navigation and footer sections before counting, so the reported density reflects the visible article text a reader would actually see, not the raw markup underneath it.

Both, but for different reasons. Checking the exact target keyword tells you whether the specific phrase you are optimising for appears often enough and early enough. Reviewing the general phrase frequency tables separately shows what the content emphasises overall, including natural variations and related phrases a strict exact match check would miss entirely.

It remains useful as a diagnostic, specifically for catching content that never mentions its actual topic and content that repeats a phrase unnaturally, but it stopped being a primary ranking lever a long time ago. Modern search engines evaluate meaning and context far more than raw phrase repetition, so treat density as a sanity check on the writing, not as a score to maximise directly.