This post is for webmasters. Recently, I noticed that Behold's PageRank went from 5 to zero. I was very surprised by this and decided to investigate. Previously, I had heard that this is one way that Google can penalise your site for trying to 'spam' it, that is, to deceive it into thinking that the site is more popular/linked to than it really is. Although I had never had this intention, I decided to find out what might have raised Google's alarm. My first port of call was Google's own webmaster guidelines. I found nothing in my actions that could have violated these guidelines, with the possible exception of serving what appeared to be duplicate content from different sub-domains. However, it then dawned on me that Google was not penalising me, but, most likely, I did so myself. Here is what happened:
A long time ago, when Behold did not have a dedicated server, I set up a website at www.beholdsearch.com. The index page used a meta-refresh tag to redirect to the location at which Behold happened to be hosted at the time. Soon I obtained the first dedicated server for Behold. I named it go.beholdsearch.com and changed the meta-refresh tag at www.beholdsearch.com to an HTTP 301 permanent redirect to this address. 9 months later, I purchased a more powerful server to host what is now the Flickr version of the search engine. I named this server photo.beholdsearch.com. Noticing that the Flickr service became much more popular than the university image search that was still located at go.beholdsearch.com, I changed the 301 redirect from www.beholdsearch.com to point to photo.beholdsearch.com instead. Soon I had discontinued the university search and closed the old go.beholdsearch.com domain.
Bad idea. It looks like you should never change a 301 redirect once you have it in place. And not just because it goes against the very idea of a permanent redirect. My best guess is that this is all to do with the way PageRank is assigned. While no one knows how Google really works, it is likely that when Google sees a 301 redirect from site A to site B, it associates all the links pointing to site A with site B. In other words, it transfers the PageRank from A to B. Site B starts showing up in search results instead of A. However, when you change the redirect so that A now points to C, A has no more PageRank to give. Otherwise one could keep redirecting to new sites and increasing their PageRank at will. Meanwhile, B is now not associated with A. If B itself is not linked to from anywhere (and why would other people link to it when it's easier to link to and remember the www version of the site), on subsequent crawls Google realises this and removes all the PageRank from B that was handed over to it previously from A. So, you end up with having no PageRank at all on any of your landing pages, old or new. It will now take some time for Behold to regain its old PageRank. If you have to change your redirects, it looks like it is much safer to do so with the appropriately named 'temporary redirect' (HTTP 302).