← Toolz / Text & SEO / Keyword Density Checker

Keyword Density Checker

SEO·01
0 words · 0 characters • Live analysis on
Target keywords
Options
Ignore stop words
Include 2 and 3 word phrases
Case sensitive
Count words inside HTML tags
Language
Preset

Presets only adjust the guide bands used for status labels — they never change the counts.

Words

—

Unique words

—

Reading time

—

Readability

—

Avg sentence

—
Target keywords
KeywordCountDensityTitleH1First 100 wordsStatus

Status is a guide, not a Google rule. There is no ideal density, so write for readers first.

Top phrases
Insights
Where keywords appear (start to end)
StartMiddleEnd
Word cloud
Compare with a competitor or another version

Densities for your target keywords, counted with the same options on both texts.

KeywordYoursOther
Saved versions (this browser only)

Versions are stored only in this browser (localStorage) and are never uploaded. Click a version to restore its text, keywords and options.

Export report

Everything stays in your browser. Your text is never uploaded — analysis runs entirely on this device.

See how often each keyword appears in a block of text.

100% free · No sign-up · No daily limits · No watermarks

UNDERSTAND YOUR RESULTS

Keyword Density Checker — Free Text Analysis guide

Analyze many target keywords at once: paste text or page HTML, fetch a public URL, or upload a .txt, .md or .html file. Review counts, densities, Title / H1 / first-100-words placement, phrase tables, distribution and readability, then export the report as CSV, text, Markdown, JSON or PDF.

📖 From the blog: Checking keyword density — and why chasing a percentage is a mistake

How to use this tool

  1. Choose an input: paste text or HTML, fetch a public URL, or upload a .txt, .md or .html file. Analysis updates live as you type; Analyze now (Ctrl+Enter) forces a refresh.
  2. Add your target keywords as chips, choose the language used for stop words, and pick a preset — Blog post, Product page or Local SEO. Presets only change the guide bands behind the status labels; they never change the counts.
  3. Read the target table (count, density, Title, H1 and First 100 words, status), then work through the tabs: Keywords for the full 1, 2 and 3 word phrase tables, Placement for the detail, Distribution to see where keywords cluster, Compare against a second text, and Headings for the H1–H6 outline.
  4. Save versions in your browser to compare revisions, and export the report as CSV, text, Markdown, JSON or a PDF report.

A worked example

A keyword occurring three times in 100 counted words has a simple occurrence-to-word density of 3%. A two-word phrase occurring 7 times in 320 counted words has a density of 7 ÷ 320 = 2.19%. Phrase length, punctuation and the tool’s matching rules can affect comparisons.

Checking for keyword stuffing with this tool

Keyword stuffing is repeating a word or phrase so often that the text stops reading naturally — Google's spam policies describe it as filling a page with keywords in a way that manipulates ranking rather than helping readers. There is no official "safe percentage": a phrase can be fine at 3% in a product spec and stuffed at 1.5% in a blog intro. What gives stuffing away is pattern, not a single number, and the tables above show you that pattern:

  1. Check the 2-word and 3-word phrase tables first. Stuffing hides in phrases, not single words. If one exact phrase makes up a visible slice of your text — say a 500-word page where a single 3-word phrase appears 25 times (75 of your 500 words, 15% of everything on the page, is that one phrase) — it will read as stuffed no matter what the single-keyword density says.
  2. Look at placement. The placement detail shows where a phrase clusters. A keyword repeated in every heading, the first line of every paragraph and every image caption is a stuffing pattern even at a modest overall density.
  3. Read the sentence, not the number. If a sentence only exists to carry the phrase one more time, delete the phrase and see if the sentence still earns its place. If it doesn't, that occurrence was stuffing.

To fix a flagged phrase: keep the first natural mention, then switch to pronouns ("it", "this tool"), synonyms, or the specific detail the reader actually needs ("the 500-word draft" instead of "the blog post" for the fourth time). Re-run the checker after editing — the phrase count should fall while the page still says everything it said before.

What you can do with this tool

How it works

The checker extracts the visible body text from pasted HTML — scripts and styles are ignored, and the page title is checked separately rather than counted — splits it into words made of letters and numbers, and counts every 1, 2 and 3 word phrase. Density is occurrences ÷ counted words × 100. Options can ignore common stop words per language, match case exactly, or also count words inside HTML tags (the page title, meta description and alt / title / placeholder / aria-label values) as extra text after the body. Readability is the Flesch Reading Ease score, 206.835 − 1.015 × (words ÷ sentences) − 84.6 × (syllables ÷ words), and reading time assumes about 200 words per minute.

Frequently asked questions

How do I check keyword density?

Paste your content (or fetch a URL or upload a file), add your target keywords, and read the count and density in the target table. Review the context of each use too; a percentage alone cannot show whether the writing is helpful.

What is the best keyword density for SEO?

There is no guaranteed ideal percentage. Use the term where it helps readers understand the subject, and use related concepts naturally rather than forcing repetitions.

Can I check a web page URL?

Yes — use the URL input. The page is fetched and loaded into the editor, so you can review exactly what was analyzed. If the site blocks fetching, paste its visible text or page HTML instead. Do not assume an empty result means the page contains no keywords.

Why do different density tools give different results?

They may count punctuation, phrases, navigation and word forms differently. This checker counts letter-and-number words in the visible body text; use the same input and settings when comparing revisions.

Can I export my analysis?

Yes — copy a readable report, or download CSV, text, Markdown or JSON, or print a PDF report. Keep a copy alongside your draft to compare changes.

What does “Count words inside HTML tags” do?

It also counts words found in the page title, the meta description and alt, title, placeholder and aria-label attribute values, as extra text after the body. It is off by default, matching what a reader sees.

Is the text I paste uploaded anywhere?

No. The live page states that analysis runs entirely on this device and your text is never uploaded. Saved versions are stored only in this browser's local storage, so they stay on this device and disappear if you clear browser storage. Fetching a public URL is the exception in kind: the page has to be loaded into the editor for you to review what was analysed.

What density should I aim for to rank better?

There is no universal target percentage that guarantees rankings, and the status labels here are guides, not Google rules. Forcing a phrase in unnaturally to hit a number can make the page worse to read. Check instead that the term appears where it helps — title, headings and the first 100 words are shown in the target table — and that the page actually answers the reader's question.

Is there a keyword density I should aim for?

No. No search engine publishes a target density, and pages written to hit one usually read worse than pages written for the reader. Use the density figure diagnostically: if one phrase's count surprises you, that surprise is the signal.

Can this tool tell me if my page is penalised for stuffing?

No tool can see a penalty. What this checker shows is the raw material a stuffing judgement is made from — exact phrase counts, density and placement — so you can spot and fix the pattern yourself.