This is an archive site. For the recent posts, visit

Ordered List


May 22 2005

Google and the Underscore

A while ago I posted my WordPress Underscore Plugin to modify the slug treatment of permalinks to use the ‘_’ character in place of the ‘-‘. Some cried foul play as the SEO gods wouldn’t understand their URI’s, but Philip Nilsson pointed out something I felt was too important to leave buried in the comments.

Philip pointed me to a Google search for ‘URI underscore dash’, and the results to me are conclusive. I have included a screen shot, with the important area highlighted.

So it would seem that Google is able to understand ‘_’ as a separating character. I’m sure that Movable Type people will be happy about that. I know I am, as it would only make sense. I never did understand the stigma of the underscore, and why a progressive, forward thinking company like Google would overlook such a common technical character.

As to why I prefer it to the dash, I believe it comes from my programming roots. Going all the way back to programming in C, variable were always named with underscores; at least in the classes I took. Even in the WordPress core, all variable and function names are separated with the underscore, so to me, it only makes sense. I’m happy to finally see some proof in this matter.


Well it appears we have a dichotomy. While the displayed results (e.g. the screenshot above) would appear to use the underscore as a separating character, to my continued astonishment Google’s inurl: function apparently does not. Unfortunately my gut tells me that Google still does not understand the underscore as a space in URI’s, and that the bolding on the results page is simply the result of a regular-expression search and replace.

Either way, Google is misrepresenting its results, and I believe keeping good search material hidden if it is indeed ignoring such a popular separating character. If anyone has any inside information as to how Google’s inurl: function works, or how the keywords are highlighted on the results page, that would be helpful.