Free Broken Link Checker
Paste a page URL and every link on it gets followed and sorted: working, redirected, broken, or unreachable. You get the status code and the final destination for each one, in a couple of seconds. Up to 60 links per page, no signup, nothing stored.
Broken Link Checker
Scan a page's outbound links and flag 404s, redirects, and connection errors. Checks up to 60 links per page.
A link that resolves might still be routing through a long or broken redirect chain - trace it with the redirect checker.
What counts as a broken link
Not everything that looks broken is broken, and the fix is different in each case.
A 404 means the server answered and the page is not there. Someone deleted it, or renamed it without a redirect. This is the one worth chasing.
A 410 means the server answered and the page is deliberately gone forever. Treat it like a 404 - the difference matters to Google, not to you.
A 301 or 302 means the link works, but it is pointing at an old address and the server is forwarding the visitor on. Nothing is broken. It is still worth updating if the link is yours, because every hop is latency and a chance for the chain to break later.
A connection error means nobody answered at all. The domain no longer resolves, the certificate has expired, or the server timed out. This usually means the whole destination site is gone rather than one page moving.
A 403 means the server answered and refused. Often the page is fine for a human and blocked to automated requests - worth opening in a browser before you delete the link.
How to read your results
Each link comes back with four things: the URL, the status, the HTTP status code, and the final URL if it was redirected.
Start with the broken bucket - those are costing you now. Then look at the redirected bucket, because it tells you something the broken bucket cannot: which of your links were written a long time ago. A page with twelve redirected outbound links has not been touched in years, and that is usually a content problem rather than a link problem.
Links in the error bucket need a human. A timeout might be a slow server today and fine tomorrow. A dead domain is permanent.
What broken links actually cost you
Being straight about this, because a lot of pages on this topic are not: there is no ranking penalty for broken links. Google does not dock you points.
What you lose is real anyway. Every crawl of a dead URL is crawl budget spent on nothing, which matters on a large site. Every broken outbound link is link equity you were passing that now goes nowhere. And a visitor who clicks through to a 404 usually leaves rather than hunting for the right page - on a product or checkout path that is a lost sale rather than a lost pageview.
The case for fixing them is that they cost you money and attention, not that they cost you rankings.
Fixing broken links by platform
WordPress. Edit the post and update the href. If the page moved inside your own site, add a 301 in your redirect plugin rather than editing every link that points at it.
Shopify. Navigation links live in the theme editor; body links live in the page or product description. For internal moves, Shopify has URL Redirects built in under Online Store, Navigation.
Webflow. Links are on the element in the Designer. Internal redirects go in Project Settings, Publishing.
Framer. Links are set on the element. Redirects are in Site Settings under Redirects, and they need the path with no domain.
In every case, prefer fixing the link over relying on a redirect. A redirect is a patch that has to keep working forever.
Checking one page or crawling a whole site
This tool checks the single page you give it, up to 60 links. That is deliberate: it means you get an answer in seconds and you can check a page you are about to publish.
When you need every page on the site checked at once, you want a crawler rather than a checker - Screaming Frog, Ahrefs Site Audit or Semrush will do it. The sensible pattern is to crawl the whole site occasionally, use our Sitemap Generator to keep that crawl complete, and use a checker like this one on individual pages as you publish or edit them.
If your site has more than 60 links on a single page, run it once and then again on the sections it truncated.
How often to check
Tie it to publishing rather than the calendar. Check a page when you publish it and when you substantially edit it, because that is when links get typed and mistyped.
Beyond that, outbound links rot on their own - other people delete their pages without telling you. Once a quarter across your most-trafficked pages catches most of it. Pages with a lot of outbound links, like resource lists and roundups, are worth checking more often because they decay fastest.
FAQ
Frequently Asked Questions
How many links does it check?
Up to 60 links on the single page you enter, internal and outbound. It does not crawl your whole site.
Does it check images and scripts too?
It checks links in href attributes. Broken image files are covered by the Alt Text Checker instead.
Why is a link marked as a redirect rather than broken?
Because it resolves. The server sends the visitor somewhere else and returns a 200 at the end. It works, but each redirect adds a hop, and if you control the source it is worth updating the link to point at the final URL.
Do broken links hurt SEO?
Not as a direct penalty. They waste crawl budget, they leak the value of any link equity you were passing, and a visitor who hits a 404 usually leaves. Those are real costs without needing a penalty to exist.
Can I check a page behind a login?
No. The checker fetches the page the way a search engine would, so it only sees publicly reachable pages.
What does a connection error mean?
Nobody answered at all - the domain no longer resolves, the certificate has expired, or the server timed out. It usually means the destination site is gone rather than that one page has moved.
Checking image files instead of links? Try the Image SEO Checker.