Broken Link Checker

Dead links drag down user trust, SEO and readers’ patience. Paste a page URL and the checker crawls every <a href>, requests each target, and reports the HTTP status — 200 OK, 301 redirect, 404 not found, 500 error, timeout. Redirect chains get expanded so you can spot any that eventually land on an error, and the output is filterable by status so you can fix the worst first.

How the broken link checker works

  1. 1

    Enter a page URL

    Single page by default. A small sitemap option queues up to 50 pages from a sitemap.xml.

  2. 2

    All outbound links are extracted

    Internal, external, images and scripts are parsed from the rendered HTML.

  3. 3

    HEAD then GET requests

    Each URL gets a HEAD first; servers that refuse HEAD fall back to a lightweight GET. Timeouts fire at 10 seconds per link.

  4. 4

    Results grouped by status

    2xx healthy, 3xx redirects (with chain), 4xx client errors, 5xx server errors, and DNS/timeout failures. Export as CSV when you are done.

HTTP status primer

Code Meaning What to do
200 OK No action
301 Moved permanently Update link to final URL
302 Found (temporary redirect) Usually fine; long chains are bad
307 / 308 Strict temporary / permanent redirect Update if chain has multiple hops
403 Forbidden Link still exists but blocked (paywall, region)
404 Not found Remove or replace the link
410 Gone Definitely replace — page is permanently removed
429 Too many requests Re-check later; the target is rate-limited
500 / 502 / 503 Server errors Re-check; transient issue on the target
Timeout Server too slow Re-check; flag if persistent

Redirect chains

Multiple hops (A → B → C → D) add latency, leak PageRank, and confuse crawlers. Target is always ≤ 1 hop from the source link. The checker flags chains of 2+ so you can update the original href to the final destination.

Common culprits

  • Expired external articles — news sites rot, blogs go dark.
  • HTTPS migration leftovershttp:// targets that now redirect to https://.
  • Moved product pages — e-commerce reorganisations break inbound links.
  • Anchor links to renamed sections#old-heading on your own site.
  • Trailing slash inconsistencies/page vs /page/ can 301 or 404 depending on server config.

Speeding things up

  • Crawl one page at a time for accurate reporting; large sitemaps hit rate limits on shared servers.
  • Cache status for 24 hours to avoid pummelling the same targets repeatedly.
  • Exclude social media share URLs — they frequently return 403 to bots regardless of actual link health.

Frequently Asked Questions

By default it checks outbound links on the single URL you provide. A sitemap mode queues up to 50 pages at a time; for full-site audits on large properties use a dedicated desktop crawler like Screaming Frog.

Some servers block requests without a browser User-Agent, cookies or referer. The checker sends a minimal header set; retry with the “pretend to be a browser” option if you suspect false positives.

Yes, rel=“nofollow” links are still checked because broken nofollow links still hurt UX. You can filter them out in the results view if you only care about dofollow.

Monthly for most blogs, weekly for high-traffic or e-commerce pages. After any major content migration, run it the next day and a week later.

Related Tools