Broken Link Checker - Ensure Your Website's Integrity avatar

Broken Link Checker - Ensure Your Website's Integrity

Pricing

$19.99/month + usage

Go to Apify Store
Broken Link Checker - Ensure Your Website's Integrity

Broken Link Checker - Ensure Your Website's Integrity

Maintain your website's health and user experience with our Broken Link Checker. Easily identify and fix broken links to enhance your site's navigation, improve SEO, and keep visitors engaged.

Pricing

$19.99/month + usage

Rating

5.0

(1)

Developer

codemaster devops

codemaster devops

Maintained by Community

Actor stats

4

Bookmarked

36

Total users

0

Monthly active users

2 days ago

Last modified

Share

Broken Links Checker

Apify Actor that audits a website for broken links, validates fragment anchors, and produces both a dataset and an HTML report.

What this Actor does

  • Crawls the provided baseUrl and optionally matching subdomains.
  • Detects broken links, invalid fragments, and crawled-vs-uncrawled targets.
  • Saves a structured HTML report in the default Key-Value Store.
  • Saves dataset items for exports and downstream automation.
  • Can send email notifications when broken links are found.

Apify Console usage

  1. Open the Actor in Apify Console.
  2. Set baseUrl to a valid http:// or https:// URL.
  3. Adjust maxPages, maxConcurrency, and requestDelayMs to fit the site.
  4. Keep proxyConfiguration enabled if you want Apify Proxy.
  5. Run a tiny smoke input first, then scale up.

Runtime notes

  • The Actor prefers a system Chromium binary when Apify provides one, and falls back to the bundled Puppeteer browser behavior when needed.
  • Invalid proxy credentials are logged and the crawl continues without proxy.
  • Email notifications are best-effort: failure is logged, but the crawl still succeeds.
{
"baseUrl": "https://example.com",
"crawlSubdomains": false,
"maxConcurrency": 1,
"maxPages": 1,
"requestDelayMs": 0,
"saveOnlyBrokenLinks": true,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": []
}
}

Input reference

FieldTypeDefaultNotes
baseUrlstringrequiredStarting URL for the crawl
crawlSubdomainsbooleanfalseCrawl matching subdomains
maxConcurrencyinteger10Parallel browser pages
maxPagesinteger10Max requests per crawl
requestDelayMsinteger1500Delay between page opens
notificationEmailsstring[][]Email recipients for broken-link alerts
saveOnlyBrokenLinksbooleantrueStore only broken links in the dataset
proxyConfigurationobject{ useApifyProxy: true, apifyProxyGroups: [] }Standard Apify proxy config

Output

  • OUTPUT.json in Key-Value Store
  • OUTPUT.html in Key-Value Store
  • Dataset items for broken links or full crawl diagnostics

Troubleshooting

  • Input validation failed: ensure baseUrl includes the protocol and numeric fields are integers.
  • Proxy warnings: missing permissions or bad proxy configuration are logged and the run continues.
  • Browser launch issues: the Actor now resolves a usable browser path from the container when possible; if a run still fails, inspect the build logs and container image path first.
  • Email not delivered: notification failures are logged and do not fail the crawl.

Local development

npm install
npm test
npx --yes apify-cli run --input-file input.json

Verification notes

  • Keep runs small for smoke tests.
  • Re-run the actor remotely after changes using a non-latest build tag.
  • Inspect both logs and dataset output before treating a fix as done.

Support