WordPress Development
WordPress Redirects: How to Manage 301s, Fix Broken Links, and Migrate URLs
A broken URL is a broken experience for visitors and a missed signal for Google. Here is how to manage redirects correctly in WordPress — from individual page changes to full domain migrations.
Simple Automation Solutions
·
·⏱ 9 min read
Every time a URL on your WordPress site changes or disappears, visitors and search engines that had the old link hit a dead end. Managed correctly with 301 redirects, you preserve the SEO value of old URLs and keep visitors on the right page. Managed incorrectly, you leak authority and confuse Googlebot.
Types of redirects and when to use each
| Redirect type | Code | Use case | SEO impact |
|---|---|---|---|
| Permanent redirect | 301 | URL has permanently moved to a new location | Passes 90–99% of link equity to new URL |
| Temporary redirect | 302 | URL is temporarily unavailable (A/B test, maintenance) | Does not transfer link equity — old URL retains it |
| See Other | 303 | Redirect after a form POST | Rare in WordPress context |
| Permanent (HTTP/2) | 308 | Same as 301 but preserves HTTP method | Modern equivalent of 301 |
| Not found | 404 | Page does not exist and there is no replacement | No redirect — content is gone |
A 302 (temporary) redirect tells Google the move is temporary — it keeps the link equity on the old URL and does not fully transfer authority to the new one. For any permanent URL change (restructured permalinks, deleted posts with replacements, domain migrations), always use 301.
The Redirection plugin — the WordPress standard
The Redirection plugin (by John Godley) is the most widely used redirect management tool for WordPress. It is free, has been maintained for over a decade, and provides everything most sites need for redirect management.
Go to Plugins → Add New, search ‘Redirection’, install and activate. Run the setup wizard — it will scan your site for existing redirects and configure basic monitoring.
In Redirection → 404s, enable logging. This records every 404 error that occurs on your site along with the referring URL, so you know where broken links are coming from and can prioritise which ones need redirects.
Go to Redirection → Redirects → Add New. Enter the source URL (the old broken URL, starting with /) and the target URL (the new destination, either relative or absolute). Select 301 as the type. Click Add Redirect.
If you have many redirects (after a site restructure), use the Import/Export tab to upload a CSV file of old URL / new URL pairs. Format: one redirect per line, comma-separated.
Periodically review your redirect list for chains — where redirect A goes to redirect B which goes to redirect C. Chains slow down page loads and dilute link equity. Fix them so each redirect goes directly to the final URL.
Common WordPress redirect scenarios
Changing your permalink structure
If you change your WordPress permalink structure (e.g., from /?p=123 to /post-name/), all your old URLs break. WordPress does not automatically redirect old permalink formats to new ones. Use the Redirection plugin’s bulk import to create redirects, or use a plugin like Permalink Manager Pro which handles this automatically.
Deleting a post or page
Before deleting any post or page that has backlinks or receives traffic, set up a 301 redirect to the most relevant remaining page. Deleting without redirecting sends visitors and Googlebot to a 404 — wasting link equity and frustrating users.
Migrating to a new domain
Domain migration is the highest-stakes redirect scenario. Every URL on your old domain needs a 301 redirect to the corresponding URL on your new domain. A site-wide redirect via .htaccess (on Apache servers) or nginx configuration handles this efficiently:
Add this to your old domain’s .htaccess file: RewriteEngine On / RewriteRule ^(.*)$ https://www.newdomain.com/$1 [R=301,L] — this redirects every URL on the old domain to the corresponding path on the new domain. Keep this redirect active for at least 12 months after migration.
Moving from HTTP to HTTPS
Every page on your site should redirect from HTTP to HTTPS. Use the Really Simple SSL plugin or add a redirect in your .htaccess. Verify there are no mixed content warnings (HTTP resources loaded on HTTPS pages) using Chrome DevTools or the SSL Checker tool.
Redirect performance — avoiding common mistakes
- Avoid redirect chains — A → B → C should become A → C directly. Each hop in a chain adds latency and dilutes equity
- Avoid redirect loops — A → B → A causes an infinite loop. The browser shows an error. Check for loops after bulk imports
- Do not redirect everything to the homepage — redirecting deleted product pages to your homepage is a spam signal to Google. Redirect to the most relevant category or a genuine replacement page
- Keep your redirect list manageable — hundreds of redirects add overhead. After 12 months, old redirects for deprecated URLs can often be removed
How to find broken links that need redirects
Need your WordPress redirects audited and cleaned up?
Simple Automation Solutions audits redirect architecture, fixes chains, and manages URL migrations for WordPress sites worldwide.
Frequently asked questions
How long should I keep 301 redirects active?+
Permanently, or at minimum 1–2 years. Once Google has recrawled and updated its index, the redirect’s primary function (transferring link equity) is complete. However, removing redirects too early breaks links from external sites, bookmarks, and other resources you cannot control. For important URLs, keep redirects active indefinitely — they add negligible server overhead.
Do WordPress redirects slow down my site?+
Well-managed redirects add minimal overhead. The Redirection plugin stores redirects in your database and matches them before WordPress fully loads — this adds milliseconds, not seconds. The performance impact of a reasonable redirect list (under 500 entries) is negligible. Redirect chains are where performance suffers — each hop requires a new HTTP request.
What is the difference between a redirect and a canonical tag?+
A redirect (301) actively sends visitors and Googlebot to a new URL — the original URL returns a redirect status code. A canonical tag () is a hint to Google about which version of a URL is preferred, but it does not redirect visitors. For actual URL changes (deleted pages, restructured URLs), use redirects. For duplicate content on the same site, use canonical tags.
Simple Automation Solutions is a global digital product studio specialising in WordPress and Bubble.io development. We serve founders, startups, and businesses worldwide — delivering production-ready websites built to rank, convert, and scale.
