What the keyword density checker shows
Paste an article, a product description or the HTML source of a web page. The checker counts every word and lists the words and phrases you use most, each with its count and its percentage of all words. Switch between single words, two-word phrases and three-word phrases to see which topics stand out. Common words like "the" and "and" are left out by default, so the list starts with the words that carry meaning.
Type a target keyword to see its density and where it appears: in the title, the meta description, the first paragraph, the headings and the image alt texts. Click any word or phrase in the list to make it the target. Everything updates as you type, and long texts are counted in the background so the page stays responsive. For a plain count with reading time, use the word counter; for a full list of every word, sortable and ready to export, use the word frequency counter.
How keyword density is calculated
Say your text has 800 words and "packing list" appears 6 times. The density is 6 ÷ 800 × 100 = 0.75%. Each time a phrase appears counts once, however many words it has, and the total includes every word in the text, stop words and numbers too. Another way to count multiplies by the number of words in the phrase, which would give 1.5% here, so compare numbers from the same tool only.
Phrases are counted inside sentences and lines. "Hike. Simple" is not counted as the phrase "hike simple", and a heading never runs into the paragraph below it. Matching ignores case, treats curly and straight apostrophes as the same, and only matches whole words, so "list" does not match "listen". Two- and three-word phrases are listed when they appear at least twice, because a phrase used once is not a pattern.
What Google says about keywords
Google gives no ideal keyword density: neither its SEO Starter Guide nor its spam policies name a target percentage. Here is what Google Search Central does say:
- Keyword stuffing is spam. The spam policies define it as filling a page with keywords or numbers to manipulate rankings, and name repeating the same words or phrases so often that it sounds unnatural as one example.
- Use the words people search for. The SEO Starter Guide suggests thinking about the words a user might search for, and notes that experts and beginners may use different words for the same thing. It also says that repeating the same words over and over, even in variations, is tiring for users.
- Titles. The guide to title links asks for descriptive and concise title text, and says there is no reason to have the same words or phrases appear several times. It calls a title that repeats variations of one keyword a kind of keyword stuffing.
- Meta descriptions. The snippet guide says descriptions made of long strings of keywords are less likely to be shown as the snippet.
- Alt text. The image guidelines advise against filling alt attributes with keywords and call it keyword stuffing. Their best example is a short alt text that describes the image.
- Meta keywords. The starter guide states plainly that Google Search does not use the keywords meta tag, so this checker does not read it.
So use the numbers as a mirror, not a target. If your main phrase never shows up, the text may not say clearly what it is about. If one phrase sits far above everything else, read those sentences aloud and see whether they sound natural. The SERP snippet preview helps with the title and description once the text is right, and the heading structure checker shows the H1 to H6 outline of a page's HTML.
Checking a page's HTML
Open a page, view its source, and paste all of it. In Auto mode the checker notices the HTML and reads it the way a visitor sees it. Paragraphs, headings, list items, table cells, links and buttons count. Tags, attributes, comments, scripts, styles and anything marked hidden do not, and entities such as & are turned back into the characters they stand for.
The title, the meta description and the alt texts are listed under Page parts with their length. They do not count toward the density, because they are not part of the visible text, but each one is checked for your target keyword. Images with no alt attribute at all are counted too. Two limits are worth knowing: text that a site hides with a CSS class still counts, because the checker does not apply the site's style sheets, and text that JavaScript adds after the page loads is not in the source at all. Switch to Text if your input has angle brackets but is not HTML. Plain text with Markdown headings, lines that start with #, gets its headings listed as well.
Stop words and how words are counted
The stop word list has 246 common English words, such as articles, pronouns and helping verbs. It is the same list the word counter uses, and you can read it under the switch. Words are counted the same way across Freebiefy: a contraction like "don't" is one word, so is a hyphenated word like "well-known", a number like 3.5 or a web address. Numbers and web addresses count toward the total but are not listed as keywords. The list is made for English; for other languages, include stop words to see every word.
How to use the keyword density checker
- 1Paste your text or the HTML source of a page. Auto mode decides whether it is HTML; press Text or HTML to choose yourself.
- 2Read the most used words, then switch to 2 or 3 words to see phrases. Include stop words if you want every word.
- 3Type a target keyword, or click one in the list, to see its density and whether it is in the title, the headings and the first paragraph. Copy the report or download the list as CSV.
Frequently asked questions
What is a good keyword density?
There is no official number. Neither Google's SEO Starter Guide nor its spam policies name a target percentage, and the starter guide lists keyword stuffing among the things not to focus on. Use the density to spot a phrase you repeat far more than the rest, or a main topic that hardly appears, and then read the text as a visitor would.
How is keyword density calculated?
Density is how often a word or phrase appears, divided by the number of words in the text, times 100. A two-word phrase that appears 4 times in 400 words has a density of 1%. Each time a phrase appears counts once, whatever its length, and all words count toward the total, stop words and numbers included.
What does Google call keyword stuffing?
Google's spam policies describe keyword stuffing as filling a page with keywords or numbers to manipulate rankings in Google Search, often in lists or groups, unnaturally or out of context. Its examples are lists of phone numbers without real added value, blocks of text listing the cities and regions a page wants to rank for, and repeating the same words or phrases so often that it sounds unnatural.
Which parts of my HTML are counted?
Only the text a visitor sees on the page: paragraphs, headings, lists, links, tables and buttons. Scripts, styles, comments, tags and elements marked hidden are left out; text hidden only by a CSS class still counts. The title, the meta description and image alt texts are not visible text, so they are listed separately and checked for your target keyword, but they do not count toward the density.
Why are stop words left out?
Words like "the", "and" or "it's" say little about the topic of a text, and when they are counted they tend to fill the top of the list. Without stop words, single stop words are hidden and a phrase may not start or end with one, so "packing list" shows up but "the packing" does not. Switch them on to see every word.
Why does the word count differ from other tools?
Tools count words differently. This checker counts exactly like the Freebiefy word counter: contractions such as "don't" and hyphenated words such as "well-known" are one word, numbers count as words, and a web or email address is one word. Languages without spaces, such as Chinese or Japanese, are split with the word rules built into your browser.
Is my text uploaded?
No. The text and the HTML are read in your browser and nothing is sent to a server. Pasted HTML is parsed without running its scripts or loading its images. Copy link saves only your settings, never your text or keyword.