Ahrefs Keyword Difficulty Checker — KD Score & SERP avatar

Ahrefs Keyword Difficulty Checker — KD Score & SERP

Pricing

from $26.19 / 1,000 keyword difficulty results

Go to Apify Store
Ahrefs Keyword Difficulty Checker — KD Score & SERP

Ahrefs Keyword Difficulty Checker — KD Score & SERP

Get Ahrefs Keyword Difficulty (KD 0-100) for any keyword in bulk, plus the backlinks-to-rank shortage and the full top-SERP overview (each result with Domain Rating, URL Rating, traffic & keywords). No Ahrefs login, no API key. Pay per keyword.

Pricing

from $26.19 / 1,000 keyword difficulty results

Rating

0.0

(0)

Developer

Vitalii Bondarev

Vitalii Bondarev

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

a day ago

Last modified

Share

Get Ahrefs Keyword Difficulty (KD) scores in bulk — with the full top-10 SERP breakdown included. This ahrefs keyword difficulty scraper returns KD 0–100, the referring-domain gap you need to crack the top 10, and a rich serp_overview for every ranking page — no Ahrefs account, no API key, pay only per result.

Features

  • Bulk KD lookup — pass a list of up to 5,000 keywords, get one clean record per keyword
  • Country-specific data — set any two-letter country code (us, gb, de, fr, …)
  • Full SERP breakdown — not just the score: each of the top-10 ranking pages comes back with DR, UR, traffic, keyword count, top keyword, and top keyword volume
  • Backlinks-to-rank gap — the backlinks_to_rank field tells you exactly how many referring domains a new page is short of to reach the top 10
  • Zero buyer key required — the actor uses a real stealth browser that navigates the Ahrefs free-KD page; the page handles its own challenge and fires the data call itself; we intercept the response
  • Failed lookups visible but never billed — if a keyword returns no data, it appears in your dataset with an error note so you have full visibility; you are not charged for it
  • Results streamed per row — each keyword is pushed the moment it is ready, so a timeout never discards completed work

What data you get

One dataset row per keyword:

FieldTypeDescription
keywordstringThe keyword as submitted
countrystringTwo-letter country code
keyword_difficultyinteger 0–100Ahrefs KD score
backlinks_to_rankintegerReferring domains needed to reach top 10
last_updatestringWhen Ahrefs last refreshed this keyword's index
serp_countintegerNumber of results in serp_overview
checked_atISO datetimeWhen the run fetched this keyword
errorstring or nullSet if the lookup failed; null on success
serp_overviewarrayOne object per ranking page (see below)

serp_overview sub-fields (per ranking page):

Sub-fieldDescription
positionSERP rank (1–10)
titlePage title
urlFull URL
domain_ratingAhrefs DR of the root domain
url_ratingAhrefs UR of the specific page
trafficEstimated monthly organic traffic
keywordsTotal keywords the page ranks for
top_keywordThe keyword driving the most traffic to that page
top_volumeMonthly search volume of the top keyword

Example output records (verified cloud run):

{
"keyword": "seo tools",
"country": "us",
"keyword_difficulty": 82,
"backlinks_to_rank": 399,
"serp_count": 7,
"last_update": "2025-05",
"checked_at": "2026-06-21T10:00:00+00:00",
"error": null,
"serp_overview": [
{
"position": 1,
"title": "The Best SEO Tools of 2025",
"url": "https://example.com/seo-tools",
"domain_rating": 91,
"url_rating": 52,
"traffic": 48200,
"keywords": 3100,
"top_keyword": "seo tools",
"top_volume": 110000
}
]
}
{
"keyword": "keyword research",
"country": "us",
"keyword_difficulty": 91,
"backlinks_to_rank": 835,
"serp_count": 9,
"error": null
}

Input

{
"keywords": ["seo tools", "keyword research", "link building"],
"country": "us",
"maxItems": 0,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}
ParameterRequiredDefaultDescription
keywordsYesList of keywords to check. Also accepts a comma-separated string or [{"keyword": "..."}] objects
countryNo"us"Two-letter country code for the keyword index
maxItemsNo0 (no cap)Optional hard cap on how many keywords to process in one run
proxyConfigurationNoApify RESIDENTIALProxy settings. A residential exit is used by default; no external key needed

Pricing

This actor charges $0.027 per keyword that returns a KD score (charge event: kd-result).

  • A keyword that fails to return data (e.g. not in the Ahrefs index, or a transient access issue) appears in your dataset with an error note — it is never billed
  • That is roughly 10% under comparable keyword-difficulty checkers on the Apify Store
  • Browser compute runs on your Apify account — our cost-of-goods is $0, and that saving goes to you

FAQ

Do I need an Ahrefs subscription or API key? No. This actor uses the Ahrefs free keyword difficulty tool — the same page any visitor can open in a browser. The actor navigates that page in a resilient stealth browser; the page handles its own security challenge and fires the data request itself. No Ahrefs account, no paid API access, and no external key of any kind is required from you.

How many keywords can I run per batch, and how fast is it? The actor supports up to 5,000 keywords per run. Each keyword requires a full browser navigation to reliably reach the protected endpoint, which takes roughly 80–95 seconds. A 3,600-second run (the Apify default timeout) can therefore process around 35–40 keywords. For larger lists, split them across multiple runs, or increase the run timeout in the actor's run options. Completed rows are streamed to your dataset immediately, so you never lose work if a run ends early.

Is the serp_overview data included at no extra charge? Yes. The full serp_overview array — with DR, UR, traffic, keyword count, top keyword, and top volume for every ranking page — is included in every billed kd-result event. There is no separate charge for the SERP data.

How does this compare to other keyword difficulty checkers on the Store? Most alternatives return only the KD score, backlink count, and a timestamp. This actor adds the complete serp_overview array: nine fields per ranking page, letting you see not just how hard a keyword is to rank for, but exactly who you are competing against and how strong each competitor's page is. That extra data is useful for gap analysis, content briefs, and link-building targeting.

Use cases

SEO keyword research — score a seed list before committing resources. A KD of 82 with 399 required backlinks signals a different content investment than a KD of 35 with 40.

Content planning and editorial calendars — combine KD with the serp_overview traffic numbers to prioritize keywords where the top-10 pages earn significant traffic. If page-1 incumbents have low traffic despite ranking, rethink the opportunity.

Niche and site research — feed competitor keyword lists into the actor to understand which of their ranking terms are genuinely defensible vs. winnable. The per-page DR/UR breakdown shows whether the top results are entrenched authority sites or thin pages you can outrank.

Programmatic SEO audits — integrate the dataset output into your pipeline to score hundreds of target pages' primary keywords, flag high-KD outliers, and update difficulty scores on a regular cadence without manual Ahrefs dashboard work.

Link-building prioritizationbacklinks_to_rank gives you a concrete referring-domain target. Filter your keyword list to those where the gap is reachable within your link-building budget and focus outreach there first.