TL;DR
- A 301 tells browsers and Google a URL moved permanently; Google treats 301 and 308 as strong canonical signals and 302, 303 and 307 as weak ones.
- Google has said since 2016 that 30x redirects do not lose PageRank, but redirecting to an unrelated page such as the home page can be treated as a soft 404.
- Googlebot follows up to 10 redirect hops, so chains should be collapsed to a single hop and internal links updated to the final URL.
- Google's site move guidance says to keep redirects for as long as possible, generally at least one year.
A 301 redirect is a server response that tells browsers and search engines a page has moved permanently to a new URL, and sends visitors there automatically. Use a 301 whenever a URL changes for good, such as a new slug, a merged page, an HTTPS switch or a domain move, so that users land on the right page and Google transfers indexing and ranking signals to the new address.
What a 301 redirect does
When a browser or crawler requests a URL, the server answers with an HTTP status code. A 200 means "here is the page." A 301 means "Moved Permanently," and the response includes a Location header with the new URL. The browser requests that URL instead, usually without the visitor noticing. Googlebot does the same, and treats a permanent redirect as a strong signal that the new URL should be the canonical one shown in search results.
Common reasons to use a 301:
- Changing a page's URL or slug.
- Merging two thin pages into one stronger page.
- Deleting a page that has a close replacement.
- Moving from HTTP to HTTPS, or between www and non-www.
- Moving a site to a new domain.
- Consolidating old campaign URLs or duplicate paths.
301 versus 302 versus 307 versus 308
Redirect codes fall into two families. Permanent redirects say the old URL is finished. Temporary redirects say the old URL will come back. Google's documentation treats 301 and 308 as strong signals that the target should be canonical, and 302, 303 and 307 as weak signals.
| Code | Meaning | When to use it |
|---|---|---|
| 301 Moved Permanently | Permanent move | URL changes, merges, HTTPS and domain moves |
| 308 Permanent Redirect | Permanent move that keeps the request method | Same as 301 where a form POST must stay a POST |
| 302 Found | Temporary move | Short maintenance pages, out-of-stock product swaps, A/B tests |
| 307 Temporary Redirect | Temporary move that keeps the request method | Temporary moves for form submissions; browsers also use it internally for HSTS |
The practical rule is simple. If you expect the old URL to return, use 302 or 307. If you do not, use 301 or 308. Leaving a 302 in place for months on a permanent change sends a mixed signal, and Google may eventually treat it as permanent anyway, but you give up control over when.
Does a 301 pass full link equity in 2026?
Google has said that 30x redirects do not lose PageRank. Gary Illyes of Google stated this publicly in 2016, and it has been Google's position since. In practice, a 301 to a closely matching page transfers the old URL's signals to the new one.
What does lose value is redirecting to a page that is not a real replacement. Redirecting a deleted product page to the home page, or many unrelated pages to one category, can be treated as a soft 404, which means the old signals are not passed on. The redirect target should answer the same need as the page it replaces.
How to set up 301 redirects
Apache and .htaccess
On Apache servers you can add rules to the .htaccess file in the site root. A single page redirect uses the mod_alias syntax: Redirect 301 /old-page/ https://www.example.com/new-page/. Pattern-based redirects, such as sending every URL from an old folder to a new one, use mod_rewrite with RewriteRule and the R=301 flag. Test on a staging copy first, because a syntax error in .htaccess can take the whole site down.
Nginx
On Nginx, redirects go in the server configuration, for example a location block with return 301 https://www.example.com/new-page/;. Configuration changes need a reload of Nginx to take effect.
WordPress
When you change the slug of a published post, WordPress stores the old slug and redirects it automatically. For pages, custom post types, categories and bulk changes, use a redirect plugin such as Redirection, or the redirect managers built into Rank Math and Yoast SEO Premium. Plugins also log 404 errors, which helps find URLs that still need a redirect. On managed hosts, server-level redirects configured in the hosting dashboard run faster than plugin redirects because they fire before WordPress loads.
Shopify
When you edit the URL handle of a product, collection, page or blog post, Shopify shows a "Create a URL redirect" option, which should stay ticked. Redirects can also be added, imported by CSV and exported in the URL redirects section of the Shopify admin. Shopify only redirects URLs that return a 404, so a redirect will not fire while the old URL still exists.
Redirect chains and loops, and how to find them
A redirect chain is a sequence of redirects: page A goes to B, B goes to C. Chains build up over years of redesigns. Google's crawling documentation says Googlebot follows up to 10 redirect hops, after which it stops and reports a redirect error, but every hop adds latency for users and wastes crawl requests well before that limit. A redirect loop sends A to B and B back to A, and the page never loads.
To find them:
- Crawl the site with an SEO crawler and export the redirect chains report.
- Check the Page indexing report in Search Console for "Redirect error" and "Page with redirect" entries.
- Test individual URLs with a header checker or the URL Inspection tool.
- Update each chain so the first URL points straight to the final destination, and update internal links to point to the final URL so no redirect is needed at all.
Redirect mapping for a site migration
A redesign, platform change or domain move is where redirects decide whether traffic survives. A redirect map is a spreadsheet listing every old URL and the new URL it should go to.
- Build the list of old URLs from a crawl, the XML sitemap, Search Console performance data and your analytics landing pages, so that pages with traffic or backlinks are not missed.
- Map each old URL to the closest equivalent new URL, one to one wherever possible.
- For pages with no equivalent, decide deliberately between a redirect to the nearest relevant page and a 404 or 410.
- Test the map on staging before launch, then crawl the list of old URLs again after launch to confirm each returns a single 301 to a 200 page.
- For a domain move, use the Change of Address tool in Search Console after the redirects are live.
- Keep redirects in place for as long as possible. Google's site move guidance says generally at least one year.
Common 301 mistakes that lose traffic overnight
- Redirecting every old URL to the home page instead of mapping to equivalents.
- Using 302s for a permanent migration because the platform default was temporary.
- Removing redirects a few months after a migration to "clean up" the server.
- Forgetting URL variants: HTTP and HTTPS, trailing slash and no slash, uppercase and lowercase, and old query-string URLs.
- Leaving internal links, canonical tags and the XML sitemap pointing to old URLs, so the site keeps sending crawlers through redirects.
- Testing redirects in a normal browser. Browsers cache 301s aggressively, so a fixed rule can still look broken until the cache is cleared.
What this means for Thai websites
Thai sites often have URLs with Thai characters in the slug. Browsers display them as Thai, but servers and crawlers see percent-encoded strings, and the same slug can appear in different encodings or letter cases across old links. When mapping redirects, export URLs in encoded form and test both the Thai and encoded versions. Bilingual sites also need redirect maps for both language versions and must keep hreflang annotations pointing at the new URLs, not the redirected ones. A technical SEO audit will surface chains, loops and redirect errors, website support can handle server-level rules safely, and a rebuild through web design or WordPress customisation should include a redirect map from the first planning meeting, not the week of launch.
FAQ
What is a 301 redirect used for?
A 301 redirect permanently sends users and search engines from an old URL to a new one. It is used for changed URLs, merged pages, HTTPS switches and domain moves so that traffic and search signals move to the new page.
Is a 301 or 302 better for SEO?
Neither is better in general; they mean different things. Use a 301 for permanent changes and a 302 for temporary ones, because Google treats a 301 as a strong canonical signal and a 302 as a weak one.
How long should I keep 301 redirects?
Keep them as long as you can, and at least one year. Google's site move guidance recommends that minimum, and keeping them longer protects old backlinks and bookmarks.
Do too many redirects hurt a website?
A large number of single redirects is not a problem in itself. Chains and loops are, because they slow pages and waste crawling, and Googlebot stops following after 10 hops.
Can I redirect a deleted page to my home page?
You can, but Google may treat it as a soft 404 and ignore the old page's signals. Redirect to a page that genuinely replaces the deleted one, or return a 404 or 410 if nothing does.
Planning a redesign, platform change or domain move? Relevant Audience can build and test the redirect map, then check after launch that every old URL lands where it should.







