Broken Link Checker — 404s, Redirects & Dead Link Audit
Pricing
from $3.00 / 1,000 page crawleds
Broken Link Checker — 404s, Redirects & Dead Link Audit
Crawl your website and check every link and image, internal and external. Reports HTTP status, redirect chains and the page each broken link sits on. Respects robots.txt, polite concurrency, no browser. For sites you own or have permission to audit.
Pricing
from $3.00 / 1,000 page crawleds
Rating
0.0
(0)
Developer
Upton & Partners
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 hours ago
Last modified
Categories
Share
Crawl a website and check every link and image on it, internal and external. Get back one row per link with the HTTP status, final URL after redirects, redirect chain length, error message and the page it was found on — as a table you can export to CSV, JSON or Excel, or pull via API.
Intended for checking sites you own or have permission to audit.
What it does
- Crawls a site from your start URLs, staying on the same host (set the page limit, default 500)
- Checks every link and image found on those pages, including external links (optional)
- HEAD first, GET as fallback, because many servers mishandle HEAD requests
- Follows redirects and reports the final URL and the number of hops
- Polite by design: respects
robots.txt(includingCrawl-delay), limits concurrency, and spaces out requests to each host - Clear errors: DNS failures, timeouts, TLS certificate problems and redirect loops are reported per link, never crash the run
- No browser, no proxies — plain HTTP, so it's fast and cheap
Use cases
- SEO audits: find 404s, redirect chains and dead images before they cost rankings
- Pre-launch and post-migration checks
- Ongoing content QA for blogs, docs sites and knowledge bases
- Finding outdated external references
Input
| Field | Description |
|---|---|
startUrls | Pages to start from, e.g. https://example.com. Only same-host pages are crawled. |
maxPages | Maximum pages to crawl in total. Default 500. |
checkExternalLinks | Also check links and images on other sites. Default on. |
maxConcurrency | Simultaneous requests, 1 to 20. Default 5. |
requestDelayMs | Minimum pause between requests to the same host. Default 100. |
onlyReportBroken | Save only broken links. Default off. |
{ "startUrls": ["https://example.com"], "maxPages": 500, "checkExternalLinks": true, "maxConcurrency": 5 }
Output
One row per unique link or image per source page.
{"sourcePage": "https://toml.io/en/v0.3.1","linkUrl": "https://github.com/dbohdan/remarshal","anchorText": "remarshal","linkType": "external","statusCode": 404,"finalUrl": "https://github.com/dbohdan/remarshal","redirectCount": 0,"error": "HTTP 404","isBroken": true}
linkType is internal, external or image. anchorText is truncated to 100 characters (an image's alt text is used for images). A SUMMARY record in the key-value store gives page, link and broken-link totals.
Pricing
Pay per page crawled. Checking the links on a page is included, however many there are. Pages that fail to load are not charged.
Notes
- Use it only on sites you own or have permission to audit. It identifies itself honestly as
BrokenLinkChecker. - Same-host pages disallowed by
robots.txtare neither crawled nor requested; their links are reported as skipped, not broken. External links are checked with a single HEAD/GET request each, as a browser would. - External responses 401, 403, 429 and 999 usually mean the site blocks automated checks, not that the link is dead. They are reported with an explanatory message and
isBroken: false. - Links to
mailto:,tel:,javascript:and pure#fragmentlinks are ignored; fragments are not verified. - A start URL that redirects to another host (for example to the
wwwversion) makes that host the crawled site. - If your site rate-limits or sits on small hosting, lower
maxConcurrencyor raiserequestDelayMs. - This Actor was built and is maintained with AI assistance, with human review. Issues are answered within a few days.