Most WordPress sites end up with broken URLs at some point. It happens after changing a permalink structure, deleting a page that’s still being linked to, renaming slugs, or migrating to a different domain. The URLs that used to work start returning 404 errors, and any SEO value those pages had built up quietly disappears.
A 301 redirect solves this by permanently pointing an old URL to a new one. Visitors and search engines are automatically sent to the right place, and the link equity from the old URL transfers to the new destination. The 301 status code is the signal to search engines that the move is permanent — not a temporary detour.
In most sites I work on, redirect management is one of the most neglected areas of SEO maintenance. Setting it up properly once — and keeping an eye on it when things change — saves a lot of cleanup work later.
Quick Answer
To set up a 301 redirect in WordPress, install the Redirection plugin, go to Tools → Redirection, enter the old URL as the source and the new URL as the target, set the type to 301, and save. The redirect is active immediately. For broken URLs you’ve missed, the plugin’s 404 log shows every dead URL being hit on your site — you can create redirects directly from the log.
Why 301 Redirects Matter
Every time a URL changes without a redirect, you lose two things: the visitor who followed the old link and the SEO signal that URL had accumulated. The practical consequences depend on how prominent the page was — a high-traffic post that loses its URL can drop significantly in search rankings before Google re-indexes the new address.
Redirects keep internal and external links working, preserve the equity built up through backlinks, and prevent visitors from hitting dead ends. Google’s documentation on redirects confirms that permanent server-side redirects are the correct mechanism for URL changes — they’re the most reliable way to pass signals to the destination page.
The most common triggers for needing redirects: changing your WordPress permalink structure, deleting or consolidating posts, renaming category or tag slugs, and domain migrations.
How to Set Up 301 Redirects in WordPress: Step by Step
Step 1 — Install the Redirection Plugin
The Redirection plugin (free on WordPress.org) is the most practical choice for managing redirects on most sites. It handles individual redirects, bulk imports via CSV, and includes a built-in 404 monitor that logs broken URLs automatically.
Install it from Plugins → Add New, search for “Redirection”, and run through the setup wizard. The default settings work for most sites — no configuration needed beyond the initial setup.
Step 2 — Add a Redirect
Go to Tools → Redirection. Under the Redirects tab, you’ll find the form for adding a new redirect.
- Source URL — the old URL path, starting with a forward slash. Example:
/old-page-name/ - Target URL — the full URL of the new page. Example:
https://yourdomain.com/new-page-name/ - Type — set to 301 – Permanent Redirect
Click Add Redirect. It’s active immediately — no cache flush required by the plugin itself, though caching plugins may need a clear.
For bulk redirects after a site restructure, you can import a CSV file with source and target columns rather than entering each one manually. This is the most efficient approach when handling dozens of URL changes at once.
Step 3 — Test the Redirect
Open the old URL in a browser and confirm it forwards to the new destination. If it doesn’t, clear your browser cache and any caching plugins, then test again. A redirect that appears not to work is almost always a caching issue rather than a configuration problem.
To verify the actual HTTP status code, check the network tab in your browser’s developer tools. You should see a 301 status on the old URL followed by a 200 on the new one. If you see a 302 instead, the type was set incorrectly — go back into the plugin and change it to 301.
Step 4 — Monitor and Fix 404 Errors
Redirection’s 404 Errors tab logs every URL returning a 404 on your site. Check this after any significant change — a permalink structure update, a content audit that removed posts, or a site migration. From the log, you can create a redirect directly from any entry by clicking on it and entering a target URL.
This is the most practical way to catch redirects you missed. It also surfaces broken links pointing to your site from other domains — external links you didn’t know existed but that can be captured and directed somewhere useful. For a broader approach, see how to find and fix broken links in WordPress.
Practical Tips
- Redirect to the most relevant destination — not the homepage. If you deleted a post and have a similar one, redirect to that. Homepage redirects frustrate visitors who followed a specific link and signal poor practice to search engines.
- Avoid redirect chains. If /page-a/ redirects to /page-b/ and /page-b/ redirects to /page-c/, collapse them so /page-a/ goes directly to /page-c/. Chains add latency and dilute the SEO signal.
- Set up redirects before changing a permalink, not after. Changing a slug without a redirect means the old URL instantly returns a 404, even for a few minutes.
- I usually recommend reviewing the 404 log monthly on active sites. It’s the easiest way to spot redirect gaps you didn’t know existed.
Common Mistakes
Using a 302 (temporary) redirect instead of 301. A 302 tells search engines the move is temporary, so they keep the old URL in the index rather than transferring its equity. Only use 302 for genuinely temporary situations — a maintenance page redirect, for example.
Redirecting everything to the homepage. This is the quickest fix but produces the worst outcome. Visitors arrive at the homepage with no idea why, and the SEO signal is dispersed rather than directed anywhere useful. Always find the most relevant replacement page.
Creating redirect loops. This happens when Page A redirects to Page B and Page B redirects back to Page A — the browser loops indefinitely and shows an error. It also happens when a page is set to redirect to itself. Check for existing redirects before adding a new one to a URL that already has one pointing to it.
Not testing after adding a redirect. A typo in the source URL means the redirect never triggers. A typo in the target URL means visitors land on another 404. Test immediately after saving.
301 vs Other Options
A 301 redirect is the right choice when a URL has permanently moved and you want both visitors and search engines forwarded to the new location. Use it for: URL restructures, deleted pages with a relevant replacement, domain migrations, and HTTP to HTTPS transitions.
Use other approaches when the situation calls for it:
- 404 (Not Found) — when content is intentionally removed with no relevant replacement. A well-designed custom 404 page in WordPress can still guide visitors back into your site.
- 410 (Gone) — when you want to explicitly signal to search engines that a page has been permanently removed, rather than just not found.
- Canonical tags — when you have similar or duplicate content on multiple URLs and want to indicate the preferred version without redirecting users. See how to add canonical URLs in WordPress for that approach.
For most WordPress sites day-to-day, the 301 redirect is the right tool. The 404 log in Redirection makes it easy to catch situations where it’s needed and handle them quickly.
If you’re working through the broader technical SEO setup for a new site, the step-by-step guide to building a WordPress website covers redirects alongside every other foundational element.
Conclusion
Set up a redirect every time a URL changes — and do it before the change goes live where possible. The Redirection plugin covers everything most WordPress sites need, and the 404 error log catches anything you miss after the fact. Handled consistently, redirects turn a common source of SEO and usability problems into a minor, routine task.

Etienne Basson works with website systems, SEO-driven site architecture, and technical implementation. He writes practical guides on building, structuring, and optimizing websites for long-term growth.