What is a Canonical Tag?

Article Details
  • Written By: Robert Grimmick
  • Edited By: R. Halprin
  • Last Modified Date: 13 August 2019
  • Copyright Protected:
    Conjecture Corporation
  • Print this Article
Free Widgets for your Site/Blog
Many colleges use therapy dogs; research suggests they can lessen stress and improve at-risk students' performance.  more...

August 20 ,  1955 :  Hundreds of people were killed in anti-French rioting in Morocco and Algeria.  more...

A canonical tag is a small piece of code embedded into a webpage that can help search engines deal with multiple versions of the same page. It is supported by three of the most popular search engines and allows webmasters to specify a preferred address for content that might be duplicated. Search engines usually honor this request and use the preferred address when indexing pages, but may ignore it under certain circumstances. Canonical tags, which are actually an element of the <link> tag, can be used with both relative and absolute paths but generally cannot go across domains.

In early 2009, three major search engines agreed to use the canonical tag to help deal with duplicate content on the web. Similar or identical webpages can often be accessed from multiple web addresses, or Uniform Resource Locators (URLs), such as,, and Content management systems, e-commerce platforms, and wiki software may also generate pages dynamically, with slightly different URLs being used to change the sorting order of a category, track affiliate links, or access previous versions of an article or page.


Duplicate pages with slightly different addresses can work against the search engine algorithms that use link popularity to determine where a page ranks in search results. A webpage with 300 links pointing at two different URLs might appear to a search engine’s indexing software as a single page with only 150 links. Search engines have historically dealt with the problem by offering preferred URL settings in their webmaster tools, developing their own internal algorithms to guess the most appropriate address, and obeying 301 redirects, a server-generated status code that forwards requests to a new URL.

The canonical tag is a way for web developers to mark a particular URL as the preferred version of a page. It is a small snippet of code that must be inserted into all webpages with similar or duplicate content, but does not require any changes to a web server’s settings. Most search engines treat it as a “strong hint” rather than a command, meaning that a canonical tag that has been implemented poorly or points to a completely different page might be ignored. The code is only meaningful to search engines; web browsers disregard canonical tags.

Despite its name, a canonical tag is not a true “tag” but an element that can be applied to the widely used <link> tag. A page marked with the code <link rel="canonical" href=""/> would tell a search engine that the preferred or canonical URL for the content is The "rel=canonical" portion of the code tells a search engine that the URL in the "href=" is a canonical link. Unlike a 301 redirect, a canonical tag can be used with both absolute and relative paths, although some search engines recommend using absolute paths. The 301 redirects, however, can point to a different domain, while most search engines only support canonical links on the same domain.


You might also Like


Discuss this Article

Post 1

Thanks for this useful post. It gives a really fair understanding about the implantation of canonical tags. Still, I need a little help you to implement these tags on my sites. Well, I have a product site (Software promotion site) where I would like to use these tags to avoid any plagiarism issues.

I have one product page (View all page) for windows where there is information about all the software. There is also a separate page for the per product available on the view all page.

Now I don't want to use only "canonical" on the all non canonical version of the pages. since I want Google to index all the pages. So how to do it? Do I use rel="next", rel="prev" tag so that all the pages would appear in the search results? If yes, then how do I do it? Any help would be greatly appreciated.

Post your comments

Post Anonymously


forgot password?