How to Fix Broken Links Without Creating New SEO Problems
A practical guide to fixing broken internal and external links: when to update a URL, redirect it, remove it, leave a real 404, and verify the repair.
Broken links look simple: a link points somewhere, the destination no longer works, so you fix it. The tricky part is choosing the right fix.
If you automatically redirect every dead URL to the homepage, you can replace one problem with another. If you delete every broken link without checking what the page used to do, you may remove a useful path for customers. And if you treat every 404 as an SEO emergency, you can spend hours repairing URLs that no longer need to exist.
This guide is about how to fix broken links after you find them. The goal is not to make every URL return 200 OK. It is to make each link lead somewhere useful and make each retired URL behave intentionally.
If you still need to find the broader technical issues first, start with the Technical SEO Audit Checklist. Once you have a list of broken links, use the workflow below to decide what should happen next.
What counts as a broken link?
A broken link is a link whose destination no longer works as intended. The most obvious case is an internal link that points to a 404 Not Found page, but the practical definition is wider.
You may be dealing with:
- an internal link to a deleted page;
- a link to a URL that now redirects through several hops;
- an external link to a resource that has disappeared;
- a typo that points to the wrong path;
- a link to a page returning a server error;
- an old URL that has been replaced by a newer page.
The first job is to separate the broken link from the broken destination. A page can legitimately return a 404 because it was intentionally removed. The mistake is leaving important pages on your site linking to that retired URL.
That distinction determines the repair.
Fix broken links by starting at the source page
When a crawler reports a broken destination, find the pages that link to it.
Do not begin by creating redirects blindly. Open the source page and ask what the link is supposed to help the user do.
For each broken internal link, record:
- the source URL containing the link;
- the broken destination;
- the anchor text;
- the current response from the destination;
- whether a clear replacement page exists;
- whether the same broken link is generated by a shared template.
The source matters because one dead URL can appear in hundreds of places for completely different reasons. A single wrong navigation component may generate 500 broken links. That is one repair with 500 affected pages, not 500 separate editing jobs.
The best fix is often to update the link directly
If the intended content still exists at a new URL, update the internal link to point directly to it.
For example, suppose a navigation link points to:
/services/seo-audit-old
and that page redirects to:
/services/seo-audit
The redirect may be useful for old bookmarks or external links, but your own internal navigation should usually point straight to the current URL.
Direct internal links avoid unnecessary hops and keep the site's current architecture clear. They also reduce the chance that an old redirect becomes part of a longer chain later.
If the same old path appears across a header, footer, breadcrumb, product template, or CMS component, fix the generator rather than editing individual pages.
Use a permanent redirect when the page has genuinely moved
A 301 or 308 redirect is appropriate when an old URL has a clear new home.
Google's redirect documentation describes permanent redirects as a signal that the destination should replace the old URL in search results.
Good redirect candidates include:
- a page whose slug changed;
- a product or service page moved to a new permanent URL;
- two duplicate pages consolidated into one preferred page;
- an old category replaced by a directly equivalent category;
- a site migration where old URLs map cleanly to new URLs.
The key word is equivalent. A redirect should preserve the user's intent.
If someone clicks a link to a specific service and lands on the homepage, the server may technically return a successful page, but the experience is still broken. Redirect to the closest relevant replacement, not simply the most convenient live URL.
Do not redirect every deleted page
Sometimes there is no replacement. In that case, a real 404 Not Found or 410 Gone response can be correct.
Google's crawling error guidance recommends returning a 404 or 410 when content has been removed and there is no similar replacement. If the content has moved, use a permanent redirect instead.
That means the repair for a broken internal link may be:
- remove or replace the link on the source page;
- leave the retired destination returning a proper 404 or 410.
You do not need to manufacture a redirect just to make the error disappear from an audit report.
A clean 404 can be better than sending people to an unrelated page.
Fix broken external links differently
You control links on your own pages, but you do not control the external websites they point to.
When an external link breaks, check whether the original source has moved. A publication may have changed its URL structure while keeping the article. A government document may have a new location. A vendor may have replaced a help page.
If you find the same authoritative resource at a new URL, update the link.
If the source is gone, decide whether the citation or reference is still necessary. You can replace it with another credible source or remove the link if the sentence stands on its own.
Avoid replacing a dead source with a weaker page simply because it is live. The replacement should support the same claim or user need.
Broken backlinks are a separate problem
A broken backlink is an external website linking to your site through a URL that no longer works.
You cannot edit the source link yourself, so the options are different.
If the old URL has a clear successor, redirect the old URL to that relevant replacement. If the missing page earned useful links and the content still belongs on your site, recreating the resource may make sense. In some cases, you can also contact the linking site and ask them to update the URL.
Do not redirect unrelated broken backlinks to a generic commercial page merely to capture every incoming link. The destination still needs to make sense for someone following the original reference.
Prioritize broken links by where they occur
A crawl can produce a long list of broken URLs. They are not equally important.
Start with broken links in places users and crawlers encounter repeatedly:
- primary navigation;
- category or service templates;
- breadcrumbs;
- important product or location pages;
- high-traffic landing pages;
- conversion paths;
- pages with strong internal or external links.
Then work outward toward older, less important pages.
This is where the difference between issue count and repair scope matters. Ten broken links in the main navigation can deserve attention before 200 dead references buried in old archive content.
The broader framework in How to Prioritize SEO Problems After an Audit can help when broken links are competing with other technical work.
Watch for redirect chains while fixing links
A common repair pattern is to add a new redirect every time a URL changes.
Over time you can end up with:
/old-page → /new-page → /newer-page → /current-page
If you control the internal link, point it directly to /current-page.
For old URLs that still need redirects, simplify the chain where practical so they resolve directly to the final destination.
This matters most when the old URLs have external links, appear in bookmarks, or were previously indexed. The goal is not to delete useful redirect coverage; it is to avoid making users and crawlers step through unnecessary history.
Check whether the broken link comes from a template
Before editing many URLs, look for patterns.
If every product page links to a discontinued shipping guide, the fix probably belongs in the product template. If every location page has a broken breadcrumb, the breadcrumb component is the problem. If hundreds of articles reference an old category path, a CMS rule or migration may be involved.
Group affected pages only when the evidence supports a shared cause.
This is especially important on ecommerce sites, where one template problem can spread across a large catalog. The ecommerce SEO audit guide explains why these repeated technical patterns deserve special attention.
Do not confuse a soft 404 with a successful repair
A page can return 200 OK while showing an error message, empty state, or content that effectively says the page does not exist. Google may treat this as a soft 404.
That is why testing only the status code is not enough.
After changing a broken link or redirect, open the destination and confirm that the page actually provides the expected content. If a retired URL should be gone, make sure it returns a real 404 or 410 rather than a generic “not found” page with a 200 response.
How to verify that broken links are actually fixed
Do not close the task immediately after editing the CMS or redirect rule.
Verify the repair from the user's path:
- Re-crawl the source pages that contained the broken links.
- Confirm those links now point directly to the intended live destination, or have been removed.
- Test any new redirects end to end.
- Confirm the final destination returns the expected status and content.
- Check that you did not create a redirect chain or loop.
- Recheck shared templates if the problem affected many pages.
For URL changes that matter to search visibility, Google Search Console's URL Inspection tool can help confirm what response Google receives.
Verification matters because a repair can look correct in a CMS while the rendered website still outputs the old link.
Prevent broken links from becoming recurring cleanup
Broken links are normal on sites that change. The goal is not to prevent every 404 forever. It is to stop avoidable broken paths from accumulating.
A few habits help:
- update internal links whenever URLs change;
- maintain redirects for important moved pages;
- review navigation and shared templates after migrations;
- keep sitemaps focused on current canonical URLs;
- re-crawl after major content, platform, or URL changes;
- check important external references periodically.
When pages are intentionally removed, document whether they have a replacement. That makes the redirect decision easier and prevents someone later from “fixing” a correct 404 by sending it to the homepage.
Where FixList fits
FixList is read-only. Standard 150 checks up to 150 pages and can surface broken internal paths, redirects, status-code problems, and repeated patterns in the pages it inspects. It then turns the evidence into a prioritized plain-English fix list.
It does not change URLs or redirects for you. That is deliberate: choosing whether to update a link, redirect a URL, remove the reference, or leave a legitimate 404 requires context about what the page was supposed to do.
The useful outcome is not “zero 404s.” It is a site where important links lead where users expect, retired URLs behave intentionally, and every repair has been verified after the change.
FixList checks up to 150 pages and turns what it finds into a prioritized, plain-English list of what to fix first.
Get access