Skip to content

Test your website now

Free, no card. We read only public pages.

Run free audit →

Technical SEO

How do you find and fix broken links on a website?

Broken links send visitors and crawlers to pages that do not exist. How to find them, which matter most, and how to fix them without redirect chains.

Find broken links with a site crawl, Search Console indexing reports and server logs, then review the failing destinations. Fix internal links at their source, redirect moved pages with a 301 to the closest equivalent, and update or remove links to external pages that disappeared. Avoid redirecting unrelated missing pages to your homepage.

Published · Last updated

By Michal Měřínský. Audit methodology.

What a broken link is

A link is broken when its target returns an error instead of the page the link promised. Most return 404 Not Found. Others return 410, a server error, or fail to connect at all. Broken links come in three kinds, and they are fixed in different places:

  • Internal links on your own pages pointing at your own missing pages.
  • Outbound links from your pages to other sites that changed or disappeared.
  • Inbound links from other sites to your pages that no longer exist.

Why they matter

  • Visitors hit a dead end and many leave.
  • Crawlers waste requests and lose a path to your other pages.
  • Inbound links to dead pages stop passing value to your site.
  • Broken sign-up, checkout or pricing links lose money directly. These are the ones to fix today.

How to find them

  • Crawl the site and list every link whose target returns 4xx or 5xx, with the page it appears on.
  • In Google Search Console, check the Page indexing report for not found URLs, and inspect where they are linked from.
  • Filter your server or CDN logs for 404 responses with a referrer from your own domain or from other sites.
  • Check images, scripts and PDFs as well as pages. A broken image is a broken link too.

How to fix them

  • Internal links: correct the URL in the page or template. Do not leave the fix to a redirect.
  • Moved pages: add a 301 redirect from the old URL to the closest equivalent, so inbound links and bookmarks keep working.
  • Outbound links: update to the new address, link to an archived copy, or remove the link.
  • Navigation and footer links: fix first, because they appear on every page.

Redirects that point at other redirects build chains. When a page moves twice, update the first redirect to point straight at the final URL.

How to prevent them

  • Generate internal links from your routes or CMS data instead of typing paths by hand.
  • Add redirects in the same change that renames a page.
  • Run a link check before every release, at least on navigation and conversion paths.
  • Keep a redirect map when restructuring the site.

What a scan can and cannot tell you

WebAuditOS reports crawled link and sitemap targets that end in a 4xx or 5xx after redirects, checks that sign-up and purchase links resolve, and reports subresources such as images and scripts that fail to load. Responses of 401, 403 and 429, which usually mean a login wall or bot protection, are excluded, and timeouts are not counted as broken links.

It cannot see links on other sites pointing at you, and it only follows links within its crawl budget. Search Console and server logs cover inbound broken links.

A report names an example source for each broken target, not necessarily every page that links to it. Search your templates for the URL before assuming one fix is enough.

Short answers

Do broken links hurt SEO? A few do little harm sitewide, but each one wastes visitors and crawl paths, and broken inbound links waste authority.

Should I redirect every 404? Only when a relevant replacement exists. Otherwise let it return 404.

How often should I check? Before releases, and monthly on active sites.

Are broken outbound links a problem? For readers, yes. Fix or remove them when you find them.

In the product

The checks this maps to

Every check named here runs on every scan, on every plan - what a plan changes is how many pages are crawled, how long the history is kept and what you can do with the result. These are the ids the findings carry, so you can match a line in a report to the explanation above.