Broken Link Checker: Site Crawler with Source Pages avatar

Broken Link Checker: Site Crawler with Source Pages

Pricing

$4.00 / 1,000 results

Go to Apify Store
Broken Link Checker: Site Crawler with Source Pages

Broken Link Checker: Site Crawler with Source Pages

Crawl your whole website and find every broken link, redirecting link, and dead external link, with the exact page and link text where each one appears, so you know what to fix.

Pricing

$4.00 / 1,000 results

Rating

0.0

(0)

Developer

CreativeFour LLC

CreativeFour LLC

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

It crawls your whole website and finds every broken link (404, 410, 5xx, timeouts, dead domains), every link that points at a redirect, and every dead external link, and it tells you exactly which page each one is on and what the link text says. That's the part you need to actually fix it.

Enter your home page and click Start. Because it runs on Apify, you can also schedule it (for example, weekly), call it from the API, and connect the results to Slack, email, Google Sheets, or Zapier.

Why use it?

  • Fix links, not just find them. Every result lists the pages that contain the bad link, with the link text, so you can go straight to the page and edit it.
  • SEO hygiene. Broken internal links waste crawl budget and leak link equity; links to redirects slow pages down and should point at the final URL.
  • Catch rot on other sites. External links die quietly. Check them all in the same run.
  • Pay only for problems. By default only broken, redirecting, and erroring links are saved and charged. Healthy links are counted in the summary for free.
  • Polite by default. It follows robots.txt, limits concurrent requests to your server, and never crawls other websites.

How to use it

  1. Open the Input tab and enter your website's URL (for example https://example.com).
  2. Optional: raise Max pages to crawl for a bigger site, or turn on Check images, scripts, and stylesheets.
  3. Click Start.
  4. Open the Output tab. The Fix list view gives one row per page to edit.
  5. Export as CSV, Excel, JSON, or HTML, or schedule the run to repeat.

Input

FieldWhat it does
Website to checkStart URL(s). Same-site pages are followed; www and non-www count as one site.
Max pages to crawlCrawl limit (default 500). Every link found on those pages is still checked.
Report only problemsOn by default. Turn off to get a full link inventory.
Check external linksOne lightweight request per external link. External sites are never crawled.
Check images, scripts, and stylesheetsAlso check img, script, stylesheet, icon, video, audio, and iframe sources.
Crawl subdomainsTreat blog.example.com as part of example.com.
Skip URLs matchingRegular expressions or plain text, for example /tag/ or \?replytocom=.
AdvancedMax depth, robots.txt, per-site and overall concurrency, timeout, max redirects, user agent.
{
"startUrls": ["https://example.com"],
"maxPages": 1000,
"checkExternalLinks": true,
"excludeUrlPatterns": ["/tag/", "\\?replytocom="]
}

Output

One result per problem link. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

{
"url": "https://example.com/old-pricing",
"isInternal": true,
"finalStatus": 404,
"statusClass": "4xx",
"flags": ["broken"],
"foundOnCount": 3,
"foundOn": [
{ "page": "https://example.com/", "anchorText": "See pricing" },
{ "page": "https://example.com/blog/launch", "anchorText": "our plans" }
],
"finalUrl": "https://example.com/old-pricing",
"redirectCount": 0,
"redirectChain": [],
"responseTimeMs": 142,
"error": null,
"checkedAt": "2026-09-23T21:00:00.000Z"
}

Two views are ready in the Output tab:

  • Broken and redirecting links: one row per bad link.
  • Fix list: one row per page and link, which works as a to-do list for editing.

A SUMMARY record in the run's key-value store has the totals: pages crawled, link targets, checked, broken, redirected, errors, reported, and skipped by robots.txt.

Data fields

FieldDescription
urlThe link target
foundOn / foundOnCountPages that contain the link (up to 20) with link text, and the total number of occurrences
isInternalWhether the link points to your own site
finalStatus / statusClassHTTP status after redirects; 2xx to 5xx, or error
finalUrl, redirectCount, redirectChainWhere the link really goes, and every hop on the way
flagsbroken, redirect_chain, temporary_redirect, redirect_loop, too_many_redirects, https_to_http_downgrade, error
errorTimeout, DNS failure, refused connection, or TLS error

Use it from AI agents (MCP)

AI agents can find and run this Actor through the Apify MCP server.

  • Claude, ChatGPT, or any MCP client: add https://mcp.apify.com?tools=creativefour/broken-link-crawler as a custom connector, and sign in to Apify when prompted.
  • Claude Code, Cursor, VS Code, or Codex: run apify mcp install claude-code (swap in your client's name), then ask your agent to "check example.com for broken links with creativefour/broken-link-crawler".

The agent sends the same input as the Input tab, gets the same results, and pays the same per-result price.

You pay per reported link: each problem link saved to the dataset is one result. Healthy links and crawled pages cost nothing extra. A typical small-business site with a few hundred pages and a handful of broken links costs cents. Set a maximum charge per run in the run options, and the crawler stops cleanly at that limit, keeping everything found so far.

Tips

  • Use Skip URLs matching for endless URL spaces such as calendars, tag archives, and faceted filters.
  • Keep Max concurrent requests per site low (the default is 3) on small or shared hosting.
  • Links that only redirect still work, but updating them to the final URL makes pages faster and cleaner for SEO.
  • Schedule a weekly run and send new problems to Slack or email with an Apify integration.

FAQ and support

Does it render JavaScript? No. It reads the HTML your server sends, which covers most websites, and it doesn't find links that are only added by client-side JavaScript.

Will it crawl other websites? No. Only your site's pages are crawled. External links get a single status check each.

Is it okay to crawl any site? Please crawl sites you own or are allowed to test. The crawler follows robots.txt and limits its request rate by default.

Found a bug or need a feature? Open an issue on the Issues tab. Custom versions are available on request.