Canonical HintsGo to hints
Canonicals can impact the way in which URLs are indexed by search engines.
This article will explain how canonical URLs impact indexing, and how the Canonical Hints can help you unpick canonical issues. Throughout the article you will find links to all the relevant Hints that Sitebulb uses.
What is a canonical?
In the field of SEO, a 'canonical', is a way of indicating to search engines the 'preferred' version of a URL. So if we have 2 URLs that have very similar content - Page A and Page B - we could put a canonical tag on Page A, which specifies Page B as the canonical URL.
To do this, we could add the rel=canonical element in the <head> section on Page A;
If this were to happen, you would describe Page A as 'canonicalized' to Page B. In general, what this means is that Page A will not appear in search results, whereas Page B will. As such, it can be a very effective way of stopping duplicate content from getting indexed.
When you set up a canonical, you are effectively saying to search engines: 'This is the URL I want you to index.' People may refer to a canonical as 'a canonical tag', 'rel canonical' or even 'rel=canonical'.
In Sitebulb, if a URL is canonicalized, it is also classed as 'Not Indexable.' Conversely, if a URL has a self-referential canonical (i.e. a canonical that points back to itself) this URL would be Indexable.
Self-referential canonicals are a useful default configuration, and are typically set up to help avoid duplicate, parameterized versions of the same URL from getting indexed, for example:
How are canonicals implemented?
The most common way that canonicals are implemented is through a <link> tag in the <head> section of a URL. So on Page A, we could specify that the canonical URL is Page B with the following:
Canonicals can also be implemented through HTTP headers, where the header looks like this:
Typically, this is used to add canonicals to non-HTML documents such as PDFs, however they can be used for any document.
As such, it is considered best practice to only ever use one method of assigning canonicals for each URL on a given website.
Issues with canonicals can be a massive problem for SEO, since canonicals affect indexing, and if your pages are not indexed then they have no chance of receiving search traffic.
There are a range of different things that can go wrong with canonicals, and Sitebulb's Hints will highlight all of them. We've split them out into different types below.
Issues with the canonicalized URL
There are 11 Hints that relate to the canonical URL itself:
- Canonical loop
- Canonical points to a different internal URL
- Canonical points to a disallowed URL
- Canonical points to a noindex nofollow URL
- Canonical points to a noindex URL
- Canonical points to a redirecting URL
- Canonical points to a URL that is Error (5XX)
- Canonical points to a URL that is Not Found 404
- Canonical points to another canonicalized URL
- Canonical points to external URL
- Canonical URL has no incoming internal links
Conflicting protocol issues
There are 2 Hints that relate to mismatched HTTP/HTTPS canonicals:
There are 8 Hints that relate to the implementation of canonicals:
- Canonical is a relative URL
- Canonical is malformed or empty
- Canonical only found in rendered DOM
- Canonical outside of head
- Canonical tag in HTML and HTTP header
- Mismatched canonical tag in HTML and HTTP header
- Multiple canonical tags
- Multiple, mismatched canonical tags
There are 3 Hints that relate to pagination and pagination canonicals:
- Next/Prev Paginated URL is canonicalized to different URL
- Noindex found on rel Next/Prev Paginated URL
- Paginated URL missing next/prev canonicals
Further Resources & Reading
This guide is intended to be an accompaniment to Sitebulb's Canonical Hints. For any of the Hints listed above or found in the software, you can click through to the specific Hint and find out more details about what it is, what triggers it, and what you can do about it.
There are also plenty of excellent 3rd party resources that can help you further with understanding canonicals and what you might do to fix any issues: