Managing redirects – 301s, 302s and canonicals

Almost every website will reach a point when they need to implement redirects.  Whether it’s because you moved content around, or you’re moving to a new domain, redirects can help you keep the traffic flowing, pass the value URLs have been assigned by the engines and help keep bookmarks working for your loyal visitors.

You don’t need to fear implementing redirects, but you should understand which is best to use and their limitations.  Let’s take a look at the most common redirects.

The 301 redirect defines a redirect which tells the search engine the content has moved permanently to a new location.  This is preferred as it clearly states the intent to move and instructs the engine to transfer any value the URL has accrued from the old URL to the new location.  It’s important to know that the 301 redirect does not pass all of the value from an old URL to a new one.  The new URL does need to build its own level of trust with the engines, which is why we won’t simply transfer full value to new URLs.

The 302 redirect defines a redirect which states the content has moved temporarily and will return to its original URL shortly.  This redirect will still move people to your content, but the engines are essentially being told to hold their assigned values on the original URLs and wait for the content to return to the original URL.  This is not what you want.  Be careful when requesting redirects be implemented, and clearly define that you need to have a 301 in place.  Otherwise, you can lose value from your original URLs, leaving your new ones to struggle on their own.

Heads up now, as this is where we give you a peek under the hood and insights as to how Bing thinks of 301 and 302 redirects.  While the information above is technically correct, sometimes the real world forces us to make compromises.

We are always cautious about the information we find on websites, as from past experience we know to watch in case you’ve made an error.  We sometimes see 301s changing destination each time we crawl them.  In such cases, even though a 301 is in place, we tend to view them as 302 redirects.  The flip side to this is that we sometimes see 302s which are always linking to the same destination each time we crawl them, acting more like a 301 redirect.  So our system may think about them more like 301s as we continue to crawl them again and again.

You can obviously help us by providing the right redirection.  That’s always best, but this does mean that if you have a large number of 302 redirects currently in place, you can move on to other work as we’ll figure them out.

Next up, let’s take a look at the rel=canonical element, what it does and how to use it properly.

It’s important to understand that a rel=canonical is not a true redirect.  There has been a lot written that it’s “basically like a 301 redirect”, which can be misleading.  The purpose of the rel=canonical is to help the engines understand when an individual URL is essentially a duplicate of another.  The rel=canonical element does suggest to the engine that any value assigned to the duplicate URL be assigned to the original URL, though.  This is similar to how the 301 functions, which is the origin of the over-simplification noted above.

The biggest difference between the two is that while a 301 redirect physically moves a visitor to the new URL, the rel=canonical does not physically move anyone anywhere.

Something else you need to keep in mind when using the rel=canonical is that it was never intended to appear across large numbers of pages.  We’re already seeing a lot of implementations where the command is being used incorrectly.  To be clear, using the rel=canonical doesn’t really hurt you.  But, it doesn’t help us trust the signal when you use it incorrectly across thousands of pages, yet correctly across a few others on your website.

A lot of websites have rel=canonicals in place as placeholders within their page code.  Its best to leave them blank rather than point them at themselves.  Pointing a rel=canonical at the page it is installed in essentially tells us “this page is a copy of itself.  Please pass any value from itself to itself.”  No need for that.

We do understand that doing work at scale requires some compromises, as it’s not easy to implement anything on a large site page by page.  In such cases, leave the rel=canonical blank until needed.

Getting back to redirects before we wrap up this post, if you’re starting a new website, keep in mind you’ll need to control the redirects if you move domains.  This is important when considering whether to start your site on a hosted service like Blogger or WordPress.  Be sure to understand whether the service will turn on redirects for you if you choose to leave their service for your own, stand-alone domain.  Most won’t.

The same thinking applies to services offering to optimize your pages on-the-fly by interrupting the request, rewriting the code and presenting a cleaner URL or even an entire page.  Such services work by placing themselves between the requestor (say, a search crawler) and your server.  You don’t need to do much, as their system will give you clean URLs on the fly. The trouble for you can begin if you ever choose to leave behind their services.  At which point the URLs the search engines have indexed are coming from your service provider’s servers, not your own.  If you turn theirs off, you lose the value assigned to those URLs.  Your own URLs will be seen by the engines as brand new, forcing them to start over in the hunt for rankings.  All links built to your website are actually pointed to the clean URLs on the service’s severs, not your own, so all direct links cease to exist as well, so this breaks bookmarks.

Now, any links pointed to your root domain will remain intact, but that doesn’t help the rest of your content and pages.

Redirects are small things that can wield a lot of power.  Be sure to do your research so you understand not only what will happen when you turn them on, but how it will work as well.  This is one area you don’t want to guess at.  Ask your IT staff or consultants to clearly explain what type of redirect they’re going to implement, how it will work and which URLs will be covered.

For large redirect projects, you’ll need to get dirty and redirect all that you want to keep the value from.  There’s no simple way around this.  Skip mass redirects to a single page, as most won’t end up passing value, and remember: keep all redirects pointed to pages which are relevant to the original.  Skipping this step negates the value.

As a closing thought, be sure not to stack redirects.  Doing so almost ensures we won’t pass the value through to the end.

Join the conversation

  1. Mack brain

    Thanks fore the great suggestion. I am facing redirection problem from so long.  


  2. Thos003

    I find the part on the rel=canonical to itself disturbing. When a page on a site attaches certain URL stings, the canonical tag can be used to tell the search engines that is the same page as

    You are saying it's improper to use it this way?

  3. nickroshon

    I have always been under the impression its okay to use the rel=canonical tag on the canonical version itself. Google has also implied this is correct, although makes no formal declaration one way or the other. Isn't indicating rel=canonical on the canonical version itself just one more way to be extra clear that you're on the canonical version?

  4. Craig Bailey

    I'm also concerned about your comments regarding rel=canonical.

    On all my WordPress sites I use Yoast's excellent SEO plugin – which will automatically insert canonical tags (often the same as the page URL) –…/seo

    As Nick mentions, Google has indicated (although I agree I don't think they have explicitely recommended) that the canonical can point to itself no problem.

    Your post seems to suggest that Bing will treat canonical tags differently to other engines.

    Could you please clarify whether canonical tags pointing to themselves could cause problems for optimising for Bing. Many thanks.

  5. SEOCoach

    As Craig and Nick mention – rel=canonical as implemented in most WordPress themes / plugins automatically refers back to host page.

    Please clarify this – your statement "No need for that." seems to indicate we should not use it except when it refers to another page?



    Thanks for your advices.It really helps.

  7. ProVal Technologies USA

    A 301 redirect is a permanent redirect. It's like a Change of Address form from the Postal Service. All traffic intended for URL A is permanently routed to URL B, and all link popularity and existing SEO value for URL A should also be transferred to URL B.

    A 302 redirect is a temporary redirect. There are very few instances where this type of redirect should be used, but unfortunately it is the easiest to implement. This means that many webmasters unfamiliar with search engine mechanics use the wrong type of redirect.

    So where is the problem? If you use a 302 redirect when you should use a 301, search engines have to try and determine which page is the "high value" page. Only one version of the page will likely be listed in search engine results, and you stand a chance of having the wrong page listed. This problem compounds over time as a chain of redirects can sometimes exist on older sites.

    Please note, for technical reasons, we are only able to implement a redirect when no CMS is available and when your website is running on a Unix/Apache server.  Should we attempt to modify the necessary file when a CMS is present, there is a risk that your entire site will break. Windows (IIS) servers lack this file completely and require software options changes to which only your hosting provider has access.

    Post By:

    ProVal Technologies

  8. kasun757

    Domain set up issues can create duplication issues. If you can see your website at both the www. And non-www versions of your domain, then you essentially have duplicate content. Your goal should be to have only one version of the website showing. Either is fine, but think carefully before making the call on an active website. Try to determine which version of your URLs already have links pointed at them and have value assigned to them. By doing this, you can understand which version of the URL to redirect. In many cases, if you type in the non-www version of a URL or domain, it automatically redirects you to the www version of the domain.(

  9. cnandrew

    fine topic,it gives me something about 301 and 302, to make my blog better in Search Enginner.

  10. allgreengiant

    Many webmaster doesn't care about the 302 because sometimes they treat 302 as 301 as well..I made that mistake also.

  11. Durex condooms

    Using a 301 when actually you need a 302 redirect can give you a big problem. So don't just use 301 redirect for temporary redirects.

  12. shadow_lee

    I am very disappoint for this : bing cannot  recognize the 301 redirect. As you say the 301 redirect does not pass all of the value from an old URL to a new one.  So my new web ' s rank are lost as my old url But you reindex the new URL to replace the old one. Why the rank can not replace the old one ?

  13. CasTex

    I have redirected my site successfully with using these methods. Thanks, this helped me a lot.

  14. rlk

    I tried having my database records indexed by submitting a sitemap.xml with redirects so I wouldn't need thousands of little html files to make all the real content on the site visible to search engines.  That seems to be the preferred method.

    I just read that Bing treats 301 and 302 redirects as errors, so it will ignore my sitmap.xml file. Using the redirect directive with a 200 status code causes a 500 error on Apache.  So, I am wondering how do you folks at Bing recommend making database content visible to your search engine?

  15. papikondalu

    PAPI KONDALU (One Day Package on River Godavari)

    Package starts every day by 7-30 A.M from Maruthi Mini Tours and Travels, Beside Sankharmatt,, Godavari Bund Road, Rajahmundry and return same day by   8-30 P.M.

    Frequency Dialy

    VISITING PLACES Posammagandi, Papihills & Perantapalli.

    On Boat View Pojavarm Project Area, Devipatnam Old Police Station, Kolluru bamboo huts

    Package includes Break fast , Vegetarian Lunch and mineral water.


    Initial Road Journery by Non A/c Bus / Vehicles upto boating unit, Pattiseema / Purushothapatnam (35km-1hour from Rajahmundry) . Check into Boat, then journery on holy River godavari (65km-5hours). View on boat "Polavaram Project Area". Reach Tribal Village Gondhuru, darshan "Godes Gandiposamma". View on Boat "Devipatnam Old Police Station" which was attacked by freedom fighter Sri Alluri Seetha Rama Raju at the time of freedom movement.

    Reach Papi hills which are very tall situated like a boundry wall in the middle of River godavari dividing East, West and Khammam Districts. Journery in between Papi hills is a memorable one, enjoy scenic beauty, later reach Parentapalli Tribal Village visit Ramakrishna Munivatamu which was established by Late Sri Balananda Saraswathi, then darshan of Swayambu Visweswara Swamy. Return back to Rajahmundy.

    Quick Eqnuiry

    Download Broche

  16. Faraz kelhini

    Look at the source code of this page, it has a rel=canonical which refers back to itself! The opposite of what has been said in the article.

Comments are closed.