How to change the category and tag base in WordPress
To change the category or tag base in WordPress, go to Settings → Permalinks, type a new word into Category base or Tag base under Optional, and click Save Changes. /category/news/ becomes /topics/news/ straight away. WordPress does not redirect the old addresses, so add a 301 rule for them yourself.
The base is the fixed word in front of every category or tag archive URL. Left empty, WordPress uses category and tag. Changing it is a URL change for every archive of that taxonomy at once, so treat it with the same care as a permalink change.
Step by step
1. Decide if the change is worth it
A different word does not improve rankings by itself. Good reasons to change: the default does not describe your content (/recipes/ fits a food site better than /category/), or the site is not in English. If you only want a shorter URL, removing the base entirely is a separate option; see remove the category base. On an established site with archive traffic, weigh the gain against a few weeks of Google reprocessing the redirects.
2. Choose a base that cannot collide
The new word must not match the slug of any page, post or custom post type. If you have a page at /topics/, a category base of topics gives two things the same address. Use lowercase letters and hyphens only. WordPress strips # characters and collapses repeated slashes when it saves the field.
3. Save the new base
- Open Settings → Permalinks.
- Under Optional, enter the word in Category base, Tag base or both. Type the word only, for example
topics, with no slashes. - Click Save Changes.
Saving rebuilds WordPress's rewrite rules, so the new addresses work at once. Every link WordPress generates, in menus built from categories, post meta, breadcrumbs and widgets, switches to the new base.
4. Redirect the old base on the server
Old URLs now return 404. One pattern rule forwards all of them and keeps the rest of the path. On Apache or LiteSpeed, add this to .htaccess above the # BEGIN WordPress block:
RedirectMatch 301 ^/category/(.*)$ /topics/$1
RedirectMatch 301 ^/tag/(.*)$ /labels/$1
On nginx, inside the server block:
rewrite ^/category/(.*)$ /topics/$1 permanent;
rewrite ^/tag/(.*)$ /labels/$1 permanent;
The captured part carries child categories, pagination and feeds across, so /category/news/local/page/2/ lands on /topics/news/local/page/2/.
5. Know what the plugin can and cannot do here
Hydrogen SEO's Redirection Manager matches by Exact Match, Contains, Starts With or Ends With, and sends every match to one fixed target. A Starts With rule for /category/ would send all old category URLs to a single page, which is not what you want here. Use the server rule for the pattern, and use the plugin for individual archives if you cannot edit server config: one Exact Match rule per category that has traffic or links. The plugin's XML sitemap picks up the new base on the next request, because changing the category or tag base clears its sitemap cache.
6. Test old and new addresses
curl -sI https://example.com/category/news/ | grep -iE "^HTTP|^location"
curl -sI https://example.com/topics/news/ | grep -iE "^HTTP"
The first should answer 301 with the new address in location. The second should answer 200. Test a child category and a paged URL too.
7. Update hard-coded links and watch the reports
Links typed into post content, custom menu links and widgets still use the old base. They work through the redirect, but each costs an extra hop, so fix the ones in navigation and popular posts. In Search Console, old archive URLs move to Page with redirect over the following weeks. Check Performance, filtered to pages containing the new base, to see impressions move across.
If the new URLs return 404
The rewrite rules did not refresh. Open Settings → Permalinks and click Save Changes again without changing anything. On Apache, confirm .htaccess is writable or copy the rules WordPress shows at the bottom of that screen. On nginx there is no file to write, so a 404 usually means a server-level rule is intercepting the request first.
Common mistakes
- Changing the base and the permalink structure on the same day. If traffic drops, you cannot tell which change did it.
- Leaving both rules in place after changing your mind. Reverting the base while the redirect remains creates a loop. Remove the rule first.
- Using a base that matches a custom post type archive, such as
productson a store.
Common questions
Does WordPress redirect the old category base automatically?
No. After you change the base, old /category/ URLs return 404 unless you add a redirect. One pattern rule in .htaccess or nginx covers every archive.
Can I use a slash in the category base?
Yes, a base such as `blog/topics` is accepted and produces `/blog/topics/news/`. Keep it short, because every archive URL carries it.
Will changing the tag base affect my posts' URLs?
No. Only tag archive addresses change. Post URLs change only if your permalink structure itself contains `%category%` and you edit that.