Shimon Sandler

Best Practices for Optimizing URL Structure

URL structure is one of the factors in determining how “search engine friendly” a website is. Search engines like clean, static URL’s. They don’t like messy dynamic url’s. They’ve gotten better at crawling and indexing URL’s over the years, but the bottomline is, that they still have issues doing it. Especially, if there are more than 3 dynamic parameters in the URL. Eat at URL's

Ideally, the URL structures should be static, and reveal what the page is about. A simple and clear URL structure is much easier for both search engine spiders and human beings.

Static URL’s that contain keywords will often rank better than dynamic URL’s that don’t contain any keywords. Additionally, the keywords in URL can enhance CTR, and will be bolded in SERPs.

Another problem with dynamic pages is load time. A dynamically generated URL comes from web pages that are generated from scripts, which put together page content from a database or multiple files “on the fly” by a server, when a user asks to see a webpage.

Dynamic URLs contain search engine unfriendly parameters like question mark (“?”), &, $, =, +, and % etc. In case you’re wondering what a static URL looks like, below are 2 examples. One is of a static url & the other is a dynamic url:

Static URL:
Dynamic URL:

If you are in the process of comparing content management systems, this is definitely something to keep in mind.

Some search engine crawlers, such as Google’s, will index dynamically-generated pages, but others will not index pages when they see those symbols, especially the question mark. Some search engines will only index a dynamically-generated page that is linked from a static page. Which means, the search engine will not follow links from dynamically-generated pages.

If you are going to have dynamic pages on your web site, it is important NOT to have session ID’s presented to the search engines.

Session IDs:
Session IDs are another big issue when it comes to URL structure. Session variables are unique strings of text in a URL that are generated each time a user visits a site. This means that every time a search engine crawlers visits the site, it gets a new session ID.

Session variables cause the same page to appear with constantly changing URLs. This runs the risk of getting pages flagged or penalized for duplicate content since the same content appears on different URLs.

A URL rewrite can change the dynamic URLs to make them more search engine and user readable. This means that a webserver can be configured to have a dynamic URL appear as a static HTML page.

Additional issues that dynamic pages create, even if they appear in the URLs as static pages, is that they are often slower-loading than plain HTML pages. This is because of the data processing required by the server to put them together on the fly. The slow “page-load” time can affect keyword ranking and possibly even indexing. Especially, if the spider decides to move on because the page took too long to load.

Reasons Why Session IDs are bad for SEO:
1) The Spider always finds a different URL. It can’t find the URL with the original session id. This new url which contains a different session id, appears as a duplicate page, and Google assigns zero importance. Then, the Googlebot goes looking to crawl the original page, and gets an error message.

2) Everyone linking to your page will be linking to a different URL. All the Inbound links will be different because everyone has separate session id’s. This is undesirable. You need links to get a page to rank.

The solution to those messy dynamic URL’s is to use a URL Rewrite, and search engine friendly 301 Redirects.

URL Directory structure:
Directory structure refers to how directories are set up on servers. “Directory depth” is the number of directories in a URL. When your website content and files are grouped into a directory structure, your URL will reflect this structure.

For example: has a directory depth of 0 has a directory depth of 1 (category is a directory) has a directory depth of 2 (category is a directory, and product is a subdirectory)

Regarding “Directory depth”, there typically aren’t any indexing issues. But, some algorithms could discount the weight given to pages that are multiple levels down in a Web site’s directory structure. Some search engines consider the pages closest to the root directory the more important pages on your site.

Relevant directory names are helpful for both search engines and human users since they provide an idea about the content of the URL. It’s a best practice to use keywords in the URL structure in the form of directory names and subdirectories to optimize your website.

Additional Reading:
Why Session ID’s And Search Engines Don’t Get Along
SEO Best Practices for URL Structure
A Better URL Structure for SEO
Supercharge Your URLs For Maximum SEO Impact
User and Search Friendly URL Design for Multi-Language Websites
Dynamic URLs In The Eyes Of A Search Engine
URL Rewriting: Increase Organic Traffic By Using Dynamic URLs That Look Static

Photo Credit: schill

Be Sociable, Share!


  1. kedar nayak says:

    I understood your point. But you can see gmail as such dynamic url:-

    Do you think it affects Search Engine Crawler?
    Plz answer me.

  2. I know this is a hypothetical question but then. Is better than better????

Speak Your Mind