Technical debt on a marketing site doesn't arrive in one go. A page gets renamed and redirected. Later, a redesign moves it again. A blog post links to a feature page that was retired. An empty category page returns a 200 status. Each is small, and together they slow crawling, leak link value and send visitors to dead ends.
This guide covers how to find and fix the three most common kinds of link debt, then sets out a monthly routine that keeps them from returning. It's part of our technical SEO guide for marketing websites.
How do you fix broken links and redirect chains?
Fix broken links and redirect chains by finding them with a crawl and Search Console, then correcting them at the source. Update internal links to final URLs, rewrite redirect rules so each old URL reaches its destination in one hop and resolve soft 404s with content, a relevant redirect or an honest error status.
The order matters. Start with anything that affects pages with traffic or backlinks, because those carry the most value and visitors. Then clean up internal links sitewide, since you control them completely. Leave low-value legacy URLs for last; a 404 on a page nobody visits isn't a problem worth an afternoon.
What are soft 404s, redirect chains and broken links?
A broken link points to a URL that returns a 404 or another error. A redirect chain is a series of redirects between the first URL and the final page. A soft 404 is a page that returns a 200 success status but looks empty or missing to Google.
Problem | What happens | Typical cause on marketing sites | Fix |
|---|---|---|---|
Broken internal link | Link leads to a 404 page | Renamed or deleted page, typo in a slug | Update the link; redirect the old URL if it had value |
Broken external link to you | Backlink hits a 404 | Old URL removed without a redirect | 301 the old URL to its best equivalent |
Redirect chain | Two or more hops before the final page | Several redesigns or renames over time | Point the first rule straight to the final URL |
Redirect loop | Redirects cycle and never resolve | Conflicting rules, often trailing-slash or host rules | Remove the conflicting rule |
Soft 404 | 200 status, but the page looks missing | Empty categories, thin pages, mass redirects to home | Add content, redirect to a true equivalent or return 404 |
Google's documentation says Googlebot follows only a limited number of redirect hops, and each hop adds latency for visitors and another chance for something to go wrong. Treat any chain longer than one hop as a fix, not a tolerance.
How do you find broken links and redirect chains?
Find them by combining a site crawl, Search Console's Pages report and your backlink tool. The crawl finds problems in your own links; Search Console shows what Google encountered; the backlink tool shows which broken URLs other sites still link to.
- Site crawler: export internal links that return 4xx or 5xx, internal links that hit a redirect, and redirect chains with their hop counts.
- Search Console Pages report: check not found (404), soft 404, redirect error and page with redirect.
- Backlink tool: export your top linked pages and filter for ones returning 404. These are the highest-value fixes.
- Platform redirect list: export all existing rules from Webflow, Framer, your host or your Next.js config so you can trace chains.
- Old URL lists: if you kept a redirect map from a past redesign, crawl its old URLs again to confirm they still resolve in one hop.
How do you fix broken links?
Fix a broken internal link by editing the link to point at the right live page. Fix a broken URL that has backlinks or traffic by adding a 301 redirect to its closest equivalent. Do both when a removed page is still linked from inside and outside the site.
Internal links usually live in three places: CMS rich-text fields, navigation and footer components, and hard-coded links in templates. Search the CMS for the old slug, then check components. If your marketing team can't easily edit links in the CMS, that's a structural problem worth solving; our guide to why marketing teams can't edit the website covers the fixes. For external links to removed pages, a redirect is the only lever, so map each to the page that answers the same question, not the home page.
How do you fix redirect chains and loops?
Fix a redirect chain by changing the first redirect so it goes straight to the final destination, then removing any intermediate rule that's no longer needed. Fix a loop by finding the two rules that send URLs back and forth and deleting or correcting one.
List every chain
From the crawl, export each chain with its starting URL, every hop and the final URL.
Edit the first rule
Change the redirect for the starting URL so its destination is the final URL in the chain.
Update intermediate rules
Point every intermediate URL that still has links straight to the final URL as well.
Update internal links
Change internal links that use any URL in the chain to the final URL, so visitors skip redirects entirely.
Check host and slash rules
Make sure http to https, www to non-www and trailing-slash rules happen in a single step, not one after another.
Recrawl to confirm
Run the starting URLs through the crawler again and confirm a single 301 to a 200 page.
Chains are most common right after a migration. Our deeper guide to redirect chains and loops after a migration covers platform-specific causes.
How do you fix soft 404s?
Fix a soft 404 by deciding what the page should be. If it should exist, give it substantial, unique content. If it replaced something, redirect it to a genuinely equivalent page. If it's gone, make the server return a real 404 or 410 instead of a 200.
On marketing sites, soft 404s usually come from empty CMS category or tag pages, placeholder pages published early, filtered views with no results, and removed pages bulk-redirected to the home page or a generic hub. Google sees an irrelevant destination and treats the redirect as a soft 404 anyway. The fix for empty categories is to noindex or remove them until they have content; our blog setup guide covers how to keep categories useful. Custom 404 pages must also return a 404 status, not a 200 with a friendly message.
Hypothetical example: one month's cleanup log
For example, suppose a 120-page SaaS site runs its monthly check.
The crawl finds 14 internal links to a feature page that was renamed in a redesign, each passing through a two-hop chain. The team edits the original redirect to point straight at the new URL and updates the 14 links in the CMS. Search Console shows six soft 404s, all empty tag pages; they're set to noindex and removed from the sitemap. The backlink tool shows one 404 URL, an old webinar page, with links from several sites; it gets a 301 to the current webinar library.
The whole cycle is a single session's work, because it's done monthly instead of once a year.
What does a monthly link cleanup routine look like?
A monthly routine runs the same checks in the same order: crawl, Search Console, backlinks, fix, recrawl. On a small marketing site it typically fits into a single short session, and it means a redesign or migration starts from a clean base.
- Crawl the site and export broken internal links, redirected internal links and chains.
- Open Search Console's Pages report and review new not found, soft 404 and redirect error URLs.
- Check backlinks to 404 pages and add 301s for any with real links or traffic.
- Fix internal links at the source in the CMS, components and templates.
- Collapse chains by editing first rules to final destinations.
- Resolve soft 404s with content, a relevant redirect or a real error status.
- Recrawl and note changes in a simple log so the next person knows what was done and why.
This kind of routine work fits naturally into an ongoing design and development retainer, where the team building new pages also keeps old ones clean. Our on-page SEO audit and internal linking strategy are good companions if you're running the routine yourself.
