TL;DR
- Use permanent redirects (301 or 308) for pages that have moved for good, and temporary ones (302 or 307) only for short-term changes.
- Map each old URL to its closest new equivalent; sending everything to the homepage is treated like a 404.
- For a domain move, also use Search Console’s Change of Address tool.
- Keep redirects in place for at least a year, and ideally indefinitely.
A site migration can be as small as changing a few page addresses or as big as moving to a new domain and platform. In both cases, the goal is the same: every old URL should lead somewhere sensible.
Choosing the redirect type
| Code | Meaning | Use it for |
|---|---|---|
| 301 | Moved permanently | Renamed pages, domain moves, http to https |
| 308 | Permanent, keeps the request method | Same as 301; common with some servers and frameworks |
| 302 | Found (temporary) | Short-term changes, such as a seasonal page |
| 307 | Temporary, keeps the request method | Same as 302 |
Google treats permanent redirects as a strong signal that the target should be the canonical URL; temporary redirects suggest the original URL will return.
A migration checklist
- Crawl and list every current URL, including ones in your sitemap and pages with external links pointing at them.
- Map old to new, one by one. Each old page should point to the most relevant new page.
- Avoid blanket homepage redirects; Google may treat them as soft 404s.
- Update internal links to point straight at new URLs instead of relying on redirects.
- Update canonical tags and the sitemap to the new URLs; see canonical tags and XML sitemaps.
- Check robots.txt and noindex on the new site before launch; see robots.txt vs. noindex.
- For a domain change, verify both domains in Search Console and use the Change of Address tool.
- Monitor the page indexing report and 404 errors for several weeks.
Common mistake: Don’t remove redirects after a few months to tidy up. Google recommends keeping them for at least a year, and links from other sites, bookmarks and old emails keep sending people to old URLs for much longer than that.
Moving to HTTPS counts too
Switching from http to https is a site-wide migration: every URL changes. Redirect each http URL to its https version with a 301; see HTTPS and site security.
FAQ
Do redirects lose ranking signals?
Google has said permanent redirects pass signals to the new URL. What loses traffic in practice is missing redirects, chains and redirects to irrelevant pages.
What’s a redirect chain?
When URL A redirects to B, which redirects to C. Each hop slows visitors down and crawlers may stop following long chains. Point old URLs straight to the final destination.
Can I use a meta refresh or JavaScript redirect?
Server-side redirects are the most reliable. Use meta refresh or JavaScript redirects only when you can’t change server responses, as on some static hosts.
Search engines update their systems and documentation often. This guide reflects Google’s published guidance at the time of writing; check Google Search Central for current details, and test changes on a staging copy of your site before making them live.
