~/dead-link-checker robots.txt og preview network ☕ Support me apps ← about me
// free broken link checker · no signup · runs in your browser

Dead Link Checker — find broken links on any website

Scan a website, a sitemap, a list of URLs or pasted HTML. Every link gets a real status code: 404s, redirects, server errors, dead domains, insecure http:// links and anchors that point nowhere, with the page where each link was found.

Tip: start with 25 pages. Bigger sites take a few minutes.

Guide — find every broken link in five steps

Scan a website, a sitemap, a list or pasted HTML. Real status codes, the page each link sits on, and a CSV to fix them.
1Choose what to check

Scan a website follows the links on your site page by page. Sitemap checks every URL in sitemap.xml. Or paste a list of URLs or HTML.

2Set the depth

Pick how many pages to crawl (1 to 250) and whether to include external links and images, scripts and CSS.

3Press Check links

Pages are read and every unique link is checked in parallel. The table fills in live; Stop keeps what you have.

4Read the results

Broken (404, 410), dead domains, server errors, redirects, blocked checks, http:// links and missing #anchors, each with the page and link text where it was found.

5Fix and re-check

Export a CSV or JSON for your to-do list, fix the links, then press Re-check problems to confirm.

What the results mean

FIXProblems
Broken
4xx: 404 not found, 410 gone
Dead
domain gone, connection failed or timeout
Server error
5xx: check again later
Missing anchor
#section does not exist on the page
CHECKWorth a look
Redirect
works, but update the link to the final URL
Blocked
401, 403, 429: the site refuses bots
http://
insecure link on an https page
METHODAccurate or private
Accurate
real status codes via a public proxy
Private
only your browser; finds dead domains, not 404s
Data
nothing is stored on a server

Checking for dead links, explained

A dead link points to a page, image, stylesheet or script that no longer loads. Visitors hit a 404 page, search engines waste their crawl budget on it and your site looks neglected. This free broken link checker scans a website, a sitemap, a list of URLs or a piece of HTML, checks every link and shows exactly where each broken one is, so you can fix it.

How does the website scan work?

Enter your home page or any start page. The checker reads that page, collects every link, image, script and stylesheet on it, then follows the links that stay on the same website, page by page, up to the number of pages you chose. Each unique URL is checked once, even if it appears on fifty pages, and the report lists every page where it was found together with the link text. Links to other websites are checked too, but not crawled further.

Why does the accurate method use a proxy?

Browsers protect you with a rule called CORS: JavaScript on one website may not read the answer from another website unless that site allows it. Without help, a browser-only checker can only see whether a server answers at all. That finds dead domains, but not a 404 page. The Accurate method asks a public CORS proxy (allorigins.win, with corsproxy.io as back-up) to request each URL and report the real HTTP status code and the final address after redirects. The Private method sends nothing to a proxy, but only tells you whether a domain is reachable.

Which status codes count as broken?

404 Not Found and 410 Gone are the classic broken links; other 4xx codes count as broken too. 5xx codes are server errors: the page might come back, so check again later. 401, 403 and 429 often mean the site blocks automated checks (LinkedIn and some shops do this) while the link works fine in a browser, so they are listed separately as blocked check. A link that leads somewhere else first is a redirect: it works, but pointing straight to the final URL is faster and better for SEO.

What else does it check?

It flags http:// links on https pages (mixed or insecure links), anchors that point nowhere (a link to #pricing while no element has that id), empty links, and links with rel="nofollow". With images, scripts and CSS switched on, it also finds missing images and broken stylesheets, which do not show up as clickable links.

Checking a sitemap

Enter the address of your sitemap.xml. The checker reads it, follows sitemap index files, and checks every URL listed, up to the maximum you choose. Every URL in a sitemap should answer with 200 OK; a redirect or 404 there means the sitemap is out of date. Tick also check the links on every page to check the links inside those pages too.

Checking pasted HTML or a list

Paste the HTML of a page, an email newsletter or a Markdown file, and add a base URL if it contains relative links like /about. Or paste a plain list of URLs, one per line, for example an export from your CMS or Search Console.

How fast is it, and is it polite to the server?

By default four requests run at the same time. A 25-page scan with a few hundred links usually takes one to three minutes. You can go up to eight in parallel, but on small sites two or four is kinder to the server. Stop at any time and the results so far stay in the table.

Is my data stored anywhere?

No account, no database. The report lives in your browser tab until you close it; export it as CSV or JSON if you want to keep it. In the accurate mode the URLs being checked pass through the public proxy, so do not use it for private intranet links. Your settings are remembered in your browser.

More free tools