Broken Link Checker: Find 404s & Dead Links avatar

Broken Link Checker: Find 404s & Dead Links

Pricing

from $2.00 / 1,000 page crawleds

Go to Apify Store
Broken Link Checker: Find 404s & Dead Links

Broken Link Checker: Find 404s & Dead Links

Crawl your website and find every broken link (404, 410, 5xx, dead domains, timeouts), malformed link and optional redirect, with the exact pages and anchor texts where each one appears. Pay per crawled page, not per link.

Pricing

from $2.00 / 1,000 page crawleds

Rating

0.0

(0)

Developer

Digitální produkty pro život

Digitální produkty pro život

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 hours ago

Last modified

Share

Crawl your whole website and find every broken link: 404 and 410 pages, server errors, dead domains, timeouts and malformed links. For each problem you get the exact pages where the link appears and its anchor text, so you can fix it in minutes.

Pay per crawled page, not per link. A typical page has 50–150 links, and they are all checked for the price of one page.

What it checks

  • Internal links: every page of your site is crawled and every link on it is followed.
  • External links: links to other websites are checked (not crawled).
  • Optional: images, JavaScript, CSS and iframes, plus redirects (great for SEO clean-ups).
  • Smart re-checks: links are first checked with a fast HEAD request, and anything suspicious is re-checked like a real browser to avoid false alarms. Sites that block bots (LinkedIn, Facebook…) are reported separately and hidden by default.
  • Polite crawling: respects robots.txt and limits parallel requests per host.

Output

One row per problematic link, sorted by severity and frequency:

{
"url": "https://apify.github.io/fingerprint-suite/docs/guides/fingerprint-generator/",
"status": "broken",
"httpStatus": 404,
"reason": "Not found",
"linkType": "external",
"occurrences": 1,
"foundOnPages": 1,
"foundOn": [
{ "page": "https://crawlee.dev/js/docs/guides/got-scraping", "text": "Header Generator documentation", "tag": "a" }
]
}

status is one of broken, error (unreachable: DNS, timeout, SSL), invalid (malformed URL), redirect and blocked. The SUMMARY record has totals: pages crawled, links checked, broken, redirects and more.

Use cases

  • SEO audits: broken links hurt rankings and waste crawl budget.
  • Website maintenance: schedule a weekly run and get an e-mail or Slack message when something breaks.
  • Agencies: check client sites in bulk and attach the CSV to reports.
  • Content migrations: verify that nothing broke after a redesign or domain move.

Tips

  • Start small with Max pages (e.g. 100) to see the results and cost, then raise it.
  • Use Ignore URLs matching for endless filters, calendars or cart links (e.g. \?sort=, /cart).
  • Turn on Report redirects to find links you should update to their final URL.

Questions or ideas?

Open an issue on the Issues tab. Feature requests are welcome.

How to use it via API

You can run the Actor from the Apify Console, on a schedule, or from your own code. Get your API token in Apify Console → Settings → Integrations.

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("digitalni.produkty.pro.zivot/broken-link-checker").call(run_input={
"startUrls": [
"https://crawlee.dev"
],
"maxPages": 100
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript / Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('digitalni.produkty.pro.zivot/broken-link-checker').call({
"startUrls": [
"https://crawlee.dev"
],
"maxPages": 100
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Integrations and AI agents

  • Export results as JSON, CSV, Excel, XML or HTML, or open them directly in Google Sheets.
  • Connect to Make, Zapier, n8n, Slack, Google Drive, Airbyte or any webhook to get broken links on a website into your workflow automatically.
  • Use it from AI agents and LLM apps (Claude, ChatGPT, Cursor, LangChain…) through the Apify MCP server: the agent can call this Actor as a tool.
  • Schedule runs (hourly, daily, weekly) to keep data fresh without any code.

FAQ

How much does it cost? $2 per 1,000 crawled pages, all links on each page included. A 100-page website costs $0.20.

Will it flag links that work in a browser? Suspicious links are re-checked like a real browser to avoid false alarms, and sites that block bots (LinkedIn, Facebook…) are reported separately.

Can I check my site regularly? Yes. Schedule the Actor weekly and get notified by email or Slack when new broken links appear.

More tools from the same developer

All tools with code examples: github.com/Phenixik/apify-actors