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
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
Maintained by CommunityActor stats
4
Bookmarked
36
Total users
0
Monthly active users
2 days ago
Last modified
Categories
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
baseUrland 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
- Open the Actor in Apify Console.
- Set
baseUrlto a validhttp://orhttps://URL. - Adjust
maxPages,maxConcurrency, andrequestDelayMsto fit the site. - Keep
proxyConfigurationenabled if you want Apify Proxy. - 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.
Recommended smoke input
{"baseUrl": "https://example.com","crawlSubdomains": false,"maxConcurrency": 1,"maxPages": 1,"requestDelayMs": 0,"saveOnlyBrokenLinks": true,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": []}}
Input reference
| Field | Type | Default | Notes |
|---|---|---|---|
baseUrl | string | required | Starting URL for the crawl |
crawlSubdomains | boolean | false | Crawl matching subdomains |
maxConcurrency | integer | 10 | Parallel browser pages |
maxPages | integer | 10 | Max requests per crawl |
requestDelayMs | integer | 1500 | Delay between page opens |
notificationEmails | string[] | [] | Email recipients for broken-link alerts |
saveOnlyBrokenLinks | boolean | true | Store only broken links in the dataset |
proxyConfiguration | object | { useApifyProxy: true, apifyProxyGroups: [] } | Standard Apify proxy config |
Output
OUTPUT.jsonin Key-Value StoreOUTPUT.htmlin Key-Value Store- Dataset items for broken links or full crawl diagnostics
Troubleshooting
- Input validation failed: ensure
baseUrlincludes 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 installnpm testnpx --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-
latestbuild tag. - Inspect both logs and dataset output before treating a fix as done.
Support
- Apify: https://apify.com
- Quick Life Solutions: https://quicklifesolutions.com