This is a continuation of the question: How to handle canonical URL changes like Stack Overflow.

Say I have the canon URL:

questions/11/car <---canonically-linked-from--- questions/11/

What will happen if I want to change the canon URL to:


Obviously, questions/11/ will point to the new canon URL.

But how should the old questions/11/car change to the new one? There are two ways:

  1. 301 redirect that to new canon URL
  2. the old canon URL canonically link to the new canon URL

According to this post:

[By using canonical link instead of redirect,] OldPage.html’s rankings will drop over time due to fewer internal links, but the canonical tag won’t make it disappear entirely. It could theoretically remain in their index until one of the following occurs:

  1. it is redirected permanently via 301
  2. it returns a 404 for an extended period of time (they will keep checking for a while before dropping a URL)
  3. a meta robots “noindex” tag is added

If this is true, I really need to use redirect from old canon URL to the new canon URL, which means I need to keep a log of previous old canon URLsof this content, so I know when I can redirect. This is a bit of a hassle to do.

  • I get what you are saying. But what do you say about the following? Lets say i have 5 products that are identical but the product code, the product color specification and the product image. The title, meta and description are identical. (by the way the color is in a select form). I made 4 products link canonical to the 1 that is the MASTER based on many factors. If the MASTER becomes inactive or without a stock one product form the other 4 will become the new MASTER and the rest will become canonical to it. The question is if that by becomeing MASTER from canonical will the site suffer a pena
    – Florin
    Sep 19 '13 at 10:50

You'd use a 301 redirect from the old URL to the new one. That ensures any traffic to the old page is passed on to the new, along with any value (PageRank, etc.) that the original page accrued.

So old.html -- 301 --> new.html

Ideally you'd also update the canonical link element on any pages for which old.html was defined as the canonical version. So where old-variant.html originally had a canonical link element referencing old.html, it should now reference new.html.

If you forget, or are too lazy to do this, it's not the end of the world since the 301 redirect should complete the connection. It's probably not ideal – Google, for example, doesn't like chained redirections, and I suspect they'd have a similar stance on chains of CLEs and redirects – but it should work. However I'd be inclined to view that as a safety net, not a strategy.


It sounds to me that you are renaming a URL.

Rel Canonical tells search engines what the master page is, effectively which pages are duplicates.

You do not need to always use the Rel Canon if its in a page with lots of text contained all over your site. For example a /blog/ may have full articles displayed, lots of them. You can't use more than one canon and this case you just don't add the Rel Canonical.

Personally a meta (Noindex, follow) works best, and use the Rel Canonical on the master pages, will explain more later on about the follow.

For example page B (This has Duplicate Content) Page A (Unique Content).

Since Google will not reward duplicate pages there's little point in having them indexed so a better solution is this.

PageA.html you use Rel Canonical="PageA.html" PageB.html you use

By using the noindex you are automatically telling search engines do not factor this page, with the follow attribute in their you are ensuring that if someone links to the noindex page then juice is feed to the rest of the site, also it means that Google can crawl links found within the page. A noindex, doesn't mean it doesn't get crawled by the way, just means it wont show up in the results. Some say by using the noindex tactic you don't need to use the Rel Canonical on the main but I use it, and its still recommended as if any dupes get though you won't get slapped.

If you have simply renamed the page, cuz your question is pretty board and not exact then simply delete the old page, and 301 it. Some juice always gets lost when renaming pages what ever you do but 301 is the best way forward.

Hope this helps

Your Answer

