Permalinks are the permanent web addresses of your WordPress posts and pages, such as example.com/wordpress-tips/. A clean structure helps visitors understand where a link goes, helps search engines read your site, and keeps your links working for years. This guide explains the permalink options, how to choose and change them safely, and how to fix the 404 errors that follow a bad change.
In WordPress, open Settings → Permalinks. For most sites choose Post name (/%postname%/): short, readable and not tied to a date. Keep each slug short and descriptive. Choose your structure early, because changing it on a live site changes every URL; if you must, add 301 redirects from the old addresses. If posts return "Not Found" after a change, click Save Changes on the Permalinks screen to rebuild the .htaccess rules.
1. What a permalink is
A permalink is the full, permanent URL of one piece of content. It has two parts you control:
- the structure, set once for the whole site (for example, with or without a date);
- the slug, the readable part for each post or page, such as
wordpress-tips.
WordPress builds each URL from the structure and the slug. Behind the scenes, every post also has a numeric ID, which is what the plain ?p=123 format shows.
2. The permalink structures
| Setting | Example | Good for |
|---|---|---|
| Plain | example.com/?p=123 | Nothing public; it tells readers and search engines nothing |
| Day and name | example.com/2026/09/24/sample-post/ | News sites where the date matters |
| Month and name | example.com/2026/09/sample-post/ | Frequent, dated publishing |
| Numeric | example.com/archives/123 | Rarely a good choice |
| Post name | example.com/sample-post/ | Most blogs and business sites |
| Custom structure | example.com/%category%/%postname%/ | Sites with a strong category hierarchy |
Post name is the right default for most sites. Dates in URLs make evergreen content look old, and they make URLs longer. A category in the URL adds context but breaks the link if you later move a post to another category.
Custom structures are built from tags such as %postname%, %category%, %post_id%, %year% and %monthnum%. Always end with %postname% or %post_id% so every URL is unique.
3. Set your permalinks
- Log in to WordPressas an administrator.
- Open Settings → Permalinks.
- Choose a structure,usually Post name.
- Optional:set a Category base or Tag base, the word WordPress puts before category and tag archives (by default
categoryandtag). - Click Save Changes.WordPress writes its rewrite rules to the
.htaccessfile in the WordPress folder. - Testa post, a page and a category archive in a private browser window.
Pretty permalinks need the web server to rewrite URLs. Domain India shared hosting runs Apache with mod_rewrite enabled and .htaccess files allowed on cPanel, DirectAdmin and Webuzo, so every structure above works.
4. Write good slugs
WordPress creates a slug from the title, but you can edit it in the post's settings panel before you publish.
- Short and descriptive:
/wordpress-permalinks/beats/the-complete-guide-to-understanding-wordpress-permalinks-in-2026/. - Lowercase words joined by hyphens. Avoid underscores, spaces and special characters.
- Include the main topic, not every keyword. Drop filler words when the slug still reads clearly.
- Leave out the year unless the content is genuinely about that year; otherwise you will want to change the URL later.
- Unique: if a slug is already taken, WordPress adds
-2. Change it to something meaningful rather than leaving the number.
5. Changing permalinks on a live site
Changing the structure changes every URL on the site. Links from other websites, search results, bookmarks and social posts still point to the old addresses.
Search engines treat a new URL as a new page. Without 301 redirects from the old URLs, visitors hit 404 errors and the pages can lose their search rankings for a while. Back up the site first, change the structure at a quiet time, and set up redirects straight away.
Your options:
- Changing one post's slug: WordPress usually redirects the old slug to the new one on its own. Test the old URL to make sure.
- Changing the whole structure: use a redirect plugin such as Redirection, which can log 404s and add 301 rules from the dashboard.
- A pattern rule in
.htaccess: for example, moving from Day and name to Post name. Put your own rules above the# BEGIN WordPressline, because WordPress rewrites everything between BEGIN and END:
# Old /2026/09/24/sample-post/ to new /sample-post/
RedirectMatch 301 ^/[0-9]{4}/[0-9]{2}/[0-9]{2}/(.+)$ https://example.com/$1Replace example.com with your domain and test several old URLs. After a structure change, update your XML sitemap (SEO plugins do this automatically) and resubmit it in Google Search Console.
6. Fixing permalink 404 errors
If the home page works but every post or page says "Not Found", the rewrite rules are missing or damaged.
- Re-save permalinks.Open Settings → Permalinks and click Save Changes without changing anything. This rebuilds the rules.
- Check
.htaccess.In File Manager, show hidden files and open.htaccessin the WordPress folder. It should contain the# BEGIN WordPressblock. The default WordPress .htaccess guide has the current block to paste in. - Look for conflicting rules.A broken rule above the WordPress block can cause 404s or a 500 error. Comment it out with
#and test again. - Disable plugins that change URLs,such as redirect, multilingual or security plugins, one at a time.
- Check for a slug clash.A page and a category with the same slug, or a folder on the server with the same name as a page, can hide the page.
On cPanel hosting, a caching proxy in front of Apache can keep serving an old response for a while. Add ?t=1 to the URL to see the live result after a fix. For other 404 causes, see resolving 404 errors on your website.
7. Moving to a new domain
Permalinks are stored relative to the site address, so changing the domain changes every URL too. Follow how to move a WordPress site from one URL to another, and redirect the whole old domain to the new one.
8. WordPress hosting at Domain India
WordPress runs on every Domain India shared hosting plan. cPanel and DirectAdmin have Softaculous for one-click installs, and cPanel also has WP Toolkit. Weekly JetBackup backups on cPanel and DirectAdmin keep 5 copies, so you can restore if a change goes wrong. For more, see mastering WordPress. The card shows the current price, excluding 18% GST.
- 25 GB NVMe SSD Storage
- 50 GB Monthly Bandwidth
- 1 Website
- 10 Email Accounts
Frequently asked questions
What is the best permalink structure for WordPress?
For most blogs and business sites, Post name (/%postname%/). It is short, readable and not tied to a date. News sites that publish several dated stories a day may prefer Day and name.
Where do I change permalinks in WordPress?
In the WordPress dashboard, open Settings, then Permalinks. Choose a structure and click Save Changes. To change a single post's URL, edit its slug in the post's settings panel.
Will changing my permalink structure hurt SEO?
It can, for a while, because every URL changes. Add 301 redirects from the old URLs to the new ones, update your sitemap and resubmit it in Google Search Console to limit the impact.
Why do my posts show 404 Not Found after changing permalinks?
The rewrite rules in .htaccess are missing or damaged. Open Settings, then Permalinks, and click Save Changes to rebuild them. If that fails, recreate the default WordPress block in .htaccess.
Should I include the category in my permalinks?
Only if your site has a stable category structure. A category in the URL adds context, but moving a post to another category later changes its URL.
Do pretty permalinks work on Domain India shared hosting?
Yes. Domain India shared hosting runs Apache with mod_rewrite enabled and .htaccess allowed on cPanel, DirectAdmin and Webuzo, so every WordPress permalink structure works.
Ready to tidy up your URLs? Log in to WordPress from your hosting services, read the default .htaccess guide, or open a ticket if your posts still return 404.
One-click WordPress installs, free SSL and weekly backups on every shared hosting plan.
See WordPress hosting