Keyword Difficulty Scores: What They Measure and What They Miss
Keyword difficulty scores measure backlinks, not your odds. Here's how Ahrefs, Semrush and Moz calculate KD, and what none of them tell you.

A keyword difficulty score is a 0–100 estimate of how hard it will be to rank in Google’s top 10 for a given term, built almost entirely from one signal: how many backlinks the current top-ranking pages have. Ahrefs, Semrush, and Moz each run their own version of this math, so the same keyword can show KD 35 in one tool and KD 58 in another. That’s not a bug — it’s three different formulas measuring a similar thing with different inputs. The bigger issue is what none of them measure: your own site’s authority, whether your content actually matches search intent, and whether the SERP has room for a tenth blue link at all.
If you’ve ever picked a “low difficulty” keyword and still failed to rank after six months, this is usually why. The score told you about the competition. It didn’t tell you about the page you were about to write, or the featured snippet sitting above position one.
What Is a Keyword Difficulty Score, Exactly?
Keyword difficulty (KD) is a proprietary index, not a Google metric — Google has never published a “difficulty” number for any query. Each SEO tool builds its own by looking at the pages currently ranking in the top 10 and scoring how entrenched they are, usually by counting referring domains and backlinks. The output gets normalized to a 0–100 scale so you can compare “email marketing tools” (hard) against “email marketing tools for a 5-person team” (easier) at a glance.
The number is a proxy, not a prediction. It answers “how link-heavy is the current top 10?” — a reasonable stand-in for difficulty, since backlinks remain one of the few ranking factors Google has confirmed matters. It does not answer “will my specific page rank?” That’s a different question, and it needs different inputs.
How Does Ahrefs Calculate Keyword Difficulty?
Ahrefs keeps its formula deliberately narrow. It pulls the top 10 ranking URLs for a keyword and counts how many unique websites link to each one, then plots the result on a logarithmic 0–100 scale. More referring domains pointing at the current top 10 means a higher KD. Ahrefs has been explicit that it sticks to backlinks because they’re one of the only ranking factors that’s both confirmed and reliably measurable at scale — word count, page speed, and content depth are harder to quantify consistently across millions of pages.
The tradeoff: a keyword can score KD 20 in Ahrefs and still be brutally competitive if the top 10 is stacked with pages from DR 90 sites that happen to have thin backlink profiles for that specific query but massive domain-wide authority.
How Does Semrush’s KD% Differ From Ahrefs?
Semrush’s Keyword Difficulty percentage pulls in more than 100 ranking parameters, though the core formula still leans on the median number of referring domains across the top 10, the ratio of dofollow to nofollow links pointing at those pages, and the median Authority Score (Semrush’s version of domain strength). It also factors in keyword-level traits — search volume, word count, whether the term is branded, and which SERP features (featured snippets, People Also Ask, shopping results) are showing up — then applies regional weighting based on which country database you’re searching in. Semrush also lets you plug in your own domain to get a personalized difficulty estimate, which is closer to answering “can I rank” than a generic score.
How Does Moz Calculate Keyword Difficulty?
Moz’s Keyword Difficulty score is built primarily around Domain Authority and Page Authority of the ranking URLs — Moz’s own link-based authority metrics, plotted against how many of the top 10 spots are held by high-DA root domains. Moz added a Priority score that blends difficulty with search volume and an organic CTR estimate (accounting for SERP features that eat into clicks), and a search-intent tag on top of that. Moz’s index is smaller than Ahrefs’ or Semrush’s, which shows up most on long-tail and newer keywords where its data can lag behind or come back blank.
How the three tools actually differ
- Ahrefs KD: Backlinks and referring domains to the top 10 only, on a 0–100 log scale. Simplest formula, most transparent about its one input.
- Semrush KD%: 100+ parameters, but weighted toward referring domains, dofollow ratio, Authority Score, and SERP features. Offers a personalized score if you enter your domain.
- Moz KD: Domain Authority and Page Authority of ranking pages, paired with a separate Priority score that adds volume, CTR potential, and intent. Smaller index, weaker long-tail coverage.
- None of the three: factor in your site’s topical authority, your content’s match to search intent, or how many organic clicks are left after SERP features take their cut.
Why Do Ahrefs, Semrush, and Moz Give the Same Keyword Different Scores?
Because they’re not measuring identical things. Ahrefs counts raw referring domains. Semrush blends referring domains with dofollow ratios, Authority Score, and SERP-feature data, then applies country-level weighting. Moz leans on its own Domain Authority metric, which is calculated differently from either. Run “project management software” through all three and you’ll likely see three different numbers — sometimes 15–20 points apart. None of them is wrong. They’re separate models built on separate link graphs and separate authority formulas, so treat the number as directional within one tool, not as a portable score you compare across platforms.
| Tool | Primary inputs | Scale | Personalized to your domain? |
|---|---|---|---|
| Ahrefs | Referring domains to top 10 URLs | 0–100, logarithmic | No |
| Semrush | Referring domains, dofollow ratio, Authority Score, 100+ SERP parameters | 0–100% | Yes, optional |
| Moz | Domain Authority / Page Authority of ranking pages | 0–100 | No (separate Priority score adds context) |
What Do Keyword Difficulty Scores Actually Miss?
Four things, consistently, across every tool on the market.
Your own site’s authority. A KD 25 keyword is a different bet for a 6-month-old site with 40 referring domains than for a 5-year-old site with 4,000. Only Semrush’s personalized mode even attempts to adjust for this, and it’s still an estimate, not a guarantee.
Search intent match. A KD score has no idea whether your draft answers the query the way searchers actually want it answered. A page targeting “keyword difficulty” with a 400-word definition won’t outrank a page with a working example and a comparison table, regardless of what the difficulty number said going in.
SERP real estate eaten by non-organic results. Featured snippets, People Also Ask boxes, shopping carousels, and — increasingly — AI Overviews can push the traditional top 10 further down the page or shrink it entirely. SparkToro’s 2024 clickstream study, using Datos panel data, found 58.5% of U.S. Google searches ended without a click to any website, and 59.7% in the EU. A keyword can carry a friendly KD score and still send a small fraction of its search volume to any organic result, ranked first or not.
Content quality and depth. None of the three tools crawl your draft before scoring the keyword. KD is calculated from the SERP as it exists today, not from any judgment about whether your content is good enough to earn a spot in it.
Can You Trust a Low Difficulty Score?
Trust it as a starting filter, not a green light. A KD under 20 tells you the current top 10 doesn’t have a wall of heavily-linked pages guarding it — genuinely useful information when you’re triaging a list of 200 keywords down to the 20 worth writing about first. What it doesn’t tell you is whether those low-KD pages are ranking because they’re thin and beatable, or because the query itself is low-value and nobody bothered building a strong page for it in the first place. Check search volume and the actual ranking pages before you commit — sometimes a KD 10 keyword sits there because it gets 20 searches a month and nobody cares.
How Should You Use Keyword Difficulty When Choosing Keywords?
- Pull the KD score as a first-pass filter, not a final decision — sort your list from lowest to highest and work down.
- Open the actual top 10 for anything you’re seriously considering. Look at content length, format, and how recently pages were updated.
- Check search volume and trend alongside difficulty — a low-KD keyword with 10 monthly searches rarely justifies a full article on its own.
- Scan the SERP for features that eat clicks: featured snippets, AI Overviews, People Also Ask boxes stacked three deep, shopping results.
- Weigh your own domain’s authority against the referring-domain counts on the current top 10 — a KD score built on someone else’s link profile isn’t a promise about yours.
- Match the format to intent before you write a word — a comparison query needs a table, a how-to needs steps, a definitional query needs an answer in the first 100 words.
This is the same filtering logic we walk through in our full keyword research process — difficulty is one column in a bigger scoring sheet, never the only one. If you’re building that list from scratch, start with a solid set of seed keywords before you run anything through a difficulty checker, since a difficulty score on a badly-chosen seed term wastes the check. And because the free and paid tools don’t always agree on either volume or difficulty, it’s worth cross-referencing more than one — we cover the free options in our piece on free keyword research tools, and the volume-side blind spots in how accurate keyword search volume actually is.
If you’d rather hand the filtering and prioritization off, our one-time keyword research service covers exactly this — a scored, prioritized keyword list that weighs difficulty against your site’s actual authority and search intent, delivered without a monthly retainer.
FAQ
Is a lower keyword difficulty score always better?
Not automatically. A low score means the current top 10 isn’t backed by heavy backlink profiles, but it says nothing about search volume or whether the query is worth targeting. Check volume and the actual ranking pages before treating a low number as a green light.
Why do Ahrefs and Semrush show different KD scores for the same keyword?
They use different formulas. Ahrefs scores mainly on referring domains to the top 10. Semrush blends referring domains, dofollow ratio, Authority Score, and 100+ SERP-level factors, then applies regional weighting. A 15–20 point gap between tools on the same term is normal.
Does keyword difficulty account for AI Overviews or featured snippets?
Semrush factors SERP features into its score; Ahrefs and Moz weight backlinks and domain authority more heavily and treat SERP features as separate data. None of the three fully models how much organic click volume an AI Overview or snippet removes from the traditional top 10.
What’s a good keyword difficulty score for a new website?
There’s no universal number — it depends on your site’s own authority relative to the current top 10. A newer site with few referring domains will struggle even with KD 20–30 keywords if the ranking pages sit on high-authority domains; an established site can often push past KD 40–50.
Can I trust a free keyword difficulty checker?
Free checkers usually reuse a simplified version of the paid tools’ formulas or a smaller backlink index, so treat the number as a rough estimate rather than a precise one. Cross-check with the actual top 10 rankings before deciding.
Written by Palash, founder of PalV’s DM. 5+ years in SEO, 1,000+ articles published.