Broken Link Resurrector — Find Dead Links & Their Replacements
Pricing
from $3.00 / 1,000 results
Broken Link Resurrector — Find Dead Links & Their Replacements
Finds broken links on your pages and, for each one, suggests the fix: the last working capture from the Internet Archive, whether the site itself still exists, and the exact next action. A report you can act on, not a list of 404s.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
alaudin burki
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Broken Link Resurrector — Find Dead Links and Their Replacements
Every link checker hands you a list of 404s and walks away. That's the easy half — and it's why the fix sits in a backlog for a year.
This one does the hard half: for each dead link it finds the last working capture in the Internet Archive, checks whether the site itself still exists, and tells you exactly what to do about that specific link.
A report becomes a fix list. Free sources. No API key, no login, no anti-bot.
Why this works differently
A normal link checker outputs:
https://oldsite.com/guide— 404
Which tells you nothing you can act on. Was the page moved, or did the company die? Is there anything left of it? What did it even say?
This outputs:
https://oldsite.com/guide— 404 · site is still alive · archived copy from 2019-04-12 → "Site is alive but this page is gone. Search the site for "guide" and point the link at the current page; use the archived copy (6.4y old) to confirm what it said." · confidence medium
The difference is siteStillAlive. A dead page on a living site almost always moved — go find it.
A dead page on a dead site is never coming back — swap in the archive link or cut it. Those are two
completely different jobs, and no checker tells you which one you have.
The four verdicts
fixType | What happened | What you do |
|---|---|---|
archive_replacement | An archived capture exists | Paste the archive URL, or use it to find where the page moved |
search_site | Page gone, site up, nothing archived | Search that site for the slug — it probably just moved |
remove_or_replace | Domain no longer resolves, no archive | Cut the link or find a new source |
remove | Nothing left anywhere | Delete it |
Confidence is deliberately conservative. An archived copy is evidence of what a page was, never
proof of where it moved to — so a live site with a dead page is capped at medium and asks for a
human to confirm. This actor will not lie to you to look smarter.
What it does not call broken
Most cheap checkers report these as dead and waste your afternoon:
403/401→blocked, not dead. The page is fine; it just refuses bots.429→rate_limited, not dead. You checked too fast.301/302→redirect, not dead — butredirectedTotells you where it now lands, so you can update the link anyway and save a hop.
Only 404, 410, 4xx, 5xx and DNS failures count as dead.
What you get
| Field | Description |
|---|---|
url · anchorText · foundOn | The dead link, its link text, and which of your pages it's on |
httpStatus · state · reason | ok · not_found · domain_gone · blocked · redirect · server_error … |
siteStillAlive | The field that decides everything — did the page move, or did the site die? |
fixType | One of the four verdicts above |
suggestedUrl | The archived replacement, ready to paste |
confidence | high · medium · low — honest, not optimistic |
action | Plain-language next step, written for that link |
archivedAt · redirectedTo | When the archive captured it; where a redirect now lands |
Input
{"pages": ["https://yourblog.com/2019/some-old-post"],"findReplacements": true,"brokenOnly": true}
Or feed URLs straight in (from a sitemap, a crawler, a CSV):
{ "urls": ["https://a.com/gone", "https://b.com/moved"] }
Set brokenOnly: false to get a full audit of every link with a link-rot percentage in the
QUALITY_REPORT.
Sample output
[{"url": "https://oldstartup.com/pricing","anchorText": "their pricing page","foundOn": "https://yourblog.com/2019/some-old-post","httpStatus": null,"state": "domain_gone","dead": true,"reason": "domain_not_found","siteStillAlive": false,"fixType": "archive_replacement","suggestedUrl": "https://web.archive.org/web/20200114/https://oldstartup.com/pricing","confidence": "high","action": "Whole site is gone. Replace the link with the archived copy, or remove it.","archivedAt": "2020-01-14T09:22:41.000Z","status": "ok"}]
Typical uses
- Content / SEO audit — broken outbound links hurt UX and waste crawl budget. This gives your writer a paste-ready fix list instead of a spreadsheet of 404s.
- Documentation upkeep — docs rot faster than code. Run it over your docs site monthly.
- Wikipedia / research citations — dead citations are the classic Wayback use case; this automates it.
- Site migration cleanup — after a redesign, find every reference that didn't survive.
- Agency deliverable — run it across a client's top 50 pages and sell the fix list. This is a genuinely sellable report, which a plain 404 list is not.
Pricing
$3.00 / 1,000 links checked ($0.003 per result), plus a near-zero start fee. Auditing a 300-link
page costs under a dollar. Never charged beyond maxItems.
⚠️ Read before you act
- An archive is not a redirect. The archived page proves what the URL used to contain. Where the
content lives now is a judgment call — that's why
confidenceexists, and whymedium/lowrows ask for a human. - Archived pages can themselves be incomplete — the Internet Archive often captures HTML without images, CSS, or JS. Check the capture before you publish it as a citation.
blocked(403) is not a pass either. The link works for humans but a bot can't verify it. If it matters, open it yourself.- A link that is fine today can break tomorrow. This is a scheduled job, not a one-off.
FAQ & limitations
- Do I need an API key? No. It uses the public Internet Archive availability API and plain HTTP.
- Does it crawl my whole site? No — it checks the pages you give it. Pair it with the Sitemap
Extractor actor to feed in every URL, or pass them in
urls. - Does it find links rendered by JavaScript? No, it reads server HTML. For JS-rendered pages, pass
the link URLs directly in
urls. - Why is one link
blockedinstead of dead? Some sites refuse automated requests (403). That's a bot policy, not a broken link — so it is reported honestly rather than counted as rot. - Can it fix the links for me? No, and it shouldn't — it gives you the replacement and the reasoning; publishing the change stays a human decision.
Related actors
- Sitemap Extractor — get every URL on a site, then feed them in here.
- Website Screenshot — capture what a page looks like now versus its archive.
- HTTP Header Analyzer · DNS Lookup — dig into a specific offender.