How to Solve Canonical Issues in SEO

In this post we are going to describe how to display your web pages on search engines if the multiple pages contain the same values with different URLs.

Watch Our Video on Canonical URLs


Here is some URLs examples that have the same product but these are divided into different categories. for example we have an e commerce website that deals in garments and here is a product that is listed in apparels further in sub categories, Mans wear, T-Shirts, Red Color, Price Range and many more.

The same product page has dynamic URLs as a result of user session and/or search preference.

Your web post system automatically saves multiple URLs as you list the same product under multiple categories

.Your server is configured to serve the same content for the www .subdomain or the http protocol.

Content you provide on that blog for syndication to other sites is replicated in part or in full on those domains.

While these Technics make it more convenient to develop and distribute content, they cause some challenges when people search your products or services to reach your page. For instance: (syndicated post) (original post)

  • Consolidating link signals for the similar  or duplicate content. It helps Google, MSN, Bing, AOL or any other search engine to be able to consolidate the content they have for the individual URLs  on a single, preferred URL. It means that links from other web pages or websites to get consolidated with links to
  • Tracking metrics for a single product/topic. With a group of URLs, it’s more and more  challenging to get consolidated metrics for a specific piece of product or content.
  • Determining the URL you want people to display. You prefer people reach your red T shirt product page via rather than tps://
  • Addressing syndicated content. If you are displaying your syndicate content on other web pages, you need to consolidate web page ranking to your preferred URL.

To resolve these issues, we advice you define a canonical URL for content (or similar content) available on multiple web pages with multiple URLs. You can do this for major search Search in many ways:


Set your preferred domain

Tell Search Engine which version of your website’s URL you prefer for your domain:


If you set your preferred domain as, search engine treats links to exactly the same as links to

Read Set your preferred domain for details.

Indicate how to handle dynamic parameters

Take a look at Parameter Handling and use it to tell Google and other search engine about any parameters you would like ignored or display. Ignoring certain parameters can decrease duplicate content in Google’s index, and make your website more crawlable. For example, if you wish that the parameter product or session id should be ignored, then Google will consider to be the same as

Use a HTML or XML sitemap

collect all canonical (preferred) URL for your complete website, and tell google about your preference by submitting all these canonical URLs in a sitemap.

Google or other search engine don’t guarantee that they will use the URLs you submit in a sitemap, but submitting sitemap is a useful way to tell Google and other search engines about the pages on your website you consider most important.

Specify a canonical link in your HTTP header

If you can manage your server, you must use rel="canonical" HTTP headers to clarify the canonical URL for HTML documents and other files such as Docs or PDFs. Say your website developers the same PDF or Doc files available via different URLs (for example, for filtration purposes), like given below:

In this case, you must use a rel="canonical" HTTP header to specify to Google the canonical URL for the PDF file, as follows:

Url: <>; rel="canonical"

Google currently examine these link header elements for Site Search only.

Google preference HTTPS over HTTP for canonical URLs

Google gives a special preference to  HTTPS pages over equivalent HTTP pages as canonical, except when there are confusing  signals such as the following:

  • The HTTPS page contains insecure dependencies.
  • The HTTPS page has an invalid SSL certificate.
  • The HTTPS page is roboted (and the HTTP page is not).
  • The HTTPS page contains a noindex robots meta tag
  • The HTTPS page redirects users to or through an HTTP page.
  • The HTTPS page has a rel="canonical" link to the HTTP page.

Although Google systems prefer HTTPS pages over HTTP pages by default, you can make sure this behavior by taking any of the below given actions:

  • Add 302 or 301 redirects from the HTTP web page to the HTTPS web page.
  • Use a rel="canonical" link from the HTTP web page to the HTTPS web page.
  • Implement HSTS.

Avoid the below given practices to prevent Google from incorrectly making the HTTP web page canonical :

  • Bad SSL certificates used and HTTPS-to-HTTP redirects may cause Google to prefer HTTP very strongly. Using HSTS cannot override this strong practice.
  • Use the HTTP page in your XML or HTML sitemap or hreflang entries rather than the HTTPS version.
  • Using your TLS/SSL certificafe for the wrong host-variant: for example, serving the certificate for  The certificate must match your whole website URL, or be a wildcard certificate that can be used for all your multiple subdomains on a domain.


Indicate the preferred URL with the rel=”canonical” link element

Suppose you want to be the preferred URL, even though a variety of URLs can access this content. You can indicate this to search engines as follows:

  • Mark up the canonical webpage and any other variants with a rel=”canonical” link element.
    Use a <link> element with the attribute rel=”canonical” to the <head> section of these web pages:
    <link rel=”canonical” href=”” />
    This indicates the preferred URL to use to access the red t shirt post,
    inthis way  the search results will be more likely to publish users that URL structure.
    (Note: Google attempt to respect this, but never guarantee this in all cases.)
    Note: use complete paths rather than relative paths with the rel=”canonical” link element.

Use this structure:
Not this structure: /apparels/red/redtshirt.html).

Implement 301 redirects for URLs that are not canonical

Suppose your webpage can be found in multiple ways:


If you have same post on multiple URLs then implement 301 redirects on the all the URLs that are not canonical and redirect it to  preferred URL. A server-side 301 redirect is the best practice to make clear that search engines and users are directed to the correct page. The 301 redirect status code means that a webpage has permanently moved to a new URL.

About Author

Rakesh 'Digital Marketer' shares his thoughts in Digital Marketing and some other paid advertisement Technics. With just over 8 years experience and corporate trainer, he provides training to beginners and industry experts as well

9 Comments on “How to Solve Canonical Issues in SEO

  1. My opinion is that, the canonicalization is something that the search engine crawler ought to be intelligent enough to arranged on its own. come back to think of it, inst this a similar factor like precise match and broad match in Adwords? they just need to form a culture or want to urge talked about so that they come up with these varieties of things that need webmasters to go in and place altogether the canonicalization tags in each page of the site so they can show they did this and that for SEO nothing else.

  2. Great Post. I have been doing the 301 redirects to the complete URL for a while currently. If nothing else, it provides the website a much additional skilled feel. All the main websites do it and i don’t get why it’s not a regular on server configurations. Most appear to default to the multiple URL versions.

  3. Its really a helpful article!! very simple and understandable .

    Using of 301s can increase the site load time once tried reaching a site from a redirected version of url thus one should be very cautious whereas selecting the ultimate version

  4. Canonical problems effect the page ranks in SERP and resolve once applying 301 redirection on the URLs but can you please ex-plane how i will apply 301 when a web site developed in PHP

    1. The effect of the 301 would be that the search engines will index your new page instead of old web page. Which is probably a good thing since old post is not reachable for the search index and thus could have a positive effect on the index. you will have to use it wisely.
      put exit(); after the redirect code to stop the rest of the script to execute.
      header(“HTTP/1.1 301 Moved Permanently”);
      header(“Location: new_post.php”);
      Also notice the relative path to the web page or file in the same directory (not like this “/dir/pages/new_post.php”, etc.), which all modern browsers seem to support.

  5. I have a huge data website, what should we do to display its category pages because we have data in thousand numbers in every category then can’t display the data on a single page and we are not able to add a proper rel next and rel prev tag in our head tag. what should we do? please suggest Rakesh

    1. Well, many of us not eligible to put the next prev tag in head and some time google also make changes in its algorithm and it take more time to get the changes on its display results. there is another best solution prevent from the pagination that is load more for user you can show the auto load results if you have much more data on your website. for best practice you can check the India Mart website and there may be many more, Apply this if still having issue then write us again

Leave a Reply

Your email address will not be published. Required fields are marked *