Permalinks are the permanent URLs for each post or page in WordPress. Configuring the right permalink structure from the start is crucial for SEO and avoids having to redirect URLs later.
WordPress Permalink Structures
Go to Settings → Permalinks in WordPress Dashboard. You'll find 6 main options:
- Plain:
/?p=123— Worst option, no keywords in URL - Day and name:
/2026/05/30/post-name/— Too long, dates make content look old - Month and name:
/2026/05/post-name/— Still has date - Numeric:
/archives/123— No keywords - Post name (Recommended):
/post-name/— Short, clean, SEO-friendly - Custom: Define your own, e.g.
/blog/post-name/
Permalink Types Compared: SEO Impact
Before deciding, review the table below to see how each format affects SEO in terms of URL length, keyword presence, and suitability for sharing on social media or in documents. The "SEO Score" column is a comparative rating from 5 (best) to 1 (worst).
| Permalink Type | Example URL | Keyword? | SEO Score | Best for |
|---|---|---|---|---|
| Plain | /?p=123 |
No | 1 / 5 | Not recommended for SEO-focused sites |
| Day and name | /2026/05/30/post-name/ |
Yes (with date) | 2 / 5 | News sites where content is date-bound |
| Month and name | /2026/05/post-name/ |
Yes (with month) | 3 / 5 | Blogs organized by time period |
| Numeric | /archives/123 |
No | 1 / 5 | Sites prioritizing legacy query speed |
| Post name (recommended) | /post-name/ |
Yes (prominent) | 5 / 5 | Most sites, blogs, and businesses |
| Custom | /blog/post-name/ |
Yes (+ prefix) | 4 / 5 | Sites needing section paths like /blog/ /news/ |
As you can see, formats that keep the keyword in the URL without random numbers or dates tend to score higher, because both users and search engines can infer the content directly from the URL. A meaningful slug also improves click-through rate on search results pages, since people are more confident the link matches their query.
Which Structure is Best for SEO?
Post name (/%postname%/) is the best for SEO because:
- Short and clean — users can remember it easily
- Contains the main keyword directly in the URL
- No date in URL — content doesn't look outdated
- Google recommends short, descriptive URLs
The Best Permalink Structure for SEO (/%postname%/)
In practical terms, the best structure is /%postname%/, which produces a URL containing only the post name — no numbers, no dates, and no parameters obscuring the main keyword. This structure aligns with Google's guidance that URLs should be readable and understandable for both humans and bots.
The technical reasons /%postname%/ works best for SEO:
- Keyword proximity: the main keyword sits as close to the root domain as possible, so search engines can weigh it clearly.
- Not time-bound: evergreen articles never look outdated even years later, because there is no
/2026/in the URL. - Better anchor text: when someone shares or pastes the URL, the slug acts as a self-describing label, helping both UX and keyword association.
- Short and memorable: shorter URLs are less likely to be truncated in search results or chat apps.
Caution: When using /%postname%/, watch for duplicate slugs. If two posts share the same title, WordPress automatically appends -2. Review each post's slug to ensure it is unique and meaningful before publishing.
If you worry about database performance with many posts, in practice /%postname%/ performs well on modern WordPress, because WordPress handles rewrites via .htaccess and slug-based queries efficiently. The performance concerns of the past are long gone on properly configured servers.
Set Up Post Name Permalink
- In WordPress Dashboard go to Settings → Permalinks
- Select Post name
- Click Save Changes
- WordPress automatically updates .htaccess
If .htaccess isn't updated automatically, add these rules manually:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
How to Change Permalink Without Losing SEO
If you already have a live site and need to change the permalink structure, implement 301 redirects:
- Install the Redirection plugin
- Add 301 redirects from old URLs to new URLs
- Or use .htaccess:
Redirect 301 /old-url/ https://yourdomain.com/new-url/ - Notify Google Search Console about the URL change
Changing Permalinks on an Existing Site (301 Redirects)
Changing the permalink structure on a site that has been live for a while and already ranks in Google is a risky operation. Done wrong, you can lose all the rankings and traffic you've accumulated. The single most important rule is that every old URL must have a 301 redirect pointing to the matching new URL — not a blanket redirect to the homepage. Redirecting everything to the homepage (a soft 404) signals to Google that the original content is gone.
Checklist before and after changing permalinks:
- Always back up first: back up both the database and the
.htaccessfile before touching settings. - Build a URL map: export the full list of old URLs and pair them 1:1 with new URLs before making the change.
- Use 301 (permanent), not 302: a 301 signals a permanent move, so Google transfers link equity to the new page. A 302 is temporary and does not pass that weight.
- Avoid redirect chains: don't create A → B → C; point A → C directly to reduce link equity loss and improve speed.
- Update internal links: change on-site links to point to the new URLs directly rather than routing through a redirect.
- Submit a new sitemap: update
sitemap.xmlwith the new URLs and submit it in Google Search Console. - Monitor crawl errors: for 2-4 weeks after the change, check Search Console for 404s or misrouted redirects.
Here is an example 301 redirect in .htaccess when moving from an old date-based structure to /%postname%/, using a pattern rule to cover many URLs at once:
RewriteEngine On
# Move /2026/05/post-name/ → /post-name/
RewriteRule ^[0-9]{4}/[0-9]{2}/([^/]+)/?$ /$1/ [R=301,L]
After adding the rule, test manually that a sample old URL actually redirects to the correct destination (open the old URL in a browser and confirm it lands on the matching new page, not the homepage or a 404).
Thai Permalinks vs. English Slugs: Which Is Better?
A common question for Thai sites is whether to leave the slug in Thai (e.g. /บทความ-น่าสนใจ/) or convert it to English (e.g. /interesting-article/). The answer depends on your audience and how the URLs will be used.
Thai slugs — pros and cons
- Pros: Thai users understand them instantly, they contain Thai keywords matching search queries, and Google supports Unicode URLs and ranks them normally.
- Cons: when a URL is pasted into some apps, Thai characters are percent-encoded (e.g.
%E0%B8%9A...), making the URL look long and hard to read when shared.
English slugs — pros and cons
- Pros: short, clean, easy to share, never encoded; ideal for sites with international readers or building backlinks abroad.
- Cons: you must translate or transliterate keywords yourself, and a poor translation may lose the Thai keyword in the URL.
Recommendation: for typical Thai sites aimed at Thai readers, using an English slug that transliterates or translates the main keyword is often the best middle ground — you get a clean URL while keeping the meaning. For example, an article titled "How to set up WordPress" could use the slug /wordpress-setup-guide/, while the Thai keyword is emphasized in the title, H1, and body instead. If you genuinely want Thai keywords in the URL, Thai slugs work too — just keep them short and verify your host's caching/CDN handles Unicode URLs correctly.
URL Slug Best Practices
- Use all lowercase letters and hyphens (
-) instead of spaces - Include the main keyword in the slug
- Keep it to 5-7 words maximum
- Remove stop words like "a", "the", "and"
- Good example:
/wordpress-seo-guide/ - Bad example:
/10-tips-for-improving-your-wordpress-seo-ranking-in-2026/
Summary: Set permalinks to "Post name" when you first create your site. Write short, keyword-rich slugs. If you change URLs on an existing site, always add 301 redirects to preserve rankings.
Frequently Asked Questions About WordPress Permalinks
Will Google forget my old pages after I change permalinks?
If you implement 301 redirects from every old URL to its new URL correctly, Google will not forget them and will gradually transfer rankings and link equity to the new URLs within a few weeks. But if you change them without redirects, Google will hit 404s and progressively drop the old pages from its index, costing you traffic.
Can I use Thai-language permalinks? Will it hurt SEO?
Yes, you can, and it does not directly hurt SEO. Google supports Unicode (Thai) URLs and ranks them normally. The main limitation is sharing convenience, because Thai URLs are percent-encoded when pasted in some places. If clean URLs are a priority, use English slugs instead.
Should I use /%postname%/ or /%category%/%postname%/?
/%postname%/ suits most sites because the URL is shortest and the keyword sits closest to the root domain. /%category%/%postname%/ is useful when you want a clear content hierarchy by category, but beware: if you later move a post to a different category, the URL changes and you'll need new 301 redirects.
My site shows 404 errors on every page after changing permalinks. How do I fix it?
This usually happens because the .htaccess file wasn't updated. Go to the WordPress Dashboard, Settings → Permalinks, and click Save Changes again to make WordPress rewrite the rules. If it persists, verify that .htaccess is writable and that mod_rewrite is enabled on the server.
WordPress Hosting SSD from 500 THB/year
AsiaGB Hosting supports WordPress with DirectAdmin, free SSL, and automatic backups.
View Hosting Plans