On my first visit to EMC.com last week, I thought to myself “Uh oh, that’s not going to be good for their SEO”. It was a country selector. The only content on the page was a long list of countries. No keyword-rich copy. No keyword-rich links.

EMC.com Global Country Selector

But then I took a deeper look. I did a Google search for “cache:www.emc.com” and was pleased to see the EMC US site’s home page, not the Country Selector page! EMC had done their homework on SEO and were detecting the bots and waving them on. Googlebot doesn’t have to select a country. Good for you, EMC!

Contrast that approach to Lenovo’s global country selector. A Google search for “cache:www.lenovo.com” reveals, um, nothing. Yikes, no home page indexed! Nothing for “cache:lenovo.com” either. Then I visited the site masquerading as Googlebot, using lwp-request (one of my trusty power user command-line tools):

lwp-request -H "User-Agent: Googlebot/2.1 (+https://www.googlebot.com/bot.html)" -S lenovo.com

I saw the reason for Lenovo.com not having a home page in Google: bots were being directed to the Country Selector page using the wrong kind of redirect — a 302 instead of a 301. Not only were bots getting forced through a cookies-based country selector (mistake #1) made worse by the issue of the 302 (mistake #2), but also the URLs are not being canonicalized (i.e. there was no www present in the URL “https://lenovo.com/planetwide/select/selector.htm”. Indeed, none of the site is canonicalized. “https://lenovo.com/us/en/index.html” should 301 to “https://www.lenovo.com/us/en/index.html”. Or vice versa if you prefer your site’s URLs sans www.

What would I do differently if I were the sysadmin at Lenovo? I’d detect for Googlebot and send Googlebot directly to the U.S. site via a 301 redirect. Or alternatively, I’d make the home page URL (“https://www.lenovo.com/”) respond with the country selector for humans and the US home page for bots without doing a redirect at all. That would mean the US home page would live at “/” (rather than “/us/en/index.html”) for everyone except for humans who have no cookie set with their country preference, and of course, crawlers. Those visitors to / with the cookie set to another country would get redirected to the previously chosen country, which would not live on lenovo.com but on the corresponding country code TLD (such as lenovo.co.uk, lenovo.fr, lenovo.com.au). And I’d 301 non-www URLs to their www counterparts (more on this here).