Choosing the Best URL Permalink Structure for your WordPress Blog

Wordpress permalinksOne of the really nice and seo-friendly features of WordPress is the ability to create a custom keyword-rich URL structure. Choosing the right permalink structure is a very important step when setting up a new blog, yet it is often overlooked.

Changing your permalink structure after you’ve written hundreds of posts (and after they’ve been indexed) is a pain and can cause you to lose search engine rankings (& traffic).

The default structure for WordPress is:

domain.com/?p=15

where 15 is the post number. This is ugly, gives no indication what the post is about, and is not seo-friendly.

On the permalink settings page – WordPress admin > Options > Permalinks – you can see 3 other structures: date & name based, numeric, and custom.

I would only use the date and named based option if your blog is meant to be only 1 post per day (such as “website of the day” or something similar) and the date of the post is important to the context of the blog. Otherwise, I would stay away from the date based structure.

The only time I’d recommend the numeric structure is if you think that your blog might someday get picked up by Google News. In that case either use the post number as the permalink

/%post_id%/

OR add it to the beginning or end of a custom postname URL

/%postname%-%post_id%
or
/%post_id%-%postname%

5/29/08 update: After having used the above formatting (id added to end or beginning, I would not recommend it. Use just the post id OR post name, don’t combine them).

I’ve seen a lot of bloggers recommend using the “/category/postname” structure
/%category%/%postname%/

but from experience, one potential issue to think about is if you ever want to reorganize or edit your categories, you’ll need to redirect your existing posts to the new category structure. I recommend avoiding this situation – redirecting tons of posts can be a pain.

Therefore this is the permalink structure I recommend 9 times out of 10

/%postname%/

A small thing to note: you can use a trailing slash at the end or you can leave it off. Personally I think it looks nicer with it off, however, it does give a very tiny boost to your webserver’s performance and is technically the right way to specify URL’s.

I would recommend picking a permalink structure before starting a blog and sticking with it. If you ever do need to change structure – and you’re prepared to see a temporary hit in search engine rankings – use the permalink migration plugin (I’ve tested it and it works well).