Recover 1,000 Dead 404 Backlinks and Map to Live Pages (Ahrefs + Claude)
Contents
Last quarter I ran this on a client site that had 1,047 broken backlinks pointing to 404 pages. We recovered link equity on 620 of them in an afternoon — without a developer writing a single redirect file. The other 427 we left alone, because the destination just didn't exist anymore. Here's the workflow.
Step 1 — Pull the Ahrefs Broken Backlinks report
In Ahrefs Site Explorer, go to Backlinks → Broken backlinks. Filter by:
- DR (Domain Rating) > 20 — anything lower isn't worth the effort
- "Follow" only — nofollow links pass nothing, skip them
Export the full list as CSV. You'll have a row per broken backlink with the referring URL, anchor text, DR, and the dead target URL on your domain.
The DR > 20 filter is the load-bearing detail. Out of 1,047 broken backlinks, only ~640 passed it. The other 400+ were low-quality directories and comment spam that didn't deserve a redirect. Filtering at the source saves you from mapping 400 redirects you'll regret.
Step 2 — Batch-classify by topic with Claude
Paste 30 rows at a time into Claude with this prompt:
I'm mapping dead URLs to live pages. For each row, tell me the
TOPIC of the dead URL based on the URL slug and anchor text, and
suggest the most likely live URL on my site that should receive
the redirect.
The site is [YOUR DOMAIN]. The site has these sections: [LIST
YOUR TOP 10-15 PARENT PAGES].
Output as a CSV with columns:
broken_url,anchor,dr,topic,suggested_live_url,confidence
Confidence: "high" if the topic clearly matches an existing
section. "medium" if the URL is 80% there. "low" if you're
guessing. "no_match" if no live page is appropriate — in that
case, leave suggested_live_url blank.
Do NOT invent live URLs. If the section doesn't exist on the
site, return "no_match".The "Do NOT invent live URLs" rule is the one that matters. Claude will happily redirect /old-blog-post-2019 to a non-existent /new-blog-post-2019 if you let it. You only want redirects to URLs that actually resolve on your site.
Step 3 — Filter and validate the "high" confidence matches
Pull out the "high" confidence rows. Manually spot-check 20 of them by visiting the suggested_live_url in a browser. If Claude is suggesting redirects to URLs that return 200, you're done with that batch.
The "medium" and "low" rows need human judgment. The "no_match" rows need you to decide: do you have a live page that could host this traffic (and should create one), or is the topic dead and not worth reviving? Most of the time, the answer is dead.
For the "no_match" rows that you decide are worth reviving, you have two options: create a new live page and redirect to it, or 410 the dead URL and move on. I almost always 410. A 301 to a tangentially related page is a soft 404 to Google, and Google has been clear about that for years.
Step 4 — Ship the redirects (the only step that needs a developer)
Hand the filtered CSV — broken_url → live_url, only the rows you verified — to whoever has server access. The format they need is either:
- Apache/Nginx — one line per redirect in
.htaccessor server config:redirect 301 /old-path https://site.com/new-path - Cloudflare — bulk upload via the Rules → Redirect Rules UI
- Vercel/Netlify —
vercel.jsonor_redirectsfile
If you're on a managed host (WP Engine, Kinsta, etc.) there's usually a UI for this. It takes 5 minutes to upload once the CSV is clean.
The 1,047 → 620 number, explained
Of the 1,047 broken backlinks, 620 mapped cleanly to a high-confidence live page. The other 427 broke down as:
- ~250 low-DR directories and comment spam (filtered in Step 1)
- ~120 dead topics with no good live equivalent ("no_match" rows, left as 410)
- ~57 medium/low confidence matches I didn't trust enough to redirect
620 redirects in. The traffic recovered to the live URLs was modest but real — about 1,800 referring sessions/month, all from links that had been 404ing for years. The bigger win is the link equity: those 620 redirects now pass PageRank back into the live site instead of dying at 404.
What to skip
Don't try to "save" low-DR broken backlinks. Don't 301 every dead URL to your homepage — Google treats that as a soft 404. Don't trust Claude's suggestions without spot-checking at least 20 of them. And don't 410 the URL just because you can't be bothered to find a live match — Google holds soft 404s against the site.
The whole job is 4 steps and an afternoon. The harder work is the judgment call on which dead topics are worth reviving and which are not. Claude does the bulk matching, you do the editorial calls.