link_gap
Find the domains that link to a competitor but not to you — the outreach shortlist — each with its DataForSEO rank, how many live backlinks it sends the…
Cost: 45 credits.
link_gap lists the domains that link to a competitor and not to you — the outreach shortlist — powered by the DataForSEO Backlinks database. It works on any public domain, so you can run it for your own site or between two rivals. It is synchronous: the list comes back immediately, with no background job to poll.
What it does
Name your side in one of two ways — pass a target domain, or pass the project_id of one of your own projects and the domain is taken from it. Exactly one of the two: passing both is rejected rather than resolved by precedence, because the two can name different sites and guessing would bill you for a lookup of the one you did not mean. Then name one competitor. Naming the target as its own competitor is rejected before anything is charged.
Each row carries:
- The referring domain — the site that links to your competitor.
- Rank — DataForSEO's authority measure for that domain on a 0–1,000 scale, and the order the list is sorted in, strongest first.
- Live backlinks — how many links it currently sends the competitor.
- Referring pages — how many of its own pages point there.
- Backlink spam score — the average spam score of those links, so a prospect worth avoiding is visible before you spend a morning on it.
- First seen — when DataForSEO's crawler first found a link from that domain.
Only live backlinks are counted — links that have since been lost are excluded.
What the list does and does not claim
These are the domains that link to your competitor and have no link to you today. That is a fact about the link graph, not a prediction: a site that covered your rival is a plausible place to be covered, but nothing here says it would link to you, and the spam-score column is printed precisely because some of them are places you should not want a link from.
One competitor per call, deliberately. Running it against each rival in turn gives you the same picture and keeps every list traceable to the domain it came from.
Who can run it
link_gap needs a paid credit balance. It reads live data from a paid third-party provider, so it is not available on trial credits — buy any credit pack and it unlocks straight away. Your trial credits are untouched and keep working for crawls, audits, reports and Search Console tools.
If live DataForSEO access is unavailable on this deployment, the tool returns a clear "link gap analysis is not yet enabled on this deployment" message and charges you nothing — no credits are reserved or spent. SeoGrep never returns sample or placeholder figures dressed up as real data.
Example
Ask your MCP client in plain language:
Who links to competitor.com but not to example.com?
Or keep it short:
Show me the top 25 link-gap prospects for my project against rival.com.
Input
| Field | Type | Required | Description |
|---|---|---|---|
target | string | No | The domain to analyse for link gaps, e.g. "example.com" or "https://example.com" — any public domain, including a competitor's. Pass this OR project_id, not both. |
project_id | string (uuid) | No | One of your projects (from setup_project / list_projects) — the domain is taken from it. Pass this OR target, not both. |
competitor | string | Yes | The rival whose backlinks are mined, e.g. "competitor.com" — the domains linking to it and not to you. One competitor per call. |
limit | integer | No | How many referring domains to return (1–1000, default 100), strongest first by DataForSEO rank. The header always says how many exist in total, so a shorter list never reads like the whole picture. |
Returns
A header naming your side — or, when you passed a project_id, the project it came from — the competitor, and how many of the total referring domains are shown; then one block per domain. A competitor with no referring domain you lack is reported as no gap found, plainly, and you are still charged for the delivered analysis.
An input that is not a public domain (the target or the competitor), a call naming neither target nor project_id (or both), a competitor equal to the target, and a project_id that is not yours are all rejected before anything is charged; while live data is off you get the "not yet enabled" message instead — also free.
Billing
One gap is one DataForSEO request, charged once, as a single tool call. If it fails, the whole call fails and you are not charged — a half-built list is never billed.
keyword_gap
Find the Google organic keywords a competitor ranks for and your domain does not — each with its monthly search volume, the competitor's position, the…
generate_report
Generate a shareable HTML SEO report for a project from its latest crawl and Search Console data, and get a public link to share with clients or…