Free tools / Broken Link Checker
Free tool · dead link checker
Broken Link Checker
Enter a domain. We read up to twelve pages from your sitemap, check every link on them, internal and outbound, and list each broken one with the pages it sits on. A link a site refuses to answer is listed apart, for you to open by hand, so a bot wall can't pass for a dead page.
Free, no signup, no email. Runs on your live site.
Sample result
What a result looks like
A real run on tofubofu.com, 10 November 2026: 12 pages, 95 unique links, 10.6 seconds.
Checked 95 links on 12 pages: none broken. 3 would not answer our check; open those by hand.
How it works
A bounded crawl, every link asked once
We read your sitemap
Up to twelve published pages, the homepage first. A site with no sitemap gets its homepage links followed instead.
We collect every link
Internal and outbound, deduplicated, with the pages each one appears on.
We ask each link once
Up to 150 links, every redirect hop checked. A HEAD request first, a GET when the server answers HEAD wrongly.
We sort the answers
Broken: 404, 410 or no such site. Unconfirmed: 403, 429, a server error or a timeout. Internal links come first, because those you can always fix.
Reference
What each answer means
| The link answered | We call it | Why |
|---|---|---|
| 200 to 399, after redirects | Loads | The page exists |
| 404 Not Found | Broken | The server says the page doesn't exist |
| 410 Gone | Broken | The server says the page was removed |
| No such site | Broken | The domain doesn't resolve, asked twice |
| 401, 403, 429 | Unconfirmed | The site refused or rate-limited our check |
| 500 and up, timeouts | Unconfirmed | The site had a bad minute; it says nothing about the page |
What to do with a result
What each result means, and what to do about it
| If the result says | It means | Do this |
|---|---|---|
| Internal link broken | A page on your site links to one that no longer exists. | Fix the link, or redirect the old address to its replacement with a 301. |
| Outbound link broken | You link to a page another site removed. | Link the publisher's current page, an archived copy, or remove the link. |
| Unconfirmed | The other site refused our automated check. | Open it in a browser. Most load fine; LinkedIn and many directories refuse bots. |
| The run hit its cap | Your site has more pages or links than one run reads. | Fix what it found, then check key sections page by page with the Stat and Source Checker. |
| None broken | Every link we checked loads or refused our check. | Run it again after each restructure, and before a launch. |
Why broken links matter for AI search
An AI crawler follows links to find and read your pages, the same way Google's does. A broken internal link is a dead end in that walk, and a page nothing links to is harder for any crawler to find. Outbound links matter for a different reason: a figure whose source link is dead reads as unsourced to a careful reader and to a careful engine.
None of this is a ranking factor anyone publishes for AI answers. It's site hygiene, the floor under everything else, and it's cheap to keep clean.
This checks your site. It cannot tell you whether AI names you.
A free scan puts real buying queries to all five AI engines and shows who they name instead of you.
Check your AI visibility free →FAQ
Frequently asked questions
How many pages does it check?
Up to twelve pages per run, starting with the homepage and taken from your sitemap. That keeps a run under a minute and fair to your server. On a larger site it's a sample, and the result says so.
Does it check outbound links?
Yes. Internal and outbound links are both checked, up to 150 unique links per run, internal first.
Why are some links 'unconfirmed' instead of broken?
Because a 403, a 429 or a server error tells us the site refused or failed our check. It says nothing about whether the page exists. LinkedIn and many directories refuse automated requests. Counting those as broken would send you fixing links that work.
Does it follow redirects?
Yes, up to five hops, and every hop is checked. A link that redirects to a working page counts as loading. Point the link at the final address anyway; each redirect is a hop a crawler has to take.
Does it run JavaScript?
No. It reads the HTML your server returns, which is what most AI crawlers read. Links that only appear after JavaScript runs aren't checked, and they're invisible to those crawlers too.
Will it slow down my site?
No. It reads at most twelve pages, four at a time, and asks each link once. That's lighter than one visitor clicking around.
Can I check one page instead of a site?
Paste the page into the Stat and Source Checker, which checks the links beside each figure, or run the GEO Audit, which checks every link on your homepage.
Is this free?
Yes, no signup. What we sell is measuring whether five AI engines name you when buyers ask.