301 Redirects in WordPress: Set Them Up Without Losing SEO
A 301 redirect tells Google a page moved permanently and passes its SEO value to the new URL. Here's how to set them up in WordPress without editing code.
I renamed a blog post once—just tidied up a clumsy slug—and watched a page that ranked on the first results page vanish overnight. The URL every backlink pointed to was now a dead 404, and all the SEO value I’d spent months building drained away with it. That mistake is entirely avoidable, and it takes about thirty seconds to prevent. Here’s how 301 redirects work in WordPress, and how to set them up so a URL change never costs you traffic again.
The essentials
- A 301 = “moved permanently”; a 302 = “moved temporarily.” Use 301 for any change you don’t plan to undo.
- Google transfers close to 100% of a page’s ranking signals through a 301, so backlinks and positions follow your content.
- Every unredirected broken URL is a 404—lost visitors, lost link equity, and wasted crawl budget.
- The Redirections 301 module in Blaminhor Essentials manages redirects from the dashboard: simple rules or regex, automatic slug-change detection, a built-in 404 monitor, and imports from the Redirection and Safe Redirect Manager plugins or a CSV file.
- It also detects redirect loops for you (both A→B→A and reverse loops) and rejects unsafe regex, so the two classic ways to break a site with redirects are caught before they ship.
What is a 301 redirect, and why does it matter for SEO?
A 301 redirect is the web’s way of leaving a forwarding address. When a browser or a search engine requests the old URL, your server answers with a 301 Moved Permanently status and the new location, and the request is transparently sent there. The visitor barely notices; the search engine takes note and updates its index.
The SEO part is what makes it non-negotiable. A page’s ranking is built partly on the links pointing to it—its link equity. Delete or rename that page without a redirect and every one of those links now points at nothing, so the equity evaporates. A 301 carries that equity across to the new URL, which is why Google itself recommends it for permanent moves. In practice, redirect properly and your rankings follow the content; skip it and you start from zero.
When do you actually need a 301 redirect?
Any time a URL that existed—and might have been linked, bookmarked, or indexed—stops working at its old address. The most common triggers:
- You changed a post or page slug in the editor.
- You deleted content that had external backlinks or still gets traffic.
- You restructured your permalinks, for example moving
/blog/post-nameto/articles/post-name. - You merged duplicate pages into a single canonical URL.
- You moved from a subdomain to the root domain, or switched domains entirely (in which case see how to change your WordPress domain).
The rule of thumb: if an old URL could be typed, clicked, or crawled, and it no longer resolves, it needs a 301 to its replacement. Everything else is just deciding where each one should point.
Should you use a 301 or a 302 redirect?
Use a 301 for any move you won’t reverse—renamed, deleted, merged or migrated pages—because it passes the old page’s ranking value straight to the new URL. Use a 302 only for genuinely temporary changes like A/B tests or short promos, where you want Google to keep the original URL indexed. This is the mistake I see most often, and it quietly wastes SEO—the difference is permanence:
| 301 — Permanent | 302 — Temporary | |
|---|---|---|
| Message to Google | ”Update your index to the new URL." | "Keep the old URL; this move is temporary.” |
| Link equity | Passed to the new URL | Stays on the original URL |
| When to use | Renamed, deleted, merged or migrated pages | A/B tests, short promos, temporary maintenance pages |
| Risk if misused | None (this is the default choice) | Lost rankings when the move was actually permanent |
When in doubt on a permanent change, it’s a 301. A 302 tells search engines to keep indexing the old address, so if the move is really permanent you’re throwing away the equity a 301 would have preserved. For content you’re removing for good, the module also supports 410 (Gone) and 451, which tell search engines a URL is intentionally dead rather than temporarily missing.
How do you create a 301 redirect in WordPress without touching code?
You can write redirect rules by hand in your .htaccess file—but one misplaced character there can take your entire site offline, and most people don’t want to gamble their homepage on Apache syntax. The safe way is to manage redirects from the WordPress dashboard. Activate the Redirections 301 module in Blaminhor Essentials and you get a proper interface for it.
Every redirect in one table—source, destination, how many times it fired, and a switch to disable it without deleting it.
Simple redirects
Enter a source path (/old-page) and a target URL (/new-page). The module returns the 301 response for you. No file editing, no code, no way to break the site with a typo—and if you enter a source that already has a rule, it tells you instead of creating a silent conflict.
Regex redirects for whole URL structures
When you need to move a pattern rather than a single page, switch a rule to regex mode. Redirect everything under /blog/2024/(.*) to /articles/$1 in one rule instead of writing hundreds by hand—ideal after a permalink restructure. The module validates the pattern before saving it, refusing regex that could hang the server, so a stray .* can’t turn into a performance problem.
Automatic slug-change detection
This is the feature that would have saved my ranking. When you rename a post or a taxonomy slug in the editor, the module detects it and offers—right there in an admin notice—to create the redirect for you, from the old URL to the new one. One click and the 404 never happens. It works for taxonomy terms too (categories, tags), not just posts, which is exactly where these slip through unnoticed.
Import from your old plugin
Already have redirects in another tool? The module imports existing rules from the Redirection plugin, Safe Redirect Manager, and CSV files, in batches and with a skip-duplicates option, so switching doesn’t mean re-entering everything by hand.
How do you catch the 404s you don’t know about yet?
Redirects fix the broken URLs you remember. The ones that hurt are the ones you don’t—an old link on a forum, a mistyped URL in someone’s newsletter, a page you deleted two redesigns ago. That’s what the module’s 404 monitor is for: switch it on and it quietly logs every request that ends in a 404, with the URL, how many times it’s been hit, the referrer that sent people there, and when it was first and last seen.
Then you triage from data instead of guesswork. See a dead URL pulling real traffic? Create a redirect for it in one click, straight from the log. The monitor keeps itself lean—it caps the number of distinct URLs it tracks and purges entries after a retention window you set (30 days by default)—so a bot hammering random paths can’t bloat your database.
What does it look like once it’s running?
The part I underestimated is the hit counter on each redirect. It turns a messy list into actual information: you can see which old URLs people still reach, retire rules that never trigger, and toggle any redirect off without deleting it. On a site I migrated last year, that counter showed me a single old URL still pulling a few hundred visits a month from an old forum link—kept alive purely because I could see it was working.
Performance-wise, redirects are evaluated only on requests that don’t already match existing content, and the engine uses wp_safe_redirect with an allow-list of target hosts, so a bad rule can’t quietly bounce your visitors off to somewhere you didn’t intend. No external calls, no heavy queries, nothing you’ll feel on page load.
Don’t let a broken URL undo months of work
A URL change is one of the easiest ways to lose SEO you’ve already earned—and one of the easiest to prevent. A few seconds spent creating a 301 preserves the rankings, backlinks and visitors tied to the old address. Turn on automatic slug detection and the 404 monitor, and you mostly stop having to think about it at all.
If you’re cleaning up old URLs, the natural next step is finding the dead ones already scattered across your content: see how to find and fix broken links in WordPress. And if this is part of a bigger move, changing your WordPress domain the safe way covers the rest.
Redirections 301 is one of the 20+ tools in Blaminhor Essentials—free and open-source on WordPress.org.
– blaminhor
FAQ
Do 301 redirects hurt SEO?
No—done right, they protect it. A 301 passes nearly all of a page's link equity to the new URL, so backlinks and rankings follow the content instead of dying on a 404. The only real risks are redirect chains and redirect loops, which add latency; a good redirect manager detects loops for you and keeps each rule pointing straight to its final destination.
How long does Google take to process a 301 redirect?
Google usually respects a 301 within a few days of recrawling the URL, but fully consolidating the old page's signals onto the new one can take several weeks. Keep the redirect live the entire time—pulling it too early tells Google the move was never permanent and can reset your progress.
What is the difference between a 301 redirect and a canonical tag?
A 301 physically sends every visitor and bot from one URL to another, and the old page stops loading. A canonical tag leaves both pages reachable but tells search engines which one to index. Use a 301 when a page has truly moved, and a canonical when two similar pages must both stay live.
Do 301 redirects expire, or are they permanent?
A 301 stays active as long as its rule exists—it never expires on its own. But it only keeps working while your redirect manager or server config holds it, so don't delete old rules after a migration. I keep mine indefinitely, because a backlink from years ago can still send real traffic.
How many redirects can a site have before it slows down?
A single 301 adds a negligible hop, and a well-run site can hold thousands without a visitor noticing. What actually hurts is redirect chains—A to B to C—where every step adds latency. Keep each rule pointing straight to its final destination and the raw count barely matters.
Should I redirect a deleted page to my homepage?
Usually no. Google treats a pile of unrelated pages all pointing at the homepage as « soft 404s » and may ignore them. Redirect a deleted page to its closest equivalent instead. If nothing fits, let it return a genuine 404 or 410 so search engines can drop it cleanly.
Comments