This is a cached version of http://googlewebmastercentral.blogspot.com/2008/09/dynamic-urls-vs-static-urls.html. Diigo.com has no relation to the site.x
Google Webmaster Central Blog - Official news on crawling and indexing sites for the Google index

Dynamic URLs vs. static URLs

Monday, September 22, 2008 at 3:20 PM

Chatting with webmasters often reveals widespread beliefs that might have been accurate in the past, but are not necessarily up-to-date any more. This was the case when we recently talked to a couple of friends about the structure of a URL. One friend was concerned about using dynamic URLs, since (as she told us) "search engines can't cope with these." Another friend thought that dynamic URLs weren't a problem at all for search engines and that these issues were a thing of the past. One even admitted that he never understood the fuss about dynamic URLs in comparison to static URLs. For us, that was the moment we decided to read up on the topic of dynamic and static URLs. First, let's clarify what we're talking about:

What is a static URL?
A static URL is one that does not change, so it typically does not contain any url parameters. It can look like this: http://www.example.com/archive/january.htm. You can search for static URLs on Google by typing filetype:htm in the search field. Updating these kinds of pages can be time consuming, especially if the amount of information grows quickly, since every single page has to be hard-coded. This is why webmasters who deal with large, frequently updated sites like online shops, forum communities, blogs or content management systems may use dynamic URLs.

What is a dynamic URL?
If the content of a site is stored in a database and pulled for display on pages on demand, dynamic URLs maybe used. In that case the site serves basically as a template for the content. Usually, a dynamic URL would look something like this: http://code.google.com/p/google-checkout-php-sample-code/issues/detail?id=31. You can spot dynamic URLs by looking for characters like: ? = &. Dynamic URLs have the disadvantage that different URLs can have the same content. So different users might link to URLs with different parameters which have the same content. That's one reason why webmasters sometimes want to rewrite their URLs to static ones.

Should I try to make my dynamic URLs look static?
Following are some key points you should keep in mind while dealing with dynamic URLs:
  1. It's quite hard to correctly create and maintain rewrites that change dynamic URLs to static-looking URLs.
  2. It's much safer to serve us the original dynamic URL and let us handle the problem of detecting and avoiding problematic parameters.
  3. If you want to rewrite your URL, please remove unnecessary parameters while maintaining a dynamic-looking URL.
  4. If you want to serve a static URL instead of a dynamic URL you should create a static equivalent of your content.
Which can Googlebot read better, static or dynamic URLs?
We've come across many webmasters who, like our friend, believed that static or static-looking URLs were an advantage for indexing and ranking their sites. This is based on the presumption that search engines have issues with crawling and analyzing URLs that include session IDs or source trackers. However, as a matter of fact, we at Google have made some progress in both areas. While static URLs might have a slight advantage in terms of clickthrough rates because users can easily read the urls, the decision to use database-driven websites does not imply a significant disadvantage in terms of indexing and ranking. Providing search engines with dynamic URLs should be favored over hiding parameters to make them look static.

Let's now look at some of the widespread beliefs concerning dynamic URLs and correct some of the assumptions which spook webmasters. :)

Myth: "Dynamic URLs cannot be crawled."
Fact: We can crawl dynamic URLs and interpret the different parameters. We might have problems crawling and ranking your dynamic URLs if you try to make your urls look static and in the process hide parameters which offer the Googlebot valuable information. One recommendation is to avoid reformatting a dynamic URL to make it look static. It's always advisable to use static content with static URLs as much as possible, but in cases where you decide to use dynamic content, you should give us the possibility to analyze your URL structure and not remove information by hiding parameters and making them look static.

Myth: "Dynamic URLs are okay if you use fewer than three parameters."
Fact: There is no limit on the number of parameters, but a good rule of thumb would be to keep your URLs short (this applies to all URLs, whether static or dynamic). You may be able to remove some parameters which aren't essential for Googlebot and offer your users a nice looking dynamic URL. If you are not able to figure out which parameters to remove, we'd advise you to serve us all the parameters in your dynamic URL and our system will figure out which ones do not matter. Hiding your parameters keeps us from analyzing your URLs properly and we won't be able to recognize the parameters as such, which could cause a loss of valuable information.

Following are some questions we thought you might have at this point.

Does that mean I should avoid rewriting dynamic URLs at all?
That's our recommendation, unless your rewrites are limited to removing unnecessary parameters, or you are very diligent in removing all parameters that could cause problems. If you transform your dynamic URL to make it look static you should be aware that we might not be able to interpret the information correctly in all cases. If you want to serve a static equivalent of your site, you might want to consider transforming the underlying content by serving a replacement which is truly static. One example would be to generate files for all the paths and make them accessible somewhere on your site. However, if you're using URL rewriting (rather than making a copy of the content) to produce static-looking URLs from a dynamic site, you could be doing harm rather than good. Feel free to serve us your standard dynamic URL and we will automatically find the parameters which are unnecessary.

Can you give me an example?
If you have a dynamic URL which is in the standard format like foo?key1=value&key2=value2 we recommend that you leave the url unchanged, and Google will determine which parameters can be removed; or you could remove uncessary parameters for your users. Be careful that you only remove parameters which do not matter. Here's an example of a URL with a couple of parameters:

www.example.com/article/bin/answer.foo?language=en&answer=3&sid=98971298178906&query=URL
  • language=en - indicates the language of the article
  • answer=3 - the article has the number 3
  • sid=8971298178906 - the session ID number is 8971298178906
  • query=URL - the query with which the article was found is [URL]
Not all of these parameters offer additional information. So rewriting the URL to www.example.com/article/bin/answer.foo?language=en&answer=3 probably would not cause any problems as all irrelevant parameters are removed.

The following are some examples of static-looking URLs which may cause more crawling problems than serving the dynamic URL without rewriting:
  • www.example.com/article/bin/answer.foo/en/3/98971298178906/URL
  • www.example.com/article/bin/answer.foo/language=en/answer=3/
    sid=98971298178906/query=URL
  • www.example.com/article/bin/answer.foo/language/en/answer/3/
    sid/98971298178906/query/URL
  • www.example.com/article/bin/answer.foo/en,3,98971298178906,URL
Rewriting your dynamic URL to one of these examples could cause us to crawl the same piece of content needlessly via many different URLs with varying values for session IDs (sid) and query. These forms make it difficult for us to understand that URL and 98971298178906 have nothing to do with the actual content which is returned via this URL. However, here's an example of a rewrite where all irrelevant parameters have been removed:
  • www.example.com/article/bin/answer.foo/en/3
Although we are able to process this URL correctly, we would still discourage you from using this rewrite as it is hard to maintain and needs to be updated as soon as a new parameter is added to the original dynamic URL. Failure to do this would again result in a static looking URL which is hiding parameters. So the best solution is often to keep your dynamic URLs as they are. Or, if you remove irrelevant parameters, bear in mind to leave the URL dynamic as the above example of a rewritten URL shows:
  • www.example.com/article/bin/answer.foo?language=en&answer=3
We hope this article is helpful to you and our friends to shed some light on the various assumptions around dynamic URLs. Please feel free to join our discussion group if you have any further questions.

The comments you read here belong only to the person who posted them. We do, however, reserve the right to remove off-topic comments.

140 comments:

businessgeeks said...

This got me confused. Does this mean that wordpress permalinks are no longer useful? even encouraged?

Abbas Heidari said...

Hi,
I use Dot Net Nuke to build the web sites. The default url is like this (http://becswebdesign.com.au/Default.aspx?tabid=73)and I use a module which make the url friendly and convert it into (http://becswebdesign.com.au/products.aspx)
SEO and google ranking is realy important for us. So,should I not to use that module anymore or I can use?
regards
Abbas Heidari

Jason Billingsley said...

Ready for the controversy? I think this is a ridiculous article coming from you guys! To say we shouldn't rewrite URLs because we may rewrite irresponsibly. Seriously?

That is like saying people shouldn't drive because if you do it wrong, you may cause an accident. Come on. Give people proper guidelines. Identify the parameters you guys trip on like session IDs and teach the uneducated how to best eliminate the problem.

The facts don't align with your article. All else equal, those of us who use dynamic pages using static looking URLs beat those who do not.

You often do not need to write out parameters as is. Using replacement methods when rewriting is where we see benefits.

i.e. http://domain.com/index.jsp?categoryid=4&productid=36

http://domain.com/shoes/steve-madden-westun.html

The URL looks more trustworthy, will get higher CTR, backlinks will contain keywords in the URL, the URL keywords will be bolded in the SERP snippet... etc.

If it is an issue of uniqueness, we should handle this on our end by adding unique identifiers to our URLs.

I am shocked at this article. It's bordering on irresponsible as you know how webmasters pander over everything you guys/gals say on official Google blogs.

Geoff said...

I have to agree. This article is very confusing to say the least. Rewriting brings huge benefits for keyword rich URLs over a standard query string every day of the week.

ian said...

jason,

I belive in Google. I belive in tha fact that Google prefers to improve it's bots in order to satisfy cms systems opposite to develop SEO rulles...

"The URL looks more trustworthy, will get higher CTR, backlinks will contain keywords in the URL, the URL keywords will be bolded in the SERP snippet... etc."

how it realy looks a link become less and less important. Important is the text anchor that hide that link. I am sure that google bot will find what should be bolded in SERP in content rather in link structure.

I mean, hey, not SEO, but content should be king in a website, isn't is?

Free Chat Rooms said...

Ok, I have a joomla site at http://www.oohya.net that I'm using SEF urls on. This turns the url into http://www.oohya.net/component/option,com_seyret/task,videodirectlink/Itemid,48/id,288/ instead of all of the =? stuff.

Is this better worse or indifferent when it comes to dynamic urls?

Jenn said...

A lot of webmasters are using "vanity" URLs which basically use a server side redirect that shortens the URL of long query strings and are easier to manage.

Sites developed in Drupal are a prime example of uses of these URLs.

Bfri said...

I don't see the point not to use URL rewriting if you know what you do. SEF URL look better to searchers on the SERP (and can have a higher CTR). I also agree with having the keyword in the URL might not be a bad factor. How about this blog? I doubt that these pages are static but use mod rewrite to generate SEF URL. So Google what's the point? Do you want to get better in detecting dynamic URL parameters and that will only work if users use dynamic URL and not rewrite them?

Veda said...

Hey guys,
whatever you say , they 've made it atleast a bit clear and this article is useful for those who don't even know about it :P,, lol,

anyways, they've helped out in one manner atleast to rewrite your URLs, hiding those elements that can actually create the supplement issue, also they 've helped in choosing the right format to rewrite the URL (instead of , separated or uselessly including all parameters in '/xyz/4544/' formats, ...

COMMON guys you know they too have limitations and can't openly write what you have to use, ;-)) now its your IQ how u actually understand this and utilize this for your benefit instead of making hue n cry,, cuz even that is not going to affect them, but U :P!

I would simply prefer to rewrite my dynamic URLs in to, ".com/xyz/keyword1.html" for all the different Sids,& useless parameters, having the same content, This will also include your important keyword in the URL, (to appear in bold on SERPs) and in the backlink's URL if you are concerned about that,

and yeah I Agree 'Content is the King' BUT, to give weight to that content you need to have that particular keywords in your URL too.. :)

Well, Rest is all Personal Perception.. !!

Cheers,
A Search Engine Geek

Hỗn tạp said...

This article makes me suprise. I always think that static urls are better dynamic. I wonder the static urls in many platforms like Simple Machine Forum, WordPress. How good they are?

I agree with Jason Billingsley that "you shouldn't drive because if you do it wrong, you may cause an accident". I think the main idea of this article is how to use rewriting effectively without problems of crawling.

Magelan said...

What about dynamic images?
Does the google-bot index jpg-images generated by pictures.php?pic=123?

LebossTom said...

Wow... don't we have to make website for user not for bots ? you must be kidding us :(

Software Development Company said...

thank you nice post

John Mueller said...

@businessgeeks: I would only recommend using WordPress permalinks if you are certain that they do not introduce any irrelevant elements into the URL. In general, WordPress is pretty good at this.

John Mueller said...

@Abbas Heidari: If you can make sure that you are not introducing any irrelevant elements into the URL, then this may be ok. Looking at your site however, I notice that the dynamic URLs are not being redirected to the cleaner ones, which can be a problem.

In general, we would prefer to see a "messy" dynamic URL instead of an incompletely or incorrectly implemented static-looking URL scheme.

John Mueller said...

@Jason Billingsley: While you may be able to create high-quality URLs like that, the average webmaster often is not able to do so. We see too many examples of webmasters shooting themselves in the foot by installing some so-called "SEF/SEO-Module" on their site, which makes algorithimcally understanding a website close to impossible. If we are to give a general recommendation, we would have to say that it is better to stick with dynamic URLs.

John Mueller said...

@Free Chat Rooms: The URL that you provided is a great example of one which would be better to leave in a dynamic format.

John Mueller said...

@Magelan Yes, we can index images with dynamic URLs just fine :).

Michael Gove said...

Come on guys, saying you can detect parameters and work around them is not 100% accurate and can do damage.

We have URLS like :
‎/store/product.aspx?id=67790&lk=sup‎‎
/store/product.aspx?id=67790‎

These are consistently seen as different pages and thus duplicated in your index. We have no way to tell you they are the same so I have no choice but to implement URL rewriting to get around it.

Perhaps you can take a leaf from Yahoo! and allow us to tell you what params are unnecessary.

We also know, from trial and error, that you do indeed like URLS with keywords in rather than parameters; plus, as mentioned by others, users prefer them.

Thus, a good post in theory, appears to fail when confronted by your own rules and algorithms.

Perhaps clearer advice on HOW to rewrite a url structure would be better than saying don't :)

brain said...

It seems to me that this blog lately is going too much in the direction of "google understand all" instead that giving wise advises to developer.
Clean, static readable url are part of the usability of the web, and descouraging the use of them 'cause "google understand dynamic one" (& is this really true?) is not good behaviour on you part, like if you encouraged using table for laying out pages cause your alghorithms could understand the (non)semantic behind.

Ryan Williams said...

I think you guys are getting a bit too focused on the SEO aspect with your criticism. This is a webmaster blog, not an SEO blog. This post clarifies that rewriting URLs *can* cause problems for Google, which is completely true. This is useful information for developers who might be writing applications full of dynamic-to-static rewriting.

The reason using dynamic URLs is probably preferable is because Google can do some basic analysis to work out whether or not it's a useful or non-useful variable, specifically based on the fact that it's a variable. For example, if it sees ?pageid=1, it could theoretically also try ?pageid=2, and ?pageid=3 of its own accord. If those bring up new content, the bot knows those are useful variables and should be considered as such. If they bring up duplicate content, it knows those variables are non-useful from an indexing perspective.

Hiding these variables in a rewritten URL prevents the bot from being able to operate in this way, meaning it could index 50 versions of the same page.

One example off the top of my head is if a misguided webmaster decides to include the session ID as a rewritten part of the static URLs. Thus, if people visit the site and then link to it elsewhere, their links will include this session ID and make it look like your site is full of duplicate static pages. If Google can see they're variables, it can take that into account.

Rambling a bit, but the gist is this: this article is good information.

Greg said...

I disagree with this article.

If i rewrite my urls on the server side, you have no way of telling whether i have mapped .html to php or if i used .php as a suffix to my urls and generating my urls dynamically. They only information you have to make your guess is the response time and then, what if i have a slow or fully loaded server?

What this article is suggesting is that google prefer query string urls rather than short static urls regardless of whether the static urls are dynamically generated or really static.

I agree with many of the developers here saying that google should provide us with guidelines on url generation rather than telling us not to use it.

At the end of the day, what we are trying to achieve are click through rates, and if people really do prefer to click on urls with a bunch of numbers rather than one that sounds like what they are looking for...then i will switch.

Luxury said...

i think there is still advantage to static url techniques obviously if you do them correctly, you can see result by just in Google PPC as well, more rich keyword url mean better click through rate and that is our ultimate goal, i don't want to have 10000 impression and 6 click, i would like to to have 200 impression 20 click, so in the end game is bringing user to your website.....
tahir seo expert

webjunkie said...

This article is complete nonsense.

As far as specifications go, there is no such thing as a static or dynamic URL.

A URL is a URL. You can append parameters to any URL (what would make it "dynamic" for you).

Ryan Williams said...

You should read my comment above, webjunkie.

Whether there's a technical difference or not, a URL that's static as far as Google's definition goes can be treated differently to one that's dynamic.

Perhaps you forgot that this is a Google blog, and not a blog on the general specifications and technical qualities of URLs? In this context, whether they're different with regards to the URI specification is irrelevant.

carondelet said...

Adding to the growing choir of voices crying, BWUH?!?

Is it Controversy Tuesday? Because this post doesn't make much sense to me as both an "average" webmaster and an SEO. We've heard for ages now that too many queries in an URL string will choke the bots, Googlebot, Slurp, Teoma, whomever, the longer it gets, the more the bots gag. As has been mentioned earlier in the comments, it would be beneficial to all if we could get some actual guidelines on URL generation.

I do find it difficult to believe that to the human eye a string of variables is more attractive to a person than keywords that describe the page that the URL is presenting. I'm just having a hard time with that one.

So is Google now saying that CMSes and developer programs can, essentially, puke up any rubbish URL without consequence since the Google robots will work around it? Something about that line of thought just doesn't seem right by the end user.

My whining aside, there is a possible security consideration to be given to how URLs are named: exposing how you run your server. If your pathways show that you have, for example, dynamic pages that are generated by scripts located in a "cgibin" or "cgi" area, how is this beneficial to the webmaster?

GManning said...

Regarding the suggestion to serve up a "static equivalent" of our content...I have been doing this on one site for three years and to be honest, page rank stinks.

I have recently started to see this getting better so is this a new policy? I had always thought I was suffering under some duplicate content penalty but continued doing it because it made business sense.

One more question...if you have a dynamic and static version of the same page, shouldn't the page rank be equal?

Ryan Williams said...

I think you're getting a bit too caught up on having some clear rule about whether dynamic or static URLs are best. For the most part, they probably are equivalent — it's not in Google's or users' interests to treat them differently.

This article is just meant to highlight some potential problems that can arise from developers turning dynamic URLs into static ones incorrectly, rather than be some general guideline for any and all purposes.

Or to put it another way, it's saying that Google bot can potentially screw up if a developer isn't savvy with how he generates his rewritten URLs, whereas if he just leaves them as their default dynamic selves Google bot will generally get it right every time.

That's how I read it, anyway. I don't believe either dynamic or static URLs are better from an indexing perspective as long as the developer has done his job carefully. As such, the whole argument is pretty much irrelevant for the SEO 'experts' out there who exclusively use well-written pre-developed applications like WordPress.

Sebastian said...

Because its harder? is this a joke?

Martin Kelley said...

What's this article all about? Certainly static-looking URLs are preferable. Humans read them more easily--humans, remember them? It's the equivalent of tucking your shirt in. Why should I be advertising my CMS system when a plug-in or two lines in the htaccess file will create a logical human-understandable URL? By hiding the CMS generator I'm also reducing the ability of hackers coming by with an exploit (they use Google to search for specific URL parameters and get a list of vulnerable sites).

I'm working with a client using an obscure content management system that throws sessions IDs on everything and Google Analytics is almost unusable. I've had to go to show content by page title just to get anything useful. A simplified URL structure that didn't include session IDs would make analytics better.

DazzlinDonna said...

O.M.G. This is going to stir up a hornet's nest of controversy. This is unbelievable. You've got to be kidding me. Do you Google geeks realize that you just made everything MORE confusing, not less? The very advice you are handing out is directly contradicted by the fact that THIS POST uses redirection to create its pretty url. How confusing do you think that is? Crazy. Crazy. Crazy.

Tim said...

What about REST? What about this very blog-- isn't it rewriting the URL?

MBZ said...

LOL the post above is absolutely correct. Google <3's contradiction.

Many of us are on CMS systems that we pay extra for so that it posts with friendly URLs. This is a big problem, will there be a contradiction to this post clarifying many of the questions above?

Brian said...

Wow, what a worthless article. This reads like someone who is speculating on Google's behavior rather than someone who actually works at Google.

The article states regarding the notion that spiders have problems with session IDs and other parameters that "as a matter of fact, we at Google have made some progress in both areas." Some progress??? What does that mean?

The article says not to rewrite dynamic URLs but make sure they are short! How do I do that without rewriting them?

If Google knows that some parameters are okay yet other parameters cause problems, why not tell us *specifically* what those are?

And after you show us an example of an okay rewritten URL you say "Although we are able to process this URL correctly, we would still discourage you from using this rewrite as it is hard to maintain and needs to be updated as soon as a new parameter is added to the original dynamic URL." Is this Google's concern? If I want to maintain it what does Google care?

Google's job isn't to inform me how best I can spend my time, it's to inform webmasters and others how best to work with their search engine. This article did the opposite, it created problems where before there were solutions.

Joe G said...

The good part about having static-looking URL's is that you can change up your backend platform (i.e. PHP to ASP) and still maintain the same URL (so no crapshoot 301's, etc.).

In my opinion this is why controlling your URL's in a static format is invaluable long term.

Joe Griffin

ldparizeau said...

"Does that mean I should avoid rewriting dynamic URLs at all? That's our recommendation" Ouch...

I understand that rewriting can be done badly... and can create more problems than it solve. But isn’t there another side to the story?

SEO aside, rewriting can actually be used to reduce duplicated content. So unless Google is stating today that they can deal with every CMS on the planet (with all their quirks), we should be careful interpreting this article.

As for SEO (and I know it’s not the purpose of this blog... but common, isn’t all related?), I learned with the years to be cautious with what Google want you to do and what really works on search result pages.

I’d like to hear Matt Cutts on this since in 2006, he recommended using URL rewriting: http://video.google.com/videoplay?docid=-6860320126300142609

John Mueller said...

@carondelet Allow me to skip over the security issues (because if your site has issues that can be recognized through the URL structure, then you should fix those anyway). It has always been easier for search engines to take a URL apart based on parameters in the URL than based on a fixed path and file name. For instance, if we see http://domain.com/12992923/autoparts.htm and http://domain.com?item=autoparts&session=12992923 then it's much easier for us to recognize (and ignore!) the session-ID in the latter case. If you can minimize all irrelevant elements within a URL for us, then that's ok too: both http://domain.com/autoparts.htm and http://domain.com/?item=autoparts give us the same information.

Of course, if your site has various other products that we can find because we recognize the parameter in the URL, then the dynamic version may be preferential. Maybe http://domain.com/?item=oils also brings up relevant pages? If we find links to those pages, it's much easier for us to put them into perspective if we have dynamic URLs.

Teddie said...
This post has been removed by the author.
marcuhlig said...

i am sorry google, but this is a joke.

i am not "hiding" anything with my rewrites, i am making my application more user friendly, and btw, what happens on my server is none of your business, you worry about my output, you don't need to know what parameters i process.

thanks for understanding.

Jody said...

Great feedback from everyone! Personally from a human perspective, a cleaner static URL is the way to go. People simply relate to these URLs better. Sure URL re-writing can be tricky, but whenever you have the opportunity to serve up a clean descriptive URL, why wouldn't you?

I think that Google has muddied the waters here a little especially as many have pointed out when this post itself is making use of a redirect.

Other search engines appear to show a preference for static URLs, this should be an interesting debate over upcoming days and weeks.

Gregor G. said...

OK. I got the point.
But on the other hand, having a keyword in the URL will rank the page higher in results for that keyword.
So if I rewrite
www.example.com/article.php?id=77
to
www.example.com/article/77/how_to_surf
my article titled How to surf and talking about how to surf will be ranked higher with "how to surf" query using the bottom URL.
Isn't that right?

Teddie said...

This is an awful misleading and confusing post which rambles around a very simple topic.

If you want to say "we don't have an issue with dynamic URLs any more, but unnecessary parameters are still an issue whether they're static or dynamic, however if you leave them in the dynamic ?name=value pair format we can spot the issue easier", say it.

However you still overlook, RESTfulness, persistence, user friendliness, duplication handling, which are all extremely important considerations within URL design.

I think you should retract this post.

infrared said...

Clever guys, to do your 2009 April fools joke in September of '08!

Shrisha Radhakrishna said...

Isn't it sort of ironic that this very blog post has a rewritten URL?

Richard said...

You know, of course, that we consider the user when we build this stuff? Pretty URLs are just more friendly to users. Google is NOT the the only consideration here.

David said...

I also think it's a poor article. I think the meaning of the article basically is that Google don't want to encourage the rewriting because they fear people will not manage to do it properly and G will then be unable to index the page properly.

So in the end the article is just about keeping quiet about the fact that rewriting to permanent URLs might be a good thing, in order not to put gasoline on the fire.

Please don't tell me that www.geek.com/?mod=home&cat=news&id=133 would rank better than www.geek.com/seo-news/ for "seo news" when I see pages with rewriting all over the first page for popular keywords.

They should instead talk about how to do it properly with 301 pages pointing to the new permanent URL.

John Mueller said...

@GManning: If you have static and dynamic versions of your URLs, it would be best to 301 redirect users going to the dynamic version of the URL to the static one. That way users and crawlers know which URL is the one to bookmark/index (and it will also help us to keep the PageRank on that URL).

@Ryan Williams: That's the way it's meant :). There are a LOT of sites out there that use URL rewriting in a way that makes indexing them correctly and completely close to impossible. There are also some that are doing a great job of rewriting URLs properly.

@Martin Kelly: While rewriting URLs in general can often be problematic, rewriting URLs to include the session-ID in them will always be problematic. If a CMS requires the use of session-IDs for crawlable and indexable content, I would consider working on ways to remove the session-ID requirement rather than hiding it in the URL somewhere. I assume this is what you are doing (and I know from experience that it's very difficult, so good luck!), but think I need to be absolutely clear that it is *never* a good idea to include a session-ID in the static part of a URL.

@MBZ & DazzlinDonna: If you can make absolutely sure that your URL does not include any irrelevant elements then you may be rewriting URLs in a way that is fine. In the vast majority of the situations however we have seen that this is not the case, sadly, and we would prefer that those sites use the actual URLs rather than some which make crawling and indexing a site correctly and completely very, very difficult.

Aaranged said...

It's interesting to cross-reference this post with "Google, duplicate content caused by URL parameters, and you," posted a mere 10 days ago. It says, in part, that duplicate content can be avoided by "Removing unnecessary URL parameters -- keep the URL as clean as possible."

Needless to say, "keep the URL as clean as possible" rather contradicts the gist of this post ("keep the URL as filthy as it appears"). The salient point here is that Google may be able to correctly parse and consolidate dynamic URLs, but why gamble? If you do have sufficient back end control to consistently produce a single URL, you remove the possibility of Google indexing the same page under multiple URLs, and so mitigate the risk of duplicate content issues (and improve your chances with the, ahem, less sophisticated engines).

I don't think it is an "irresponsible" post, but it does fail to make the important distinction between static URLs and canonical URLs. Whether a URL is static or dynamic, the more it is a singular resource locator, the better. And I agree with the authors that it is better not to rewrite dynamic URLs than to do it poorly.

jammyb said...

I have a website that uses dynamic URLs extensively as it's DB based. This article makes perfect sense and has a lot of suggestions that I can work with.

First, it debunks the URL rewrite myths that have wasted so much of people's time messing about with .htaccess!

Second it shows that Google is on top of the normalisation issue - each URL should contain only enough information to uniquely identify a single page.

The message is loud and clear - don't waste your time trying to game the search engines. Just provide good content in pages whose URLs have only those parameters that are necessary to identify the page.

Now how about cookies ... ?

Seb said...

I think we could do with a list of recommended parameters.

eg. date=1-Nov-08 or date=1Nov2008

trunet said...

and why do you use static URLs in your blog?

LebossTom said...
This post has been removed by the author.
LebossTom said...
This post has been removed by the author.
JF said...

"However, as a matter of fact, we at Google have made some progress in both areas."... Well, what about other Search Engines? As if there would be only Google.

lordscarlet said...

10000% agree on both Analytics and the fact that THIS POST USES URL REWRITING.

lordscarlet said...

@John Mueller:

Your replies are very different form the blog post. You are saying that responsible URL Rewriting is good. The post, however, tells you to absolutely avoid using URL rewriting.

Darshan Chande said...
This post has been removed by the author.
Blog Optimization said...

Obviously, this is because people have been abusing rewriting for ppc, seo and affiliate marketing. I've seen sites deceive users based on their url.

John Mueller said...

@lordscarlet: The devil is in the details :). If you look at the web on a whole, you would have to say that most sites do a bad job at rewriting URLs and that it would be easier for search engines in general to see the real URLs. However, there are exceptions and situations where a properly rewritten URL, that does not contain any irrelevant elements, can be an advantage.

If a webmaster is unsure whether or not a chosen URL scheme is perfect (and implemented perfectly), then I would recommend leaving the dynamic URLs instead of providing something which can make it hard for us to crawl a site properly and completely.

We did not significantly change our crawling and indexing system for this blog post. We have only noticed that the myth that "any rewritten URL is better than a dynamic one" is very wide-spread and is just plain wrong.

If we want to make progress on our mission, we need to get myths like these out of the way and help you to make it easier for search engines to crawl and index your content -- ultimately with the goal of being able to send visitors to your site.

Jason Billingsley said...

@John Mueller
You are forgetting what URL stands for - UNIVERSAL. Not just Google or 'search engine'. We use these URLs in email, print, and verbally. Users actually navigate with URLs - go figure.

If your goal is to truly optimize the user experience, this should trump your desire for indexability, no?

lordscarlet said...

@John Mueller:

"We did not significantly change our crawling and indexing system for this blog post. We have only noticed that the myth that "any rewritten URL is better than a dynamic one" is very wide-spread and is just plain wrong. "

So instead you want to perpetuate a myth that never using URL rewriting is better than making clean, understandable, "hackable", analyzable URLs? This post, without question, says that you should avoid "static" URLs at all costs for non-static files.

What this post is encouraging people to do is overreact to a subsection of the web which has poorly rewritten URLs. Rather than be smart about it and clean up the way they are presenting URLs, people will use this as an excuse to barrage us with more unreadable URLs.

At a minimum, you should clean up Google Analytics before publishing such an absurd post.

Varun B said...

so which is good URL from these 2 - http://trekshare.com/members/johnnyiceland/Iceland-Jeep-tour-Winter-2000/

OR

http://trekshare.com/member=johnnyiceland&trip=Iceland-Jeep-tour-Winter-2000

top4office said...

First of all blogger has identified me with someone I am no longer involved with.

Guenny said...

It's an intresting blog about static or dynamic urls
my website has both static and dynamic an i think the indexing is good
Let's have a look: http://www.ratiomat.de

Mikołaj said...

Dear Google Guys,

I know you are excellent in yout technical part, you are very confident in your job etc., but do you still remember that there is real world outside?

We are doing sites for our visitors / customers / clients, not for Google. Our visitors / customers / clients are humans and we should all we can to make them happy. Serving crappy unrewritten URL with many ?=& stuff isn't the best idea.

Our visitors / customers / clients will understand and remember URLs like domain.tld/market/ or domain.tld/shop/ not domain.tld/market/blogID=32069983&postID=7266186239298631175&pli=1

If you don't believe me, ask your fellows working on usability and accessibility - IIRC you have such teams in Google.

PS. If you would like to write next such irresponsible post, think about it twice. Yes, there are a lot of people who knows exactly how to deal with rewriting URLs and you don't have to be so protective. Your ideas are like throwing the baby out with the bath water.

freelance SEO india said...

Excellent Post! Great help from google..thanks a lot for clarifying the "facts" for dynamic urls.

perandre said...

Wow, this was unexpected. I'm glad you guys are sharing this.

Haha, all these angry comments :)

rumpelstilzchen said...

>>> we at Google have
>>> made some progress

reading this, i need not read any further ...

wiian said...

relief for small time publishers who don't have access to server rewrites

India Buzz

JamieThompson said...

I'd expect this kind of nonsense from Microsoft, not Google. Shame on you.

Ammon said...

Hey John,

I appreciate the attempts to clarify what many have missed. This blog has a much wider audience than specialist SEOs. The majority of readers will often not realise what makes for a good static URL (as with the example in the first few posts) and would be better off either not doing URL rewriting as the post suggests, or learning enough to do the job right (at which point their knowledge also tells them what to ignore in this post).

Sadly, many of the specialists have clients, who in turn have those pesky, half-smart (is halfway to being a brilliant wit a half-wit?) IT guys who are always trying to question, challenge, and generally undermine the specialist advice.

This post will cause me nightmares somewhere down the line, I just know.

Your answers have done much to clarify that intelligent, expert URL rewriting is still a good idea. However, it would have been so much better to have included that proviso and clarity within the original post, rather than expecting the unwise (whom this post is mostly aimed at) to read 70 comments.

Ammon

SEO Experts said...

Execllent information, it has clarified many doubts, since it's too early to say that dynamic are far better than static.

Bill said...

Rewriting urls is simply not necessary and thank you John and Google for finally dispelling this ridiculous myth.
If your worried about duplicate content problems with dynamic urls simply nofollow the duplicates, leaving just one path for the bot to index.

If Google’s PhDs couldn’t figure out how to read dynamic urls,… well that’s just absurd.

Petro said...

You can search for static URLs on Google by typing filetype:htm in the search field

Not so precise: .HTM pages can be Dynamic URLs aswell.

See: filetype:htm inurl:&

Brian said...

I wanted to post Rand's analysis of this announcement so that, god forbid, if any of my clients reads this post maybe they'll also read Rand's for a more informed viewpoint.

http://www.seomoz.org/blog/dynamic-urls-vs-static-urls-the-best-practice-for-seo-is-still-clear

Brian said...
This post has been removed by the author.
Leslie said...

This is good information to know especially on say an e-commerce site, particularly with seasonal merchandise. It's not important that visitors (ie. shoppers) be able to find a specific page on the site by remembering the URL to it so they can type it in. For these e-commerce sites, better to leave the dynamic links alone. But, this is going to upset SEO consultants who have built up businesses around rewriting these URLs, no doubt.

Jeremy said...

I think a lot of people are from SEOs and are very upset to learn that they've been charging people for bad advice. Sure, you see results; but, I doubt anyone has done a study to see how much adding intelligent meta data affects ranking over the course of a few months compared to simply changing the URL. Also, this is probably emergent tech from google to circumvent all the SEO attempts that place more value on manipulation than content -- totally against the google ideal. They're not saying "don't do it;" they're saying "know what you're getting into." I think a lot of posters have some issues with this revelation and don't want to believe it; so they attack it. I'm guilty of the opposite -- I've been waiting for it and wanting it.

Clean Cut Media said...

The comments here are priceless. So much anger. How dependent have we become to the almighty Google.

I do concur with a note above that this is a webmaster's blog not an SEO blog, so the focus of the article is understandable.

Having said that, it does create confusion as many readers of this blog have SEO top of mind.

I believe the point of the article (which wasn't made very clear) was that due to the many errors and issues that can come with URL rewrites, if your site is doing well already, it may not be worth the hassle of switching it over and potentially causing more issues along the way because Google has improved on the way it can read dynamic URLs assuming the structure is clean.

I don't think they were implying we should use dynamic over static.

But again, they should probably have a followup post clarifying their points. This comment section is more than enough evidence it wasn't very clear.

Clean Cut Media said...

As mentioned once above,

Two slightly different takes on this.

SEOMOZ

Searchengineland

Hope these articles help!

Paul
Clean Cut Media

alanhogan said...

This is the most ridiculous article I've ever read from Google or on the topic itself.

You forgot to clarify between "app" urls and "static content but dynamically skinned" urls.

I definitely believe /page.foo?id=3 should be re-written as /example-content. Why? Because URLs are UIs. Not to mention Google and other search engines match keywords against URLs – even if it doesn't affect ranking, it can increase user confidence in a result.

And don't forget that cool URLs don't change, as Tim Berners-Lee famously said. Using static-looking URLs can help you avoid changing URLs if you switch technologies or CMSs. For example, all the poor, poor folks using Drupal are now stuck forever (married?) to URLs with "node" in them. (Sorry Drupal users, but you really do have to maintain those URLs for eternity!)

You should've said, "Static-looking URLs are great IF you don't use them for app calls where GET parameters would be more appropriate AND you remember that URLs are a UI!"

cherouvim said...

My mom can edit the url example.com/products/cars to example.com/products but she'll never make it when the url is example.com/?cat=products&subcat=cars

In addition, when example.com/products/cars is being printed on say a newspaper I'll get 100 visitors. If the url looks like example.com/?cat=products&subcat=cars I may only get 60.

Webmaster said...

~shrug~ Yet more confusion and controversy from the big G for everyone to debate and moan over for weeks.

I'm sticking to my basic rules:

- Write content for USERS, not Spiders.
- Design sites for USERS, not Spiders.

It's simple really:

mysite.dot/index.php?id=1239383
mysite.dot/index.php?id=1289382

are a lot less user friendly then:

mysite.dot/products
mysite.dot/products/widgets

So I'll keep using my rewrites, thank you very much. :)

briansol said...

I think uncle G just shot themselves in the foot with this one.

I will continue to re-write my URLs, because the W3 recommends it.

http://www.w3.org/Provider/Style/URI

Note the date this article was written. 1998. Long before Google was the search engine of choice.

If Google can't get their software to function properly to this standard, 10 years after the fact, then THEY are the ones who are behind the times.

I WILL NOT downgrade for their spiders inept.

I suggest you all keep your links as they are, and let Google realize their mistake when their market share drops.

Joakim said...

I rewrite my URLs to get them more userfriendly. I create websites for the visitors and it is much better with URLs like this: http://example.com/products/item-2/

Jonas said...

Lets complaint with Sergei Brin on his Blog!
http://too.blogspot.com/

David said...

I bookmarked this article simply for the conversation that took place at the result of this post. I have to say that I too am confused. Not being a back end-URL-SEO master this type of lingo stretches me a bit but I do understand it. Yet, the conversation that took place in the comments supports my theory, that like social media, SEO, and the back end of websites will never be an exact science.

Brad said...

Hey google, in webmaster tools I see a 404 for the page www.example.com/page.php?id=126

That dynamic URL is really helpful for figuring out where I should 301 that link. Great advice.

Michael Regan said...

I have got to agree with @Webmaster.

mysite.com/Articles/FlyFishing.html

makes more sense to my for my users than

mysite.com/index.php?q=2&pid=132

Why is this important? Which version do you think will attract more links?

SEO Expert India said...

This is a confused blog, its not clear in the blog that which parameters are we remove or not?

In this blog they write about short urls are better for indexing but dynamic urls are generally long and don't user friendly for exmaple,
http://www.herbsandcures.com/viewdisease.php?herb_id=12 is not good and understandable for user that what in the page if we rewrite this url as http://www.herbsandcures.com/Herb/12/Alder-Buckthorn.html this is good and understandable for user as well.

This article got confused more because many websites uses same parameter and session ids these also cause content copy issues.

iliyas patel

stevo said...

I guess Google wants to know the parameters because when they see a URL like this
www.domain.com/products.php?cat=15&page=3 they know that the actual page on the server is products.php and this page will be the same if called like this:
www.domain.com/products.php?page=3&cat=15.
That's why I think they wanna know the parameters. If they have problems crawling a page, they might try to leave away some / all parameters and see what happens. They can't do that with rewritten URLs.
Anyway: You shouldn't mess with your URLs, whether you rewrite them or not. And I will definitly prefer a URL www.shop.com/shoes/some-shoemodel.htm over www.shop.com?cat=123&prod=234. From the users view, wouldn't you agree Google?

Jabba The Hunt said...

Ok reading a lot of the comments (but not all of them) I think a lot of people are assuming URL rewriting allows us to perform named lookups on a particular item. URL rewriting does not remove id's from the URL this is done by the programmer using a name to lookup a particular record in the database. If you are going to compare the success of URL rewriting compare domain.com/products.aspx?productname=MyAwesomeProduct with
domain.com/products/MyAwesomeProduct

What this post is saying is that this shouldn't make any difference to the rank of your page. It then goes on to say that session id's are often passed in the URL. However if your using URL rewriting you need to be careful which values you rewrite as google struggles to remove values hidden in a URL. Where as values in a query string are easy to split and remove those which are not needed.

2K said...

I can't believe Google officially states something as stupid as this. This is 100% opposite of generally approved WAI/Accessibility & usability guidelines.

regards,
-2k-

Daniela said...

Which progran can I use to rewrite a dinamic url in a static url?

SEFL said...

I think this is a case of misinterpretation as well...I know, because I misinterpreted it at first (and to be fair, Google worded this piece pretty awkwardly).

The answer is actually really simple, as Jabba the Hunt more or less explained. What Google probably meant to say (and missed completely) is that, if you convert dynamic URLs to static URLS, remove any unnecessary parameters and/or parameters that can create duplicate content issues in the process of passing information on to big G. If you have to pass dynamic information that won't directly alter the page itself (e.g. a session hash) and want to use a static URL, pass it as a session variable rather than within the URL itself.

There are other reasons to do this as well, not the least of which relates to bookmarking and/or passing of links via email. If you strip out dynamically generated parameters that don't really impact page output from the URL, the URL can be distributed more easily.

You can still rewrite URLs. If you want an example, this post happens to be one (as do most Blogger posts). The URL has clearly been rewritten, and that's okay. It's both user and search engine friendly. Obviously this is okay...or else it wouldn't be part of the Blogger software.

Again, the only controversy here is that Google sent a message other than that which they intended to.

Thomas said...

Is someone fact checking these posts?

Google is more than a crawler. It also analyzes data and serves results. Just because something is okay for the crawler does not mean that the same will not affect the analysis and the serving of results. I read this as a blanket statement, but one that ignores URL analysis.

It is generally believed that the presence of a search query in a URL will boost relevancy and may affect the rankings of results. To my knowledge, Google has neither confirmed or denied this. However, if a Google Employee says that something is true and does not specify between crawling, analysis or serving results…or for any other part of Google’s processes…then it can only be regarded as a blanket statement for all purposes.

Some have pointed-out that this is a blog for developers. Even so, it cannot excuse Google. Google teaches search engine optimization to developers (ex. SMX Advanced). More importantly, the real audience here goes beyond developers and Google knows this.

I applaud that Google is perhaps the most open of the major search engines. I’d like to see even more posts about technical details like URL configuration. But please,

1) Fact check your articles with other relevant departments/areas/projects.

2)Specify for each - crawling, analysis or serving results.

3)If you put something out there, be responsible by responding to legitimate questions and clarifying misconceptions.

lordscarlet said...

I am still waiting for a response from Google (John Mueller?) regarding how terrible dynamic URLs are for Google Analytics.

Myv Buendia said...

I think there are a lot of people that will disagree about this topic. But I think the idea here is how to make an effective rewriting.

Shailendra Dubey said...

We all knows that Dynamic URl's are not easily crawled, but if your site has good navigation structure, good backlinkks & a clean history, then your site is easily crawled & rank on Google.

Kukuruza.com is a best example. This site having Dynamic URL's but this site is crawled easily & rank on major keywords.

Preetam said...

I think the below was Google's intent:

- static urls should point to static urls. If google wants to optimize based on their definition of static urls, they can take more liberties.

- they can parse urls with parameters and give same weightage whether its clean or unclean. But logically, it means that the parameter names should be indicative of its purpose.
Instead of p=1 we should say propertytype=xxx.

- To help google with indexing dynamic dirty urls they suggest the below:

-- while they can figure out which parameters do not have any effect on the content and eliminate them, to make them do less work and help avoid multiple urls
to same content, we should not put those parameters in urls which do not affect the content of the page.

-- static urls do not give much flexibility for google to a better job of indexing compared to dynamic ones since you don't know what is the label, what is value etc.
Also change in order means same content being pointed to by multiple urls. Basically it falls on the application to manage these which is not the easiest thing.
Having a map of key-value pairs gives more information than a single string without clear demarcation.With dynamic urls with explicit parameters and meaningful names, order has no significance.

Michael Gove said...

Wow - what a thread.

the confusion here is over the technical capabilities for Google to process and manage dynamic URLS vs the real-world usefulness of meaningful URLS for dynamic sites.

It is excellent Google have upped their game on the parameters but I think it is disingenuous to say all is well in this regard. When they still cannot recognise dupes due to parameters or crawl less deeply due to the dynamic nature of the URL (we believe we have seen this ourselves), then simply telling people to carry on with dynamic urls is doing a significant disservice to webmasters. And it obviously ignores the customer experience/SEO aspect.

A shame as the basics of the blog were good, just too strident in it's message and ignored the reality we face every day.

Also .. other SEs really do struggle with non-static links .. not Google's problem I know but, yet again, real world vs Googleplex.

JezC said...

@Ryan Williams - the line between SEO and WebMaster is blurry. The ultimate goal of both is higher revenue - which comes from the dual role of satisfying users and ranking highly. There is a minor extra boost to click rates the more that a search engine result matches the search query. Google could do themselves a favour - if they don't highlight search query words in the destination URL of a search result, then SEO's won't get so much of a boost and the practice will die out - unless users still perceive a benefit.

I'll be watching to see whether Google believes their own prescription - when I see URLs are no longer emboldened, then I'll know that it doesn't act as a benefit for the bulk of users. :)

Sergiy Tytenko said...

Great news especially for our CMS.

From programming view it make sense to use symbolic keys for pages in database and then use this keys to generate url. ../?page=main or ../view=contact

And now we see that Google prefer this approach too.

Ryan Wayne said...

Good! Good! Good!. I blogged about this before (http://crustyadmin.blogspot.com/2008/08/wordpress-seo-url-madness-default-is.html)

I for one hope that Google starts ranking pages only on the content and does not look at the url at all for keywords. The urls have been so exploited by seo'ers trying to rank their crap pages. Oh, yeah, you say it's for the user. Well, I think users have grown tired of long-keyword-laden-urls-that-go-on-forever. So way to go Google.

tsiger said...

Nice Google.. Next post should be on what kind of titles you prefer and even what kind of topics to write on our websites. Or even maybe what kind of websites to run.

frenzy said...

I think the years before,static url is better,but now,search engineer become stronger and smarter,dynamic url is not a problem any more.
My site use both of them.
Free Articles

SEOGURU said...

I have developed web site(www.adzdaily.com) and have rewrite urls, is it problem?

Bryan said...

I don't get it? I thought the whole purpose of anything with the search engines is to return relevant and user friendly results? Are we not trying to appeal to the end user?

If I was on a site and the url looked like http://workfromhomebusinessreport.com/Internet-Marketing/SEO-3-Tips-To-The-Top.html makes a whole lot more sense to me and helps me see that I am on a relevant page as opposed to a url that looked like http://workfromhomebusinessreport.com/index.php?option=com_content&task=view&id=14&Itemid=32. How the heck does that help me as a end user?

Beyond that, I have Google analytic's installed on my site and before the rewrite trying to figure out what page was being viewed was a nightmare to say the least. After the user friendly rewrite, life was good again. This post is one of the most backward progression post I have ever seen. My advice, "Don't rock the boat and it won't tip over and sink". Please leave a good thing alone.

Julián Landerreche said...

People are complaining about this article, and authors haven't been too clear on many of the questions by commenters.
Although it seems strange coming from Google, I think the big G is tryin to play some kind of FUD game.

ldparizeau commented above (emphasis by me):

"As for SEO (and I know it’s not the purpose of this blog... but common, isn’t all related?), I learned with the years to be cautious with what Google want you to do and what really works on search result pages."

I've a similar conspiracy theory related to Google's disclosure about how their inner cogs work, specially on topics related to SEO, where they algorithms are or could be abused.
I think it's "good" to give some misleading advice.
If they would have published something like this: "static URLs are the only way to get indexed, and dynamic urls will be discarded from our indexes", then static URLs would be the new SEO panacea and will be used and abused by everyone, particularly snake oil SEOs.
Imagine it: lot of websites rewriting their already-working dynamic URLs into bad rewritten (because of ignorance) static URLs, making a worse scenario for crawlers.

But then, Google knows *there is good valuable content behind dynamic URLs*, and there is no reason to discard them just because the URLs aren't "pretty".
Probably (in fact, that can be read between lines in Google's article), indexing dynamic URLs (and at the same time, avoid indexing duplicate content) has higher costs for the Google machinery, and so, they lost time and money trying to find out which variables lead to the unique content they want to provide on they SERPs.
And then, it get worst for Google: it's easy to strip out variables from a dynamic URLs until you get the "minimal functional URL".
But it isn't too easy to do the same on a static (bad) re-written URL: it may lead to 404, it may be "impossible" for Google, then their costs on crawling/indexing become higher.

So, at the end of the day, my conclusion (my "conspiracy theory") is that Google is trying to _separate the wheat from the chaff_: the people who does the homework, both for having more human-friendly sites and for SEO's sake, and the people who doesn't care about technology friendliness, SEO, or those who abuse it, or those who does it in the "wrong" way (without anyone really knowing which is "correct" one), like doing bad URL rewriting.

So, the advice here is: don't do it if you are going to do it wrong.

FelipeC said...

This is better:

http://www.example.com/article/bin/answer.foo/3?language=en

John Mueller said...

@lordscarlet I have to admit I'm definitely not Mr.Analytics so I would suggest that you check with the Google Analytics help group to find out more. I did find two older posts about dynamic URLs and Analytics, but I don't know if they cover your questions: http://www.reubenyau.com/google-analytics-hack-obtaining-full-referring-url/ and http://www.epikone.com/blog/2006/06/14/tracking-dynamic-sites-with-google-analytics/

John Mueller said...

@Ryan Wayne That's a good post, thanks for sharing!

GCD said...

You guys are really confusing.... I have mostly dynamic urls on my site (realtor site: 30,000 pages dynamic/700 pages static) and I recently received a sitemap warning that:

"All the URLs in your Sitemap are marked as having dynamic content. Because dynamic content is difficult for search engines to crawl and index, this may impact your site's performance in search results. Check your Sitemap to make sure your site information is correct."

Okay, so who do I believe....? The Google Central Blog or Google's Webmaster personal site results pages?!?!?!?

Also, since receiving this warning, my site has dropped from the first page to the third. Your advice appears to be written from different and differing departments.

PdAnuva said...

Nice Post. Thanks for sharing this information with us.
SEO Services

Vjeshta e Trëndafilave said...

I`m From KOSOVO.
I respekt you very much.
And i hope you put in your web kosovo state.
Please, becouse kosovo do a state now.

spiderman05 said...

I have also to disagree on the content of this article. I prefer to provide my web site visitors with clean URLs instead of some cluttered dynamic ones.

The trend now is to rewrite dynamic URLs to static-looking ones. CTR is likely to be higher and the chances that users bookmark such pages are higher as well.

Google has been always advising web designers to value user experience over SEO, or at least to find a reasonable trade-off between these two contradictory factors.

Applying the same logic, I would also have to stop using JavaScript and forget about Web 2.0 all together as GoogleBot is unable to deal with JavaScript properly.

I am sorry, but it is up to the SE technology to move forward and not to web designers to move backward, so that a convergence point is reached.

Cheers.

mf said...

This is very cool news but I would like to point out a discrepancy between this blog post and another Google document: http://www.google.com/support/webmasters/bin/answer.py?answer=76329&hl=en

and I quote:
"Overly complex URLs, especially those containing multiple parameters, can cause a problems for crawlers by creating unnecessarily high numbers of URLs that point to identical or similar content on your site. As a result, Googlebot may consume much more bandwidth than necessary, or may be unable to completely index all the content on your site."

Maybe someone pointed this out but it seems like you guys should be updating your documentation at the Webmasters site. I tried reading through the comments to check before submitting this but there was way too much noise. Sorry if it's a duplicate post.

MoonsLight said...

I agree that static URLS are much better then dynamic in terms of the relevancy of the page. If my customers are looking for a specific product such as a "cool some kind of product" and if they type it in search and a static url comes up as cool_some_kind_of_product.html over !@#$%^%=+- and all the other crap that dynamic URLS produce, my customer will know EXACTLY what URL they are clicking on because it is properly named.
The other advantage in static URLS is that ANY search engine BOLDS the keyword, making it stand out even MORE. For people with very niche websites like myself that have people looking for very specific items and products the more it stands out the better because there is always the chance the customer will click on a bunch of irrelevant pages to find what they are looking for, get frustrated, stop searching, and all the while they will be unaware I had that product all the long.
Titles do help, but i don't how many times i go searching through google for something and I look at Titles first. I can click through ten sites and still not find what I'm looking for despite the titles having all the words i searched for in it. With static URLS this helps make the page even more relevant.
If static URLS did not fair better then dynamic URLS then no one would be converting them over.

sales said...

Hello! I use oscommerce and have a SEO URL addon. It seems to work ok, (well as well as my non techie brain can understand) however when I check google for the pages indexed for my site there seems to be at least double (closer to three times) what there should be and I notice that some of the ones indexed (exact same category page, five, six cached versions!) have this sort of added tag to the rewritten URL

?page=1&sort=2a&osCsid=00ea674ef6284cfe5c43a943f5576ee8

- basically I don't want my page authority spread across too many pages unneccessarily and don't want issues with the SE's for duplicate content - am I worrying unnecessarily? Thanks so much for your time!

John James Jacoby said...

I take away from this article that there is no different between Dynamic or Static URLs as either will be crawled sufficiently.

What matters in either case is the relevance of the URL compared to the information it presents, dynamically or statically.

Dynamic URLs suffer from providing automatically generated extraneous irrelevant information. Static URLs suffer from not being named what they actually are and are devoid of dynamic content from an administrative perspective.

Wordpress, Drupal, Joomla, osCommerce users; URL rewriting is fine for you, as it rewrites the URLs typically to match the relevance of the content, and again in most cases creates a "permalink" or never changing URL.

Think of Dynamic content like an eBay search where the contents of searching for the same keyword could change by the minute based on what items are up for auction at that moment in time. The URL is the same, the content served is different. Those kinds of URLs might not want to be rewritten because Google can interpret the intent of the query and order it effectively compared to other relevant information.

Does that help, and am I on the right track?

sales said...

It does - thank you! I guess I am still just concerned re the number of versions of each that now seem to be indexed - I have read that Google "doesn't like" duplicate content.. will they see it as such? Have just discovered another addon for osCommerce that works with the URL rewrite one to apparently stop all the stuff after the newly "prettified" url - will look into that. Thanks!

cherylfuerte said...

Thank you for this blog post which in my opinion should have been released earlier.

I've duly taken note of this statement in your blog post -- "However, as a matter of fact, we at Google have made some progress in both areas." -- so since when have you guys made progress? We used to have jsessionids in the URL just about 3 months ago and your webmasters tool console reported that those pages have duplicate page titles.

mypage.html?jsessionid=123
mypage.html?jsessionid=456

were detected as pages with duplicate page titles in the Google Webmasters Tool console.

So I'm not really sure how well you guys really handle dynamic URLs.

manikandan said...

Great Tips!

Thanks for the informations about Static and Dynamic Url.

Regards,
Bell

Andreya padty said...

Hi Nice Blog .This article is mostly for bloggers and not for organizations or for business products. And also I will not include those blogging templates. Here are the list of different blogging tools that a blogger can use in seo india

Mberenis said...

I like the idea of this, I have a similar blog about posting comments.

Post a Comment


:) Thanks in advance

rob said...

Hi Guys and girls I love read you blog but I thing you’ve been on the eggnog early this year probably celebrating you world domination or I’ve miss something as in November 08 you release a SEO starter guide which clearly talks about "friendlier" URLs which can not be performed on CMS site with out url rewriting which as I can see is directly conflicts with what you have written here? Please advise

Chris said...

I may be a bit off-topic here, but have a question nonetheless.

We work with a CMS that generates static URL's based on the menu (navigational) structure of the website.

For example, this could be part of our menu structure:

1 Products
1.1 Bikes
1.1.1 For men
1.1.2 For women
1.1.3 For children
1.2 Skates
1.3 Skateboards

For the example's sake I'll assume pagenames (filenames) will correspond with menunames. In our CMS, this would lead to URL's like this:

...com/products.htm
...com/products_bikes.htm
...com/products_bikes_for_men.htm
...com/products_bikes_for_women.htm
...com/products_bikes_for_children.htm
...com/products_skates.htm
...com/products_skateboards.htm

As you can see, the URL's above show underscores where other websites often show forward slashes and hyphens to reflect a directory/file structure, like below:

...com/products
...com/products/bikes
...com/products/bikes/for-men.htm
...com/products/bikes/for-women.htm
...com/products/bikes/for-children.htm
...com/products/skates.htm
...com/products/skateboards.htm

Now my question (to anyone, but I would be eternally greatfull if it came from Googlers themselves ;-) basically is:

Which method is better from a search engine point of view? Our current method with underscores, or the directory/file-reflecting method using slashes and hyphens?

Bear in mind that our current (underscored) URL's are static already and point to static content (that's why this comment might be slightly off-topic).

Tnx in advance for any thoughts...

ahollander said...

If a website has new content submitted by users every day and each post is given a numerical ID, I could rewrite each url so it ends with XXX.aspx or I could leave it with something to indicate that this is dynamic content, such as ?Post=XXX.aspx. If my primary goal is to have the posts indexed by Google - and not SEO - aren't we better off following the advice in the article so that the new posts get indexed? If we used rewriting so the urls looked like static urls, would the Google Sitemap provide adequate information so that he new posts would be properly indexed?

Krishnaraj Sekhar said...

Does it help me in any way for indexing if i have page with link to all the possible combination of dynamic url pages.

For eg:
I have a dynamic page which take the month of user. ?value=month
so if i make a static link

http://asdfj.com/kk.php?value=jan
http://asdfj.com/kk.php?value=feb
........................
............................

http://asdfj.com/kk.php?value=dec


This will help indexing my pages???

Just for Fun ;) said...

This is the real disadvantage in blogger many people who blog on blogger are moving to wordpress because of this reason!!!

1. In blogger there is no options of creating a seperate URL and for translated Page where as in wordpress hosted websites every translated page gets unique URL and gets indexed in google search engine my friend gets 40% of traffic from translated indexed pages but bloggers are really missing that google juice

any way lets see whether blogger allows inline translation like wordpress hosted blogs and allow third party plugins else.. :(

Highly depressed blogger :(
http://www.ceveni.com

Harish Chouhan said...

I completely agree to Jason Billingsley. Mention the correct guidelines and everyone would follow instead of asking us to give up a method.
I do not know if this article just some view or entire Google's view. If its what Google says, then it must be only to simplify their task of seeing website as it is and ranking them based on that to remove effects of SEO.

reamo said...

hi,to read your article something really confused to me,i'm come from the China,since i knew the Search Engines,my surrounding friends both told to me that the static is more friendly to the Search Engines,at least for our own Chinese SE baidu.maybe the dynamic URL more good to Google,but the Chinese website also consider our local SE,and do friendly to them,also have many users can remember many daily use static urls,it's easy,just have some simple number and letter,just like www.123cha.com.so maybe you is right,but it need to based on the concrete situation!

reamo said...

everyone seem to be think that the static url is more friendly to the Search Engines.so unconsciouly it became a rule,and make it just like it's a truth,maybe the view corrected people's misundertanding,but it need to be proved!

ababe2007 said...

I think this entirely depends.

Lets look at an example of an e-commerce site.

In the olden days:

www.shop.com/list-products.php?cat=382&sort=price&user_id=123454321&page=4

The user has no idea what content this is from the URL, sure maybe these days Google can interpret this okay, but URL sharing via e-mail etc is now huge, and I personally know a well written URL is very helpful, and attractive amongst a bunch of not-so-well written ones.

To overly rewrite this or 'staticize' it and potentially confuse search engines we would:

www.shop.com/pink-boxer-shorts/price/uid,123454321/page/4/

But here is what I see as the perfect rewrite:

www.shop.com/pink-boxer-shorts/view?sort=price&uid=123454321&page=4

Now we have all the essential info written statically, and anything not so essential and 'functional' after the "?". The user could even strip away the tosh after the ? to view what could be assumed Page 1 of the Pink Boxer Shorts section of the website, in default sort order.

Surely this is what Google should be saying... lets be dynamic (excuse the pun!) in how we suggest rewrites.. anything that suggests content in my opinion should be rewritten as if static, anything else, whack it on the end after a ? and write a decent little ModRewrite rule to pass that junk on.

Does anybody agree?

brian.berry said...

I agree with the consensus in general that this post is troublesome but lets all stop beating around the bush here. The real reason this post is so weak is that Google's position on SEO as a black art (one opinion) has affected their ability to speak openly and to the point.

Perhaps this black box approach is important to their strategy because it would be difficult for them to improve their algorithm if web masters were all catering to current idiosyncrasies. In short, they're trying to improve > measure > improve > measure without impacting the thing they're measuring, preferring to adapt themselves as opposed to having the wild naturally occurring web adapt to Google.

The best thing WE can do as the Webmaster public is to ask Google to give us a list of the very best sites in terms of all things PR related, or even better provide us with a reference implementation that we can study and pick apart.

This would certainly answer many of my questions at least and allow me to stop hanging on Google's every (and occasionally poorly conceived) word.

ramsatya said...

We can convert the dynamic urls into static urls using mod_
rewrite function in the coding.

Ashu said...

It's an eye opener as many of us in the web development and seo industry are still in the same illusion that the robots can not crawl and index pages properly in a dynamic format.

Forcing dynamic url's into static ones will obviously require making compromises on original parameters. As the sites grow and people change, it can magnify problems. It's wise to stick to the original url and let search engines do their job instead of hiding parameters.

rana said...

HI guys, I read this article and now i am cofused whether i use mode rewrite or not .I am using e commerce template for my web and i want to use rewrite rule through .htaccess file but success is far away from me.
Code which is iam using for this purpose is

Options +FollowSymLinks
RewriteEngine on
RewriteRule proddetail-prod-(.*)\.htm$ proddetail.php?prod=$1

Is this right one?
or if it is wrong then kindly guide me towords this. one thing more this site is host on a window base server.

Nabil said...

I think Google should improve their bot!
I can't imagine a company willing to use a url with ?id=237 at the end for a marketing or advertising campaign.

exportth.com said...

How about Blogger VS Wordpress ?