Optimal WordPress URL Structure

Photo by Juan Nosé, on Flickr

WordPress takes care of pretty much everything out of the box. But one of the few things you need to fix on a new install is the URL settings (permalinks). Making this blog, it got me thinking. Is the %postname% format always the best option? 

Choosing the perfect URL structure in WordPress can get tricky. Especially with the new Google freshness update. Here is why.

The ideal URL

  • Semantic
  • Descriptive
  • Robot and user-friendly
  • As short as possible

More info on optimal URL design: SEOmoz, Google

Planning your structure

website mind map url structure

If you plan on building a simple site with static pages you can just go with %postname% and you will have the perfect setup.

Plan your structure as if you had to write it in stone. Once you pick one, thats the one your stuck with. Make it very obvious and predictable such as apple.com/iphone/ (see? I knew the URL just by guessing).

How will you use categories? If you plan on putting one blog posts in more than one category, you should not use category name in you URL structure.

wordpress url settings

Taking a closer look at these options there are some good choices and some that should be avoided.

The default (The ugly)

Tag: none
Preview: http://edgyseo.com/?p=123

The ugly is not optimal because it’s not user-friendly. If you want a short URL for sharing use a URL shortening service. Or make your own.

Including date

Tag: /%year%/%monthnum%/%day%/%postname%/
Preview: http://edgyseo.com/2011/11/17/sample-post/

The problem with dates in the URL is that you can’t re-use the URL without changing the URL. That’s not the biggest problem with this option. Think about it, if you see a URL that is 6 months old, would you click it over a 1 week old URL? Probably not. I don’t hate this option for personal type blogs or breaking news sites.

Before using dates you should know about the Google Freshness update:

«Building upon the momentum from Caffeine, today we’re making a significant improvement to our ranking algorithm that impacts roughly 35 percent of searches and better determines when to give you more up-to-date relevant results for these varying degrees of freshness.» – Amit Singhal, Google, 11/7/11


Easy for users to find blog posts by year, month and day. See how it’s used by Mashable and TechCrunch.

Great for breaking news. Could be a signal for Google that the content is really fresh.


date in urls

In the second position of the screenshot above Mashable has written a very relevant guide that could still be useful even if it’s from 2009. (To avoid date in URLs for guides they could use custom taxonomy for guides.)

If they there were to update this blog post from 2009 they would need to make a new URL and «lose» some of the link value. Or they would have to keep the old URL.

When a post is getting old the date in URL is a negative signal for users (lower CTR% from Google search results) and for Google freshness algorithm.


Tag: /archives/%post_id%
Preview: http://edgyseo.com/archives/123

The worst option ever. Please don’t do this.


Tag: /%postname%/
Preview: http://edgyseo.com/sample-post/

Example.com/postname/ is a classic and it’s a pretty safe choice. Make sure you write good slugs (URLs) with your target keywords in them when you use this option.


  • You get really short and user-friendly URLs
  • Good if you have many categories. You don’t have to worry about putting a post in the wrong category


  • It doesn’t properly reflect your site structure
  • User’s can’t easily go back to the main category by removing the post name from the URL

Category and postname

Tag: /%category%/%postname%/
Preview: http://edgyseo.com/category/sample-post/

When using this option I recommend removing /category/ from the category URL base (default category link is domain.com/category/category-name/). It makes it more user-friendly.


  • Users and robots can easily understand that this is X blog post in Y category.
  • Your URL structure will signal to Google that all the posts in x category is about the same topic and build authority. But remember site structure as well (like Dr. Pete says).
  • Works well with breadcrumbs and natural navigation.
  • Reflects your site structure.
  • Is way better for Web Analytics. You can make better reports when you filter by category.


  • Not optimal for long category names like Pseudopseudohypoparathyroidism
  • Not optimal if you have many categories and put blog posts in more than one category
  • You will need to fix your category URL path so that its example.com/seo and not example.com/category/seo/. Then you also can’t have a page and category with the same name.
  • If you are making a blog and it’s in a subfolder like /blog/ urls can get too long.

What if I already have the wrong settings?

If you have an established WordPress site with another URL structure you should not change it, if you have many incoming links and social likes. If it’s new and got a horrible structure I would change it.

Hey wait a minute.. what about performance issues?

There are some performance issues with starting a URL structure with category or post name, but it’s being fixed. Use a cache plugin (you should anyway) and it will be fixed in WordPress version 3.3.

Other great resources for optimal URL design

Do you agree? I would love your input on this subject.

12 hendelser på “Optimal WordPress URL Structure”

  1. What are your thoughts about leaving out the trailing slash in the urls? (/%postname%/ vs. /%postname%)

    Because I prefer the look of a link without a trailing slash I have opted for leaving them out on my site, but I see that you have kept the trailing slash on your website. Is there a particular reason for this?

    1. I think with trailing slash is better. But if you use it without trailing slash consistently, it’s not a problem. Always be consistent and your okay:)

      Matt Cutts, Distinguished Engineer at Google and WordPress-user has said with / is marginally better:

      «Matt says he would slightly advocate for using a trailing slash simply because it clearly indicates that a URL is a folder and not a document. That said, Google is quite good at differentiating so it’s not a huge deal.»

      Source: http://www.seomoz.org/blog/whiteboard-interview-googles-matt-cutts-on-redirects-trust-more

  2. Great post, thanks!

    I thought I’d mention that IF you absolutely need to change your URL structure at any stage, the Redirection plugin by Urban Giraffe is gold. It makes it easy to remap the site structure using 301 redirects, and can be set to automatically create a new redirect for posts when their URL changes.

    Cheers, Tim


  3. Nice post.
    I’ll suggest you to add a warning on using /%category%/%postname%/ on WordPress version below 3.3. This permalink structure create performance issues (formerly known as verbose rewrite rules) on sites with a lot of static pages. The problem is solved only on wordpress 3.3 that by now is still in beta.

  4. Enjoyed reading the post. We established our travel site nearly 1 year ago. We started without much social media or SEO….now we’re trying to fix everything to gain more followers, ooops. It always helps to do your research before getting started.

  5. Hi Geir,

    This is a great post which I will be referring back to when setting up new WordPress sites!

    Thanks for taking the time to produce such a useful resource…

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.