DNSfinder.net
Dead Link Finder

Broken Link Checker

Enter the address of one page and the checker downloads its HTML, collects every link, image, script, stylesheet, frame and media file it references, and requests each one. Results come back with the failures first: broken URLs, URLs that refuse automated requests and URLs that redirect, each with its status code, anchor text and response time. It tests up to 100 unique URLs per page, which suits editors and site owners checking a page before or after publishing.

Loading Broken Link Checker...

Querying live edge resolvers and network infrastructure...

How to use the Broken Link Checker

  1. Type the full address of the page, for example https://example.com/blog/post, and click Check Links.
  2. Wait while the page is fetched and each URL on it is requested. A page with many slow links can take up to a minute.
  3. Read the four tiles (Broken, Blocked / restricted, Redirected, Links checked), then the table, which opens on problems and redirects only.
  4. Type in the filter box to narrow the table to one domain or path, switch the view to All links, or download the full result as JSON.

What to look for

Broken and blocked are counted separately

A URL counts as broken when it returns 404, 410, most other 4xx codes, a 5xx, or no response at all. Responses of 401, 403, 429 and 999 go into Blocked / restricted instead, because they usually mean the server turned away an automated request. Open those in a browser before you delete the link.

Redirected links show their destination

A status followed by an arrow means the URL answered only after one or more redirects, and the final address is printed under it. The link works, but every visitor pays for the extra hop. Point the href at the destination, especially for http to https and old-path redirects on your own site.

The page is read as HTML

The checker reads the markup the server sends and does not run JavaScript. Links, images and menus that a script inserts after load are not in that markup, so they are not tested. If a client-rendered page reports only a handful of URLs, that is the reason.

Guide

How a link check works and how to act on the results

What gets collected from the page

The page is fetched once, following up to five redirects, and up to 2 MB of HTML is scanned. The checker takes the href of every anchor, the src of every image, script, iframe, video, audio and source element, and the href of link elements that declare a stylesheet, icon, preload, manifest, canonical or alternate relation. Relative addresses are resolved against the page, honouring a base element if there is one. If the page itself answers with an error status, the scan stops and reports that code.

Some things are skipped on purpose: mailto:, tel:, sms:, javascript: and data: addresses, and links that are only a #fragment. Fragments are stripped from full URLs too, so /guide#setup and /guide#faq count as one URL, and the checker does not confirm that the anchor exists on the target. Duplicates are tested once. Anchors are collected before images and other assets, so when a page exceeds the 100-URL cap, assets are what gets dropped.

How each URL is tested

Each URL first gets a HEAD request, which asks for headers without the body. Plenty of servers handle HEAD badly, so a 400, 403, 405, 501 or any 5xx answer is retried with a small GET before the result is recorded, and so is a HEAD that fails at the connection level. Requests run eight at a time, each with an eight second timeout, and each follows up to five redirects.

The status pill shows the final code after redirects. When there is no code at all it reads Error and a short reason is printed underneath: Domain does not resolve, Timed out, a TLS certificate failure, or too many redirects. Links to private addresses or to ports other than 80, 443, 8080 and 8443 are never requested and show up as errors too. The Type column names the source element and marks URLs outside your registrable domain as external. Subdomains count as internal.

Fixing what the scan finds

Start with broken internal links, because you control both ends. A 404 on your own URL is either a typo in the href or a page that moved without a redirect: fix the link, and add a 301 from the old address if other sites may point at it. Broken images, scripts and stylesheets come next, since they change how the page renders.

For broken external links, find the content's new address, link to an archived copy, or remove the link. Domain does not resolve often means the site is gone or the domain lapsed. DNS Lookup confirms whether any records remain. A 5xx or a timeout can be temporary, so test again before you edit anything.

  • 404 or 410: the target is gone, so update or remove the link.
  • 401, 403, 429 or 999: the server refused the checker. Confirm by hand.
  • 200 followed by an arrow: the link works through a redirect. Replace the href with the final URL shown.
  • Error with a certificate message: the target's TLS setup is broken, and browsers will warn visitors as well.

What a single-page scan cannot tell you

This is a one-page check, not a crawler. It does not follow links into the rest of your site, so a full audit means running it on each important template: the home page, a category page, an article. Because navigation and footer links repeat everywhere, fixing them once clears the same findings on every page.

A pass describes one moment and one client. Soft 404s (a friendly not-found page served with status 200) are counted as working because the checker judges by status code. Scans are rate limited as well: a few per minute and a daily allowance per IP address, and the error message says how long to wait.

For counts of internal and external links, nofollow attributes and missing anchor text, Website Link Analyzer reads the same page without requesting each target. To write the 301s for pages you moved on an Apache site, use .htaccess Redirect Generator.

Knowledge Base & FAQ

Broken Link Checker FAQs

Common questions about the broken link checker.

Any URL that answers with a 4xx or 5xx status, or does not answer at all, apart from the four codes treated as blocked (401, 403, 429 and 999). That covers 404 Not Found, 410 Gone, server errors, DNS failures, timeouts and TLS certificate errors. A redirect that ends on a working page is not broken. It is listed as redirected.