Broken links accumulate quietly. A partner changes their URL, you rename a page, a plugin’s docs move, a product is discontinued. Nothing alerts you; visitors just hit a 404, lose trust, and leave. On a site of any age, an audit typically finds a few dozen. Fixing them is one of the more boring SEO jobs and one of the few with no downside, so here is how to find them all, decide what to do with each, and stop new ones from appearing.
Why they matter
- Visitors leave. A dead link mid-article ends the reading session for most people.
- Crawl budget is wasted. Googlebot follows the link, gets a 404, and that request could have gone to a live page.
- Link equity leaks. External sites linking to a URL of yours that now 404s pass nothing. A redirect recovers it.
- Trust signals. Google has said broken links are not a direct ranking factor, but a site full of them is usually a site with other maintenance problems, and users notice.
Types of broken link
| Status | Meaning | Priority |
|---|---|---|
| 404 Not Found | Page does not exist | High for internal links; medium for external |
| 410 Gone | Deliberately removed | Same as 404; update or remove the link |
| 5xx Server Error | Target site is down or misconfigured | Re-check in a day; may be temporary |
| Timeout / DNS failure | Domain expired or host unreachable | Usually permanent; replace the link |
| 301/302 chain | Link works but redirects, sometimes several times | Low; update to the final URL when convenient |
| Soft 404 | Returns 200 but shows a “not found” page | Hard to detect automatically; check odd-looking targets manually |
Finding them
Crawl the site
Point the Broken Links Checker at your homepage. It follows internal links page by page, requests every link it finds (internal and external), and reports the ones that fail with the source page so you know where to fix each one. For a site under a few hundred pages this takes minutes. Larger sites use a desktop crawler like Screaming Frog, which does the same job at scale.
Check Search Console
Indexing → Pages → “Not found (404)” lists URLs Google tried to reach and couldn’t. This catches inbound links from other sites and old URLs still in Google’s memory that a crawl of your own site would never find. These are the ones worth redirecting, because someone external is sending traffic to them.
Check the sitemap
Every URL in your sitemap should return 200. Run the sitemap URL list through the checker; anything else is a sitemap error.
What to do with each one
- Internal link to a page you moved: update the link to the new URL and add a 301 from the old URL, because external sites may link to it too.
- Internal link to a page you deleted on purpose: remove the link, or link to the closest replacement. Redirect the old URL to the replacement if one exists; otherwise let it 404 (or 410) rather than redirecting everything to the homepage, which Google treats as a soft 404 anyway.
- External link to a page that moved: find the new location (search the site, or check the Wayback Machine for what was there) and update.
- External link to a site that is gone: replace with an equivalent source, or link to the archived copy at web.archive.org, or remove the link and keep the text.
- Redirect chains: update to the final destination. Each hop adds latency and Google follows a limited number.
Preventing them
- Never change a slug without a redirect. Most CMSs (WordPress with Yoast or Rank Math, Shopify) create the redirect automatically when you edit a URL; check the setting is on.
- Run the checker monthly, or after any bulk content change. Put it in the calendar.
- Prefer linking to homepages or stable hub pages on external sites over deep URLs that are more likely to move.
- Audit outbound links in old posts when you refresh them. Content older than three years has a high proportion of dead external links.
- Verify redirects with the HTTP Header Checker after adding them: the old URL should return 301 with a Location header pointing exactly where you intended.
A note on 404 pages
Some 404s are unavoidable: typos in inbound links, bots probing random paths. Make the 404 page useful (search box, links to popular content, correct 404 status code, not a 200) and don’t chase every one. The goal is zero broken links on your own pages and redirects for old URLs that still receive traffic, not a perfectly empty 404 report.
Frequently asked questions
Do broken links hurt SEO?
Not as a direct ranking factor. They waste crawl budget, lose link equity from external sites, and hurt user experience, all of which affect performance indirectly.
Should I redirect every 404 to the homepage?
No. Google treats irrelevant redirects as soft 404s. Redirect to a genuinely equivalent page, or let the URL return 404/410.
How often should I check for broken links?
Monthly for an active site, quarterly for a static one, and immediately after any migration or bulk URL change.
Is a redirect the same as a broken link?
No. A redirect works; a broken link doesn’t. But redirect chains (A→B→C) are worth cleaning up by linking straight to C.
Free, runs in your browser, nothing uploaded, no sign-up.
Keep reading
More from SEO & Website Tools.
Tools for this job
Free, in your browser, no sign-up.


