Spam link cleanup · Roofing contractor (US)
A roofer hit by 633 new spam domains, cleaned up
A US roofing contractor's backlink profile was suddenly flooded with spam domains. Within the same day, every domain was reviewed, a disavow file was built, and Google confirmed it. Only the 173 genuine domains remained in the profile.
- 83% → 0%
- toxic referring domains (Semrush)
- HIGH → LOW
- overall toxicity score
- 1,347
- spam domains disavowed
- 173
- genuine domains kept, 100% non-toxic
The challenge
For a local service business with a small, real link profile, a wave of spam domains can drown out its genuine local links. Semrush flagged a spike of 639 new referring domains, 633 of them toxic.
What I did
- Spot the spike. The audit showed hundreds of new domains in a short period, almost all of them toxic, on top of a small genuine profile.
- Review by hand. Every flagged domain was checked, so the 173 real links, such as local directories and partners, stayed untouched.
- Domain-level disavow. A clean domain-level file of 1,347 entries, so new spam pages on the same domains are covered too.
- Confirm and re-audit. Google's Search Console notice and email confirmed the upload, and a fresh Semrush audit showed 0% toxic.
Results: from 83% toxic to a clean profile
| Metric | Before | After |
|---|---|---|
| Overall toxicity score | HIGH | LOW |
| Toxic referring domains | 1.3K (82.7%) | 0 (0%) |
| Potentially toxic domains | 88 (5.8%) | 0 (0%) |
| Non-toxic domains | 173 (11.4%) | 173 (100%) |
| Referring domains in profile | 1.5K | 173 |
| Disavowed in Search Console | 1,347 domains · confirmed by Google the same day | |
Why it worked
Same-day response
The spike was reviewed, the disavow file built and Google's confirmation received on the same day.
Genuine links protected
Every flagged domain was checked by hand, so the 173 real local links stayed untouched.
Domain-level rules
Disavowing whole domains means new spam pages on the same domains are covered too.
Verified, not assumed
A fresh Semrush audit after the upload showed 0% toxic.
What's next
Disavowing asks Google to ignore the listed links; it does not delete them. The "after" numbers show the spam is now excluded from the profile. For local businesses, a link spike like this is worth checking monthly, because new spam can arrive at any time.
Questions about this project
Does disavowing delete spam backlinks?
No. Disavowing asks Google to ignore the listed links; it does not delete them. The after numbers show the spam is now excluded from the profile.
How often should a local business check for spam links?
A link spike like this is worth checking monthly, because new spam can arrive at any time.
Why use a domain-level disavow file?
A domain-level file of 1,347 entries covers new spam pages that appear later on the same domains, not just the pages found on the day.
Client and domain withheld. Figures from Semrush Backlink Audit and Google Search Console, Nov 7, 2026.