My old links show errors after a redesign. How do I redirect them without losing my search traffic?

By Ranjit Bhinge, founder of Blur Studio · Updated · 5 min read

Short answer: Every old URL that now shows an error needs a 301 redirect pointing it to its new equivalent, set up through a simple rules file on Netlify. Skipping this after a redesign is one of the most common, most avoidable ways businesses lose search rankings they'd already earned, since search engines treat a broken link as a real signal that the page is gone, not just moved.

Ranjit Bhinge

A redesign changed your URLs, and now every old link, including the ones Google has indexed and ranked for years, points at nothing.

I'm Ranjit, and I run Blur Studio: 15+ years building software, 120 apps taken live, and clients who have gone on to raise $10M+. I build AI systems and processes that help businesses do a lot more with a lot less time. I also work differently from most of what else is out there, more on that further down this page. Say hello.

This page may contain affiliate links from which Blur Studio earns commissions.

This is one of the most quietly damaging mistakes in a site redesign, because the damage doesn't show up immediately. The new site looks great, launches fine, and then over the following weeks search traffic to pages that used to rank well starts dropping, because every old URL now returns an error instead of redirecting to its replacement.

Why this actually costs you search traffic

Search engines don't just index a URL, they accumulate trust and ranking signal for it over time, from links pointing to it, from people clicking through to it, from how long it's existed. When that URL suddenly returns an error, the signal doesn't automatically transfer to wherever the content moved; as far as a search engine can tell, the page is simply gone. A 301 redirect is the explicit instruction that tells search engines (and browsers, and anyone with an old bookmark) "this content moved here permanently," which is what actually preserves the ranking signal instead of starting over from zero.

How to actually set this up on Netlify

If your site is hosted on Netlify, redirects are configured in a plain text _redirects file in your publish directory, or in your netlify.toml configuration file. The _redirects file is the simplest format:

/old-services-page    /services    301
/about-us             /about       301
/blog/old-post-slug   /knowledge/new-post-slug  301

Each line is one rule: the old path, the new path, and the status code. 301 specifically means "moved permanently," which is the code that actually carries the ranking signal forward; a 302 ("moved temporarily") doesn't do the same job and shouldn't be used for a permanent URL change.

Step by step: the actual migration process

  1. Get a full list of your old URLs before you lose access to them. If the old site is still live, crawl it or pull the list from your analytics or search console; once it's gone, this list gets much harder to reconstruct.
  2. Map each old URL to its closest new equivalent. Not every old page needs a one-to-one match; some can reasonably redirect to a broader new page if the old content no longer exists in that exact form.
  3. Write the rules into your _redirects file, one line per mapping, using 301 for every genuinely permanent change.
  4. Deploy and test a sample of the old URLs directly, not just the homepage, to confirm each one actually redirects rather than erroring.
  5. Check your search console a few weeks later for any remaining errors on URLs you missed; a redesign migration rarely catches everything in the first pass.

A few things that trip people up

Rules are processed in order, and the first matching rule wins, so a broad rule placed before a more specific one can accidentally swallow traffic meant for the specific page. Keep specific redirects above general catch-all patterns in your file. Also worth knowing: redirect paths are case-sensitive and need proper URL encoding for anything with special characters, so an old URL with spaces, accented characters or unusual punctuation needs careful handling, not a direct copy-paste from wherever you found it listed.

For a genuinely large migration, hundreds or thousands of old URLs, a flat list of individual rules gets unwieldy fast. Netlify's own guidance for that scale points toward wildcard patterns that match whole groups of old paths to their new equivalents in one rule, or using an Edge Function for more complex mapping logic, rather than trying to list every single URL by hand.

A worked example: a services business losing traffic after a rebrand

A home services company rebranded and relaunched their site with a cleaner URL structure, moving from long slugs like /services/residential-plumbing-repair-and-installation to shorter ones like /plumbing. The new site launched without any redirects in place, since the migration focused entirely on design and nobody specifically owned the URL mapping step. Within three weeks, organic search traffic to their plumbing and electrical pages, both previously ranking well, dropped by roughly forty percent, visible clearly in their analytics once someone finally checked.

Reconstructing the fix after the fact took longer than it would have taken upfront: pulling the old URL list from Search Console's coverage report (the old site was already gone), manually mapping each one to its closest new equivalent, and deploying the redirect rules weeks after the damage had already started. Rankings recovered over the following month, but not fully to where they'd been, a predictable cost of the gap between when the old URLs broke and when the redirects finally went live. The lesson the owner took away, and one worth repeating here: the redirect map should exist and be tested before the new site goes live, not reconstructed afterward once the traffic drop is already visible.

Common mistakes with redirect migrations

  • Treating redirects as a post-launch cleanup task. By the time traffic has visibly dropped, you've already lost weeks of ranking signal that a pre-launch redirect map would have preserved.
  • Redirecting everything to the homepage as a shortcut. A blanket redirect to the homepage technically resolves the broken-link error but loses nearly all the ranking value a specific, relevant redirect would have preserved. Map to the closest actual equivalent page whenever one exists.
  • Not testing the redirects against real old URLs before considering the migration done. A rule that looks correct in the file can still fail in practice due to a typo, wrong case, or an encoding issue, and the only way to catch that is testing actual old links, not just reading the rules file.

What I'd actually tell you

Do this before you launch the new site, not after you notice traffic dropping. The cost of getting redirects right upfront is an afternoon of careful mapping; the cost of getting it wrong is weeks of search traffic you'd already earned, slowly leaking away while you figure out what's missing. If you're mid-redesign right now and haven't thought about this yet, stop and build the redirect map before the new site goes live, even if that means launch slips by a day.

When this isn't the whole answer

Redirects only work for sites actually hosted on Netlify; if you're moving away from Netlify entirely, you'll need the equivalent feature on wherever you're moving to. And a redirect map fixes the technical side, but if your new site's content is genuinely different from what used to be there (different services, different focus), some ranking loss is expected regardless of how well the redirects are set up, since the content itself changed, not just its address.

How I'd approach this

I handle exactly this kind of migration regularly: mapping every old URL to its new equivalent, getting the redirect rules right, and verifying nothing important got missed before and after launch. If you're planning a redesign or migration and want this done properly the first time rather than patched after the traffic drop shows up, that's a well-scoped piece of work worth getting right upfront.

Questions people ask

What's the difference between a 301 and a 302 redirect?

A 301 means "moved permanently" and carries search ranking signal forward to the new URL. A 302 means "moved temporarily" and doesn't transfer that signal the same way. Use 301 for any genuinely permanent URL change after a redesign.

How do I find all my old URLs if the old site is already gone?

Check Google Search Console's coverage and performance reports, which list URLs that were indexed, or pull historical pages from a service like the Wayback Machine if no other record exists. This is much easier to do before the old site goes offline, so gather the list first if you can.

Do I need to redirect every single old page individually?

For a small site, yes, a line per page is manageable. For a large migration with hundreds of URLs, Netlify supports wildcard patterns that redirect whole groups of old paths to a new structure in one rule, rather than listing every URL by hand.

Does the order of redirect rules matter?

Yes. Netlify processes rules top to bottom and the first match wins. Keep specific redirects above broader, catch-all patterns, or a general rule can accidentally intercept traffic meant for a more specific path.

Will I lose my search rankings even with redirects set up correctly?

Some fluctuation during a transition is normal even with correct redirects, but a properly mapped 301 redirect preserves the large majority of accumulated ranking signal. Losing rankings entirely is usually a sign redirects were missing or misconfigured, not an inevitable cost of redesigning.

Does this only work if my site is hosted on Netlify?

Yes, Netlify's redirect rules only apply to sites it's actually hosting. If you're moving to a different host, you'll set up the equivalent redirect feature there instead.

Sources

Ready for the next step?

A 30 minute call. No pitch. If you do not need me, I will tell you.

Ranjit Bhinge You talk to me, Ranjit. I reply within a few hours.

Not sure what you need? Tell me what is going on. I will point you the right way, even if it is not me.

Blur Studio · 30 minute call

Book a 30 minute call

You talk to me, Ranjit. No pitch. If you do not need me, I will tell you.

  • We talk about your business and what is going on.
  • You leave with a clear next step, even if it is not me.
  • I reply to every message within a few hours.
Loading the calendar…