Backlink Profile Audit and Disavow: How to Remove Toxic Links

Publication date: 03.07.2026 10:02

Toxic backlinks drag down rankings and can trigger Google manual penalties. A systematic backlink audit followed by targeted disavowing lets you eliminate harmful links and preserve your organic traffic.

Contents

  1. Why backlink audits matter
  2. Tools: Ahrefs and Google Search Console
  3. Toxicity signals to watch for
  4. Step-by-step audit process
  5. When to disavow — and when not to
  6. How to build a disavow file
  7. Uploading to Google Search Console
  8. What happens after disavowing
  9. Common disavow mistakes
  10. Negative SEO: recognition and response
  11. Deep anchor profile analysis
  12. Case study: recovering from a manual action
  13. FAQ

Links remain one of Google's top three ranking factors — but the quality of those links matters enormously. In our agency's work, we've seen mid-sized sites lose 40–60% of organic traffic within two months of an aggressive paid-link campaign on link exchanges.

Google's Penguin algorithm (integrated into the core ranking system since 2016) automatically devalues many spammy links. But it's not infallible. When a large batch of toxic backlinks shares the same anchor text or originates from a narrow cluster of domains, the algorithm may read it as manipulation and suppress the site's visibility.

Beyond algorithmic filters, Google's Search Quality team can impose manual penalties. These partial or site-wide demotions are reported directly in Google Search Console under "Manual actions." Left unaddressed, a manual action can decimate traffic for months.

A backlink audit isn't a one-time cleanup — it's a recurring health check. Quarterly reviews catch problems before they escalate, especially after any link building activity.

Regular auditing helps you:

  • Spot toxic links accumulated from old contractors, shady directories, or competitor attacks;
  • Head off manual penalties before a reviewer notices;
  • Understand your link equity distribution — which pages attract links, which are ignored;
  • Defend against negative SEO — competitors flooding your profile with spam links.

Tools: Ahrefs and Google Search Console

No single tool captures every backlink. The most reliable approach combines two complementary data sources.

Google Search Console (GSC)

GSC is the ground truth: it shows which links Google itself has discovered and factors in. Navigate to Links → External links and download the full list. The limitation: GSC doesn't expose all known links and provides no quality metrics for donors.

Export your GSC link list monthly as a CSV. Diffing it against the previous month with VLOOKUP or Power Query instantly surfaces newly acquired domains — both good and bad.

Ahrefs Site Explorer

Ahrefs maintains an independent backlink index that frequently outpaces GSC in link discovery. It surfaces Domain Rating (DR) per donor, anchor text distribution, and outgoing link counts. The Best by links report shows which donor pages carry the most equity. Downside: paid plans start at $99/month.

Tool comparison

ToolStrengthsLimitations
Semrush Backlink AuditAuto toxicity scoring, direct disavow export30–40% false-positive toxicity rate
Majestic SEOTrust Flow / Citation Flow — solid quality metricsIndex updates slower than Ahrefs
Moz Link ExplorerDomain Authority, clean interfaceSmaller index than Ahrefs
GSC (free)Direct Google dataIncomplete picture, no quality metrics

Our default stack is GSC + Ahrefs: the first gives Google's perspective, the second gives coverage depth. If budget allows, Semrush adds automated toxicity flagging — just treat the scores as a starting point for manual review, not a final verdict.


Toxicity signals to watch for

There's no official "toxic domain" list from Google. Toxicity is a judgment call based on a combination of signals — never a single metric.

Donor-level red flags

  • DR/DA below 5–10 — almost no organic authority of its own;
  • Irrelevant niche — a gambling site linking to your B2B SaaS platform;
  • Hundreds of outgoing links per page — classic link aggregator or directory spam;
  • TLDs like .xyz, .tk, .pw, .top — disproportionately used by PBN operators;
  • MFA content or auto-generated text — pages exist purely to sell links;
  • Site returning 404 or 5xx — the link is dead, but mass dead-link patterns signal historical link buying;
  • Domain registered under a year ago with an already-large outgoing link count.

Anchor text red flags

Google audits anchor distributions and compares them to natural patterns. Watch for:

  • Over 50% exact-match anchors: "buy furniture London", "order pizza delivery";
  • The same anchor repeated across hundreds of different domains;
  • Zero branded or naked URL anchors — every natural profile contains brand mentions and bare URLs.
Benchmark: a healthy anchor distribution runs roughly 50–60% branded/URL, 20–30% partial-match, and only 5–15% exact-match. If your exact-match share exceeds 30%, that's a red flag worth investigating.

Historical link-building footprints

Pull the Anchors report in Ahrefs. A cluster of 20–50 domains all sharing the same keyword anchor is almost certainly a paid link campaign. Equally telling: a sudden link spike that correlates with a traffic drop — classic Penguin-era over-optimization footprint that may still carry algorithmic weight.


Step-by-step audit process

Here's the workflow we run for clients — from raw data collection to a submission-ready disavow file.

Step 1. Pull your full backlink list

Export from Ahrefs (Site Explorer → Backlinks → Export) and GSC (Links → External → Download). Merge into one spreadsheet. A typical mid-size site has 500–5,000 unique referring domains — a manageable volume for systematic review.

Step 2. Deduplicate and normalize by domain

The unit of analysis is unique referring domain, not total link count. One domain may contribute thousands of links but has one DR. Collapse to one row per domain, carrying forward the worst-case metrics (lowest DR, highest outgoing link count).

Step 3. Apply automated filters

Set spreadsheet filters: DR < 10, outgoing links from page > 500, suspicious TLD. Flag all matching rows as "needs review." These are candidates for manual evaluation — not confirmed toxic yet.

Step 4. Manually review each candidate

Open each flagged donor page and ask:

  • Does it contain genuine, readable content?
  • Is the site's niche remotely related to yours?
  • How many other outgoing links sit alongside yours?
  • Does the link placement look natural in context?

Step 5. Attempt manual removal first

For domains you've classified as toxic, try removing the link before disavowing. Find the webmaster's contact via WHOIS or the site's contact page. Send a brief, polite removal request. Wait a week; follow up once if no response. Document every attempt with screenshots — this evidence matters if Google ever requests an explanation.

Template: "Hi, I'm the owner of [your site]. There's a link to [your URL] on your page [donor URL]. Could you please remove it? Thanks." — keep it short and professional, no threats needed.

Step 6. Classify and prioritize

After manual review, group all domains into three buckets:

  • Safe — no action needed;
  • Watch — suspicious but not harmful enough to act on now; monitor quarterly;
  • Disavow — confirmed toxic, going into the file.

When to disavow — and when not to

The most expensive disavow mistakes happen at the extremes: either panic-disavowing every low-DR link, or never touching the file at all.

Disavow when:

  • You have an active manual action for "unnatural links" — visible in GSC under Manual Actions;
  • Links clearly come from known PBN networks or compromised sites;
  • A previous agency built paid links with exact-match anchors at scale;
  • You're experiencing a negative SEO attack — a sudden flood of spam links from hundreds of new domains;
  • Links originate from sites hosting illegal or clearly harmful content (unlicensed pharma, gambling without license).

Do NOT disavow when:

  • Links just look low-quality — low DR alone is not a toxicity signal;
  • A competitor or critic linked to you in a negative article — those links don't transfer harm;
  • You want to "clean up" the profile for aesthetic reasons — Penguin already discounts most garbage links algorithmically;
  • An automated tool flagged a "Toxic Score" — these tools have 30–40% false-positive rates and frequently flag legitimate links.
Google officially recommends the Disavow Tool only as a last resort — after manual penalties or when there is clear evidence of manipulative link building at scale. Source: developers.google.com — Manual Actions.

How to build a disavow file

The disavow file is a plain-text .txt file in UTF-8 encoding. Google's format rules are strict — there's no flexibility here.

Formatting rules

  • One entry per line;
  • Lines starting with # are comments — Google ignores them, but they're invaluable for your own audit trail;
  • domain:example.com — disavow all links from the domain (preferred format);
  • https://example.com/page — disavow a specific URL only (use when the site is legitimate but one page is spammy).

Sample disavow file

# Backlink audit — [date]
# Confirmed PBN network

domain:spam-links-site.xyz
domain:fake-directory123.tk
domain:buycheap-links.pw

# Single bad page on otherwise clean site
https://someoksite.com/paid-links-page/

# Negative SEO attack — mass spam domains
domain:negative-seo-attack.net

How many domains should you disavow?

It depends on the severity of the problem. A typical disavow file after an aggressive link-building campaign contains 50–300 domains. If you're looking at 3,000+ suspicious domains, the backlink profile may be too compromised for recovery — migrating to a new domain is worth considering, as rebuilding such a profile can take years.

Default to domain-level disavow. Disavowing entire domains (domain:) is more robust and easier to maintain than managing individual URLs. Only use URL-level entries when a single page on an otherwise reputable site is the problem.

Uploading to Google Search Console

The disavow file is submitted through a dedicated tool that's separate from the main GSC dashboard interface.

Upload steps

  1. Navigate to the Disavow Links tool within Google Search Console;
  2. Select the correct property from your verified list;
  3. Click "Disavow links";
  4. Upload your .txt file;
  5. Google confirms receipt — but don't expect immediate ranking changes.
Always save a dated copy of your disavow file locally (e.g., disavow-2026-06.txt). If Google ever asks about your link cleanup efforts, having a documented audit trail is far more convincing than a reconstructed history.

Updating the disavow file

Uploads are replacements, not additions. Each new upload completely overwrites the previous file. Always maintain a master file that contains all historical entries plus any new ones. Removing a domain from the file means Google resumes factoring in those links — intentional or not.


What happens after disavowing

The waiting period after submission is where most site owners struggle. Google provides no real-time feedback, and ranking improvements aren't guaranteed.

Expected timeline

  • 2–4 weeks: Google processes the file during the next crawl cycle;
  • 1–3 months: ranking changes start to materialize as the link graph is reprocessed;
  • 3–6 months: if a manual action was in place, the reconsideration review cycle adds additional time on top.

Recovering from a manual action

After uploading the disavow file and removing as many links as possible manually, you must submit a Reconsideration Request in GSC under Manual Actions. Describe the cleanup work concretely: how many domains you contacted, how many you disavowed, and how you plan to prevent recurrence. Google typically responds within a few weeks.

For a detailed walkthrough of the manual action review process, see Google's official documentation: Manual Actions — Search Console Help.

Post-disavow monitoring

Check GSC monthly for unusual new linking domains. If a competitor launches another negative SEO campaign, update the disavow file promptly. Pair this with monitoring your overall technical health — we cover that in depth in our technical SEO audit guide.


Common disavow mistakes

After working through dozens of backlink audits, these are the errors we see most often:

  • Disavowing without analysis. Exporting Semrush's "Toxic Links" list and uploading it directly. The result: losing real, high-quality links that the tool misclassified as toxic.
  • Thinking uploads accumulate. Site owners believe each new upload adds to the previous list. It doesn't — each upload fully replaces it. Always build on top of your existing file.
  • Disavowing the wrong end of a redirect. If a donor domain redirects to a toxic site, disavow the donor domain — not the final destination URL after the redirect.
  • Auditing once and forgetting. Toxic links accumulate continuously. A one-time cleanup without ongoing monitoring typically sees the problem return within 12–18 months.
  • Including internal links. Some tools conflate internal and external links in exports. Double-check that you're only analyzing inbound external links.
  • Wrong file encoding. The file must be UTF-8 without BOM. Saving with BOM in Windows can cause Google to reject the file or parse it incorrectly.

For a broader view of responsible link building that avoids creating these problems in the first place, see our guide to building a clean backlink profile. And if you're dealing with a site that's accumulated serious technical debt alongside link issues, our step-by-step technical SEO audit covers the full picture.


Backlink audit checklist

Use this checklist on every audit cycle to make sure nothing slips through. It covers every stage — from data collection through to follow-up monitoring.

Data collection

  • ✓ GSC backlinks downloaded (Links → External links → Download latest links);
  • ✓ Ahrefs backlinks exported (Site Explorer → Backlinks → Export);
  • ✓ Both sources merged into one spreadsheet, duplicates removed;
  • ✓ Table normalised to one row per referring domain, carrying worst-case metrics.

Domain-level analysis

  • ✓ DR < 10 filter applied, flagged rows isolated for manual review;
  • ✓ Suspicious TLDs filtered (.xyz, .tk, .pw, .top);
  • ✓ Pages with 500+ outgoing links identified and reviewed;
  • ✓ Each candidate domain opened in browser and evaluated for genuine content;
  • ✓ Topical relevance assessed for each flagged donor.

Anchor analysis

  • ✓ Ahrefs Anchors report exported and reviewed;
  • ✓ Exact-match anchor share calculated (healthy threshold: < 15%);
  • ✓ Branded anchor share calculated (healthy threshold: > 40%);
  • ✓ Repeated-anchor clusters identified — same phrase across 20+ different domains.

Actions and follow-up

  • ✓ Manual removal attempts documented for all confirmed toxic domains;
  • ✓ Disavow file built in plain UTF-8 without BOM;
  • ✓ File uploaded to GSC, dated copy saved locally;
  • ✓ Reconsideration Request submitted if a manual action is active, with documented evidence;
  • ✓ Next audit reminder set for 3 months out.

How long does a full audit take?

Site sizeUnique referring domainsEstimated time
Small (under 500 pages)100–5004–8 hours
Medium (500–5,000 pages)500–3,0002–5 working days
Large (5,000+ pages)3,000–15,000+1–3 weeks
Post manual penaltyAny sizeAdd ~50% to base estimate
If your referring domain count exceeds 5,000, consider bringing in a specialist or agency. Rushing a manual review at that scale leads to classification errors that are more costly than the audit itself — either disavowing good links or missing genuinely harmful ones.

Backlink auditing sits within the broader discipline of technical SEO. For the complete methodology, see our step-by-step technical SEO audit guide. To understand how your inbound links translate into page-level ranking signals, mastering Google Search Console is the logical next step.


Negative SEO: recognition and response

Negative SEO is the deliberate use of manipulative tactics against a competitor's site. The most common attack vector is a sudden flood of spammy backlinks pointed at your domain. Penguin discounts most of these algorithmically, but a large enough coordinated attack can still trigger a manual review or dampen rankings.

Warning signs of a negative SEO attack

  • Hundreds or thousands of new referring domains appearing within 1–3 days — domains that didn't exist a week ago;
  • A single anchor phrase repeated across every new link — often a pharmaceutical keyword or a competitor's brand name;
  • Links concentrated in low-trust TLDs (.xyz, .tk, .pw, .top) with no topical relevance to your site;
  • Clusters of near-identical domains — same naming pattern, same HTML structure, same IP subnet;
  • Traffic drop with no on-site changes — especially suspicious when it coincides with a known algorithm update rollout.

Response protocol

  1. Set up new-backlink alerts in Ahrefs or Google Alerts — early detection keeps the disavow file small and the problem manageable.
  2. Check GSC for any new warnings under Manual Actions.
  3. Pull a full list of domains that appeared in the last 7–30 days and segment them by TLD and anchor pattern.
  4. Act fast — add confirmed attack domains to your disavow file proactively, without waiting for a ranking drop.
  5. Document everything: timestamps, screenshots, domain counts, anchor samples. If Google issues a manual action, this evidence demonstrates the links were externally generated and outside your control.
Key point: Google officially acknowledges negative SEO and accepts proactive disavow submissions as a defensive measure. When an attack is obvious and documented, submitting a disavow file before a penalty lands is entirely appropriate — it shows you're monitoring your profile responsibly.

Strong E-E-A-T signals also act as a natural buffer: sites with well-established brand authority are harder to damage through link manipulation alone, because their organic signals provide strong countervailing trust.


Deep anchor profile analysis

Anchor text analysis is a distinct sub-audit that gets underestimated in most link audits. The distribution of anchor text is the way you signal to Google which queries you're trying to rank for — and an unnatural distribution is one of the clearest signs of manipulative link building.

How to read the Anchors report in Ahrefs

Navigate to Site Explorer → Anchors. You'll see a table showing each anchor alongside the number of backlinks and referring domains using it. Focus on:

  • Top 10 anchors by referring domains — are exact-match commercial keywords appearing there?
  • Branded anchor share — for a natural profile this should be 40–60%;
  • Generic anchors («click here», «read more», «source») — harmless in small doses, but a large share can indicate automated link drops;
  • Language mismatch — if your site serves an English audience but 80% of anchors are in Russian or Chinese, that's a red flag worth investigating.

Healthy vs. toxic anchor distribution

Anchor typeHealthy profileToxic profile
Brand name / naked URL50–60%< 10%
Exact-match keyword5–15%> 40%
Partial-match / LSI20–30%< 5%
Generic («here», «link»)5–10%> 30% or < 1%
Irrelevant / spammy0–2%> 10%

Fixing an over-optimised anchor profile

If your exact-match share is too high, disavowing alone won't solve the problem. A recovery plan needs three parallel tracks:

  • Disavow domains with clear exact-match manipulation — especially any confirmed paid placements;
  • Build new quality links with branded and naked-URL anchors to dilute the over-optimised share over time;
  • Produce link-worthy content — original research, data studies, free tools — that naturally earns neutral anchors at scale.
In our experience, normalising an over-optimised anchor profile takes 6 to 18 months of active work. There's no shortcut: Google retains the full historical record of a site's link graph and doesn't reset it overnight just because new links arrive.

Case study: recovering from a manual action

Here's a representative scenario from our agency work: an e-commerce store in the home appliances niche, 3–4 years of active SEO, with a significant portion of the link profile consisting of links purchased through link exchanges.

Starting conditions

  • Manual action issued for "unnatural inbound links" — visible in GSC under Manual Actions;
  • Organic traffic dropped 65% within two weeks of the notification;
  • Link profile: ~2,400 unique referring domains, approximately 800 showing PBN or paid-placement patterns;
  • Anchor profile: 62% exact-match commercial keywords.

What we did

  1. Full backlink export from Ahrefs + GSC, merged into a single working spreadsheet;
  2. Segmentation by DR, topic relevance, and anchor type — three weeks of manual review;
  3. Outreach campaign: 340 removal request emails sent, 47 responses received, 31 links removed;
  4. Disavow file covering 712 domains prepared and uploaded to GSC;
  5. Reconsideration Request submitted with a detailed account of cleanup actions, documented outreach attempts, and a forward-looking monitoring plan;
  6. Proactive link building — new editorial placements and PR partnerships to begin rebuilding a clean profile in parallel.

Outcomes

  • Manual action lifted 6 weeks after submitting the reconsideration request;
  • Organic traffic recovered to 70% of pre-penalty levels within 4 months;
  • Anchor profile normalised to 18% exact-match after 8 months of active link building.

Full recovery to original traffic levels took approximately 10 months — a realistic benchmark for a site with this level of prior manipulation. Pair your link recovery with a review of internal linking and site architecture: a well-structured internal link graph helps distribute recovered external equity more efficiently across the pages that matter most.


FAQ

How often should I audit my backlink profile?

For active sites — quarterly. After aggressive link building or receiving a Google warning — immediately. For stable projects, twice a year is sufficient to stay ahead of problems.

Can disavowing good links hurt my rankings?

Yes — disavowing quality links directly destroys SEO equity. Never disavow without a clear toxicity justification. Google already ignores most spammy links on its own through Penguin.

How long does Google take to process a disavow file?

Google processes disavow data roughly every few weeks during recrawling. Ranking impact typically becomes visible within 1–3 months after processing — not days.

Can I undo a disavow file after uploading it?

Yes. You can update or fully cancel your disavow file in Google Search Console at any time. To cancel entirely — upload an empty file or click "Cancel disavows." Links previously disavowed will be factored in again once cancelled.

Need a professional backlink audit?

SEO-Factory runs full link profile audits, identifies toxic backlinks, and prepares disavow files — protecting your site from Google penalties.

Request an SEO Audit

Or contact us →

Denys Feshchenko
An experienced specialist in business promotion via social media and search engines. I work with Instagram, TikTok, Telegram, YouTube, and Google Ads, helping companies attract target audiences, build their image, and increase sales. Over 7 years in digital marketing. Author of practical guides and articles on SMM, SEO, and PPC.
Latest
Backlink Profile Audit

03.07.2026 10:02

Backlink Profile Audit
CTR Optimization in Search

02.07.2026 10:09

CTR Optimization in Search
Google Algorithm Updates

01.07.2026 10:00

Google Algorithm Updates