How to find and fix broken links on your website
A broken link points to a page that no longer works. Every site collects them as pages move, products sell out and other sites close. Finding them takes one crawl, and most are fixed by editing a single link or adding a redirect.
What counts as a broken link
A link is broken when following it doesn't reach a working page. In practice that means one of these:
| Result | What it means |
|---|---|
404 Not Found | The page doesn't exist at that address. By far the most common case: the page was deleted, moved without a redirect, or the link has a typo. |
410 Gone | The page was removed on purpose. The link should go too. |
5xx server errors | The server failed. Sometimes temporary, so check again before changing the link. |
| DNS failure, timeout or refused connection | The whole site is unreachable, often because a domain expired. Common in old outbound links. |
| A redirect that ends in an error | The link redirects, but the final page is a 404. It looks fine in the HTML and is still broken. |
A link that redirects to a working page isn't broken, but it is worth updating to the final URL. See redirect chains for why every extra hop costs something. For the full list of codes, see HTTP status codes for SEO.
Do broken links hurt SEO?
Not in the way people often fear. Google says 404 errors for pages that really don't exist are normal and don't count against a site. The harm is indirect, and it depends on the kind of link:
- Broken internal links are the ones that matter. Visitors hit dead ends, links stop passing value to the page they were meant for, and crawlers spend requests on URLs that go nowhere. If an important page is only reachable through a broken link, search engines may stop finding it at all.
- Broken links from other sites to a page you deleted waste the value of those links. A redirect to the closest current page recovers it.
- Broken outbound links to other sites make a page less useful and look neglected, but a few of them won't move rankings.
How to find broken links
Clicking through pages by hand doesn't scale past a handful of pages. A crawler follows every link from your homepage, checks each one, and reports where it is:
The checker crawls up to 1,000 pages, including the URLs in your XML sitemap, and checks every internal and outbound link it finds. For each broken link you get the status, the target URL, and every page it appears on, so you know exactly where to edit. Two other sources are worth checking too:
- Google Search Console. The Pages report lists URLs Google tried that returned
404under "Not found (404)". Open one and use URL Inspection to see where Google found it. Many will be old URLs linked from other sites, which no crawl of your own pages can find. - Your server or CDN logs, filtered to 404 responses, show which missing URLs real visitors and bots are actually requesting, and how often.
403, 429 or 999 even when the page works. Treat those as "couldn't verify" and check them in a browser before removing the link.Which to fix first
- Links in navigation, headers and footers. One broken menu link appears on every page, so fixing it fixes hundreds of instances at once.
- Internal links to pages that should exist, such as product, service and category pages that moved.
- Deleted pages that other sites still link to. Search Console's Links report shows your most-linked pages; check that each one works.
- Internal links in body content, such as old blog posts linking to retired pages.
- Outbound links, starting with your most visited pages.
How to fix each kind
- The page moved. Update the link to the new URL. Then add a
301redirect from the old URL to the new one, so links you don't control keep working too. Our guide to 301 vs 302 redirects covers which type to use. - The page was deleted and has a close replacement. Point the link at the replacement and redirect the old URL to it. A redirect to an unrelated page, such as the homepage, is usually treated as a soft 404, so it doesn't pass anything on.
- The page was deleted with no replacement. Remove the link, or reword the sentence so it doesn't need one. Let the old URL return
404or410. - The link has a typo, such as a missing slash, a wrong letter,
http:/or a link tolocalhostor a staging domain left over from development. Correct the link itself. - An outbound page is gone. Look for its new location on the same site, link to an archived copy at the Internet Archive, or remove the link.
Run the checker again afterwards to confirm everything resolves, and export the CSV if someone else edits the content.
How to stop new ones appearing
- Add a redirect whenever a URL changes, as part of the same task, not as a follow-up.
- Link to the final URL, including the trailing slash and
https://, so internal links never rely on redirects. - Build menus from real
<a href>links. Links created only by JavaScript click handlers can't be checked by most tools, and search engines may not follow them. - Check after every migration or redesign, and on a schedule for large sites. Outbound links break on their own as other sites change.
Questions
What does broken link mean?
A link whose target doesn't load: usually it returns a 404 error, but it can also be a server error, a site that no longer exists, or a redirect that ends on an error page.
Are broken links bad for SEO?
Broken internal links are worth fixing because they waste crawling and stop link value reaching your pages. A few broken outbound links won't hurt rankings on their own, though they make a page less useful. Google doesn't penalise a site for 404s on pages that really don't exist.
How do I find broken links on my website for free?
Run a crawler such as the free Broken Link Checker, which checks up to 1,000 pages and lists every broken link with the pages it's on. Also check the "Not found (404)" list in Google Search Console's Pages report.
Should I redirect every 404?
No. Redirect URLs that had links, traffic or a clear replacement. A URL that never existed, or a page with nothing similar to send people to, should return 404. Redirecting everything to the homepage is treated as a soft 404 and confuses visitors.
How often should I check for broken links?
After any migration, redesign or bulk content change, and otherwise every month or two. Large sites and sites with many outbound links benefit from checking more often.