I was having a conversation with a client yesterday that I think bears repeating. The question my client had was, why was I recommending changing their 302 redirects to 301 redirects? A 301 redirect is a permanent redirect whereas a 302 redirect is a temporary redirect. My client had a number of pages that were being redirected within the site and had used 302 redirects to get the job done. Unfortunately for the client, 302 redirects are problematic in the major search engines. They have a very hard time indexing them correctly on a consistent basis. Google has been much better about it since the “Big Daddy” update last year but even so, the potential for problems remains high. The big difference between these two in the way they affect SEO is that a 301 redirect transfers link popularity and Page Rank scores to the new page it redirects to. And that can make a big difference in your rankings.
Here is how it works: Let’s say you used to host a lot of content on a sub domain called cool.domain.com . A lot of people on the Web started linking to your site because of how cool it is. A year later, you do a redesign of the site. You convert the architecture to all folders and you want to move the subdomain. So you change the links on your site to www.domain.com/cool . Now you put a 302 redirect up to make sure that anyone who goes to the old page because it’s bookmarked, will get to the right place. The only problem is, your rankings for all your cool keyword phrases die because now you have no link connectivity to let Google know how cool you are anymore. All your links point to a dead end. The 301 redirect changes that by telling the search engines that the page is permanently moved so assign all connectivity values here. If it were a temporary redirect, the engine wouldn’t let go of cool.domain.com because it thinks it is coming back someday. So there is no need to transfer the link popularity.
The number of reasons for using redirects on Web sites is enormous. I have seen all kinds of redirect implementations from various clients for reasons like vanity domains, marketing urls, changed database (URL syntax changes), outdated content, duplicate content and lots and lots of others. The most common 301 redirect you should have on your site is from http://domain.com to http://www.domain.com. The search engines treat each of these as separate URLs even though they resolve to the same content. By implementing the 301, you consolidate your link popularity to one version of the site and you avoid getting indexed under both conventions (especially if your site is coded in relative links) which can cause duplicate content issues.
If your interested in checking some of your redirects, type the URL that is being redirected into the box on this page. The resulting server headers will reveal if it is a 301 or 302 redirect.
Here are some other articles I have found for further reading:
http://help.live.com/help.aspx?mkt=en-us&project=wl_webmasters (type 301 into the search box)
http://www.mattcutts.com/blog/seo-advice-discussing-302-redirects/ (illustrates how search engines are inconsistent in treating 301 redirects)
http://www.bruceclay.com/blog/archives/2007/11/smx_london_day_2.html (2nd paragraph from the bottom)