Bulk Domain Authority Checker: Backlinks & Referring Domains
Pricing
$10.00 / 1,000 domain checkeds
Bulk Domain Authority Checker: Backlinks & Referring Domains
Check the domain authority of hundreds of websites in one run. Each row gives the authority score (0-100), total backlinks, referring domains, the dofollow/nofollow split and the gov/edu count. For SEO teams, link builders and agencies. $0.01 per domain.
This domain authority checker scores a whole list of websites in one run. Paste in your prospects, competitors or outreach targets and get one row per domain with the authority score, total backlinks, referring domains, the dofollow/nofollow split and the gov/edu count. No subscription, no seat licence, no API key to obtain. Pay only for the rows you get back.
What this domain authority checker is for
This Actor is built for breadth: many domains, one row each, no per-link detail. That is the shape you want when the question is comparative rather than forensic.
- score a prospect list or an outreach list before you spend time on it
- rank the domains already linking to a competitor by how much authority they carry
- watch a set of competitors' authority drift over months on a schedule
- vet a marketplace of guest-post or directory offers in one pass
- add an authority column to any spreadsheet of companies you already have
If you need the actual links for one domain, with anchor text and the linking page, use the Backlinks Checker Actor instead. It reads a different index and returns one row per backlink. The two answer different questions, and the per-link list on this Actor's source is gated behind a crawl task that anonymous callers cannot reach, so this Actor does not pretend to offer it.
How to check domain authority in bulk
- Open the Actor and paste your domains into Domains, one per line. Full URLs are fine.
- Optionally switch on the referring-domain authority spread or the new/lost referring-domain series.
- Start the run. When it finishes, export them as CSV, Excel or JSON, or read them through the Apify API.
To run it on a schedule (for example monthly competitor tracking), create a Task with your list and attach an Apify Schedule.
Input
{"domains": ["apify.com", "zapier.com", "make.com"],"include_da_distribution": false,"include_new_lost": false}
| Field | Default | What it does |
|---|---|---|
domains | The domains to check. Full URLs are reduced to the host | |
include_da_distribution | false | Adds ten buckets counting referring domains per authority band |
include_new_lost | false | Adds a daily series of referring domains gained and lost, plus the totals |
max_domains | empty | Stop after this many domains (up to 2,000). Empty processes the whole list |
concurrency | 8 | Parallel requests to the metrics source, up to 20. Lower it if you see failed batches |
A leading www. is stripped, because the source treats www. as a separate and
near-empty profile and leaving it on would hand back an empty result for a
domain that has one. Duplicates are removed after normalization.
Output
One dataset row per domain, in the order you supplied them. This is a real row
from a run on apify.com (October 2026):
{"domain": "apify.com","found": true,"lookup_failed": false,"has_link_profile": true,"domain_authority": 60,"backlinks": 538474,"referring_domains": 13004,"dofollow_backlinks": 457421,"nofollow_backlinks": 81053,"dofollow_percent": 84.95,"referring_domains_gov_edu": 0,"counts_backlinks": 42822,"counts_referring_domains": 3979,"counts_dofollow_backlinks": 31300,"counts_nofollow_backlinks": 11522,"input_position": 0}
With both options on, the same domain also carried:
{"referring_domain_authority_distribution": {"0-10": 6498, "10-20": 2569, "20-30": 1011, "30-40": 1154, "40-50": 663, "50-60": 473, "60-70": 191, "70-80": 208, "80-90": 145, "90-100": 92},"new_lost_referring_domains": [{"date": "2026-10-03", "new": 47, "lost": 10}, {"date": "2026-10-02", "new": 57, "lost": 21}],"referring_domains_gained": 1176,"referring_domains_lost": 133}
(The daily series is shortened here; a run returns the full series.)
Output fields
| Field | What it means |
|---|---|
domain | Normalized host, no scheme, no www. |
domain_authority | Authority score, 0-100 |
authority_score | Same value as domain_authority |
backlinks | Total backlinks in the index |
referring_domains | Distinct domains linking in |
dofollow_backlinks / nofollow_backlinks | The follow split |
dofollow_percent | Dofollow share of all backlinks |
referring_domains_gov_edu | Referring domains on .gov or .edu |
counts_backlinks, counts_referring_domains, counts_dofollow_backlinks, counts_nofollow_backlinks | The same counts from the source's bulk endpoint (see below) |
has_link_profile | False when the source found no links at all |
found | True for a returned profile, false for an answered empty lookup, null when the lookup failed |
lookup_failed | True when every attempt for this domain failed |
lookup_status | answered when a main lookup completed, null when both failed |
input_position | Zero-based position after normalization, duplicate removal and any max_domains limit |
source, fetched_at | The data source label and the UTC retrieval time |
referring_domain_authority_distribution | Ten buckets from 0-10 to 90-100 (option) |
new_lost_referring_domains, referring_domains_gained, referring_domains_lost | Daily gained/lost series and its totals (option) |
The run's OUTPUT record summarizes the run: how many domains were asked for,
how many came back, chargedCount, and whether the source answered at all
(upstreamReachable).
Read this before you trust a number
referring_domains is the number that matters, not backlinks. One site
linking to you 10,000 times is still one relationship. Sitewide footer links
inflate backlinks enormously and change referring_domains by exactly one.
The authority score is logarithmic. Moving from 40 to 50 is a far bigger jump than 10 to 20. Treat it as a ranking device for comparing domains against each other, not as a linear quantity you can average.
Two backlink totals are reported and they will disagree, sometimes wildly.
backlinks comes from the source's authority endpoint; counts_backlinks
comes from its bulk endpoint. On bol.com those read 56,823,549 and 188,552 on
the same day. They are two different aggregations over the same index, not a
second opinion, and this Actor reports both rather than quietly picking one.
Use backlinks as the headline, because it is the figure the authority score
is computed against, and treat a large gap as a sign to look closer rather
than as an error.
This is not an independent third opinion. Its referring-domain counts track the second index used by the Backlinks Checker Actor closely, within a couple of percent on the same domain the same day. If you want genuinely independent corroboration, run a different source, not this one twice.
What a zero means, and what it does not
The source never reports an unknown domain. A host that does not exist
comes back with domain_authority: 1 and every count at 0, which is exactly
how it answers a real domain that nobody links to. Because those two are
indistinguishable upstream, this Actor sets has_link_profile: false on both
and says so rather than implying a verdict it cannot support. If the difference
matters to you, check whether the domain resolves separately.
found: false means the source answered with no profile for that domain.
found: null with lookup_failed: true means neither lookup succeeded.
Unknown metrics remain null, never 0; failed lookups are not billed.
If the source does not answer at all, the run still succeeds but writes zero
rows and sets upstreamReachable: false in the run's OUTPUT record. Nothing
is billed.
How it compares to other domain authority checkers
| This Actor | Free web checkers | SEO suite subscriptions | |
|---|---|---|---|
| Domains per run | your whole list | usually 1, or a capped bulk box | depends on plan |
| Output | dataset, CSV, JSON, API | a web page | dashboard, export on higher plans |
| Cost | $0.01 per answered domain | free, with captchas and limits | monthly subscription |
| Scheduling | Apify Schedules | manual | built in |
Is this Moz DA, Ahrefs DR or Semrush Authority Score? No. Each vendor computes its own 0-100 score over its own link index, and the numbers are not interchangeable. A domain can sit at 60 here and 70 elsewhere. What matters is using one scale consistently: compare domains against each other within the same checker, and track the same checker over time.
Speed
Link counts are fetched ten domains per request. The authority score comes from a per-domain call, which is the pace-setter: 100 domains is roughly 110 requests and finishes in well under a minute at the default concurrency. Each optional extra costs one further request per domain. Large lists are collected in successive batches automatically.
Pricing
$0.01 per answered domain, which is $10 per 1,000 domains. The optional
authority spread and new/lost series cost nothing extra. A failed lookup is
free, and a run where the source does not answer bills nothing.
OUTPUT.chargedCount reports the actual charge result, including any spending
limit you set for the run.
Free plan
On the Apify free plan a run returns at most 10 rows and stops there, and the run's OUTPUT record says so. The Actor stops fetching once it has enough for that limit rather than working through your whole list and discarding most of it. Any paid Apify plan removes the cap.
FAQ
What is a good domain authority score? There is no absolute cut-off, because the scale is logarithmic and relative. Compare a domain with its direct competitors: being 10 points above them matters more than being above some fixed number.
Can I check domain authority for thousands of domains at once?
Yes. Put the whole list in domains; the Actor batches the lookups itself. Use
max_domains to cap a run while you test.
Why does a domain that does not exist show authority 1?
The source answers every host, including ones that do not exist, with a minimal
score and zero counts. has_link_profile: false flags that case.
Why do backlinks and counts_backlinks differ so much?
They are two aggregations over the same index. Use backlinks as the headline
and referring_domains to judge a profile.
Do I need an API key or an account with an SEO tool? No. You only need an Apify account. Results are available through the Apify API like any other dataset.
Am I charged for domains that fail? No. Only answered domains are billed; failed lookups and empty runs are free.