The Canonical URL IN DEPTH
Canonical tags are inseparable from SEO best practices even beyond what is usually taken for granted. This article will walk you through its importance, implementation, and best practices, as well as explore its indispensable role in the Semantic Web and Semantic SEO. Discover how canonical tags help your website to improve its visibility in search engines, both in cases of organic SEO and GEO or generative search starring the increasingly numerous LLMs.
Master Canonical Tags: A Complete Guide to SEO
What are canonical tags?
Canonical tags are HTML elements that help avoid duplicate content issues by specifying the “preferred version” of a web page.
This is crucial for SEO, as it allows search engines to identify what the main version of a page is when there are multiple URLs with similar content.
Importance of canonical tags in SEO
Duplicate content can dilute the authority of your pages and confuse search engines about which version to index.
Canonical tags solve this problem by consolidating ranking signals into a single URL, thus improving your website’s visibility and performance.
How do canonical tags work?
Canonical tags are added to the HTML header of a page and point to the canonical URL.
For example:
<link rel="canonical" href="https://descriptor.eu/main-page/" />
This tells search engines that the specified URL is the preferred version, regardless of the current URL.
Implementing Canonical Tags
How to add canonical tags to your website
Practical examples
- Pages with URL Parameters: If you have pages with URL parameters that don’t change the content significantly, use canonical tags to point to the parameterless version. A typical example in ecommerce could be this product page with parameterized URL
https://www.exampleshop.com/product-x?size=xxl
that carries this canonical URL in its <head>
<link rel="canonical" href="https://www.exampleshop.com/product-x" /> - Mobile and Desktop Versions: If you have separate versions for mobile and desktop, use canonical tags to indicate the preferred version. Let’s say the previous example applies to larger screens, while a mobile subdomain was built in purpose for same content but different layout:
<https://m.exampleshop.com/product-x>
Make desktop version canonical by adding this line in the mobile version:
<link rel="canonical" href="https://www.exampleshop.com/product-x" /> - Responsive websites or responsive design: If your website recognizes the environment where it is displayed and changes its presentation (technically, depending on the viewport), which is the most common today, example #1 applies to everything. In the likely case that your company’s website runs on WordPress, the CMS takes care of the on-screen presentation and the basic SEO plugin will take care of the canonical URL, inserting the canonical tag automatically
Best Practices
- Use Absolute URLs: Always use absolute URLs in your canonical tags to avoid confusion.
- Avoid Canonical Chains: Do not point a canonical tag to another page that also has a canonical tag.
- Consistency: Make sure that all versions of a page point to the same canonical URL.
Common mistakes when using tags for canonical URLs
- Point to a non-existent page: Make sure that the canonical URL is a valid and accessible page. If the canonical URL results in a 404 error, you’re going wrong.
- Use multiple canonical tags: There should only be one canonical URL per page. That’s the fun, if it weren’t like that you’d never have a canonical version of the URL.
- Confusing canonical URLs with redirects: Canonical tags do not redirect users; they only tell search engines the preferred version. The redirects start from the server, informing the client of the redirect using HTTP status codes 301 or 308 (permanent redirect), 302 or 307 (temporary redirect, and I recommend 307) or the redirect to delete content 410 (content not available and without alternatives or expectation that it will ever return).
Tools for Checking Canonical Tags
- Google Search Console: Review your reach reports to see if your canonical tags are set up correctly. On large business websites, as a freelance SEO consultant this task is a daily part of managing and improving brand visibility and authority.
- Screaming Frog: This tool can crawl your site and verify the implementation of canonical tags.
- TechSEO360: A very technical and little-known crawling tool , but useful especially in this case.
- Ahrefs: Provides detailed reports on the use of canonical tags on your site.
Canonical Tags and Google Search Console
Messages from Google Search Console
“Alternate page with appropriate canonical tag”
This message indicates that Google has found an alternate page with a canonical tag that correctly points to the preferred version.
There are no additional actions needed, but it’s a good idea to review the implementation to make sure everything is in order.
“Duplicate user has not indicated any canonical version”
This message indicates that Google has found duplicate content but there is no canonical tag indicating the preferred version.
You must add a canonical tag to the duplicate page to resolve this issue.
How to read and act on these messages
- Review the affected URLs: Identify the pages that are generating these messages.
- Add or adjust canonical tags: Make sure that each duplicate page has a canonical tag that points to the preferred version.
- Monitor changes: Use Google Search Console to monitor how your settings affect your site’s indexing and performance.
Canonical URLs and their role in the Semantic Web
Introduction to canonical URIs and URLs
URIs (Uniform Resource Identifiers) and URLs (Uniform Resource Locators) are fundamental to the Semantic Web.
Canonical URLs act as unique identifiers for resources and entities, helping search engines and AI systems understand relationships and consolidate information.
Ontologies and the Semantic Web
Ontologies define the relationships between different entities and concepts in the Semantic Web.
Canonical URLs play a crucial role in providing unique identifiers that can be referenced and linked to in these ontologies.
Vocabularies and Formats
Dublin Core Initiative and DC Term Identifier
The Dublin Core Initiative (DCI) vocabulary provides a set of terms to describe resources.
The DC Term Identifier is an example of how canonical URLs can be used to uniquely identify resources.
Schema.org and @id
Schema.org is a widely used vocabulary for structured data markup.
The @id attribute in Schema.org is used to uniquely define an entity within the data graph.
This allows you to link and reference that entity from other markup blocks without duplicating its contents.
Semantic SEO and Canonical Tags
Importance of @id in Schema.org
The @id attribute is crucial for semantic SEO because it helps search engines understand the relationships between different entities and resources.
By providing a unique identifier, @id makes it easier to consolidate information and avoid ambiguities.
How Search Engines and AI Systems @id Helped
- Information consolidation: @id allows search engines to consolidate information from different sources into a single entity.
- Avoid ambiguities: By providing a unique identifier, @id helps avoid ambiguities and improve the accuracy of search results.
- Improved indexing: Search engines can better index pages when entities are clearly defined and linked.
Examples of @id use in JSON-LD
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://www.seofreelance.eu/product-123/#product",
"name": "Product Example",
"description": "This is a product example.",
"offers": {
"@type": "Offer",
"priceCurrency": "EUR",
"price": "19.99"
}
}
In this example, a unique identifier for the product @id provided, allowing it to be referenced from other markup blocks.
CLARIFICATION
Now you might be confusing the use of the pad (#). Let’s clarify the 2 typical but fundamentally different uses:
- The most common use in on-page SEO and web layout, which is to create internal anchors in a document. The most obvious of all is the lower arrow that usually has to take you to the top of everything you are reading. If you inspect it, you’ll see that it has an internal link pointing to #top (or similar).
This use is also very common in the tables of contents that became so fashionable a few years ago: each section title is usually an internal link to that section, for convenience. - Less widespread, but very visible since 2012 thanks to the Schema.org standard, we have the use of URIs with semantic effect. For example, if I declare the URI https://www.solidseo.es/#service I can create an internal break within a document, as we saw in the previous case.
However, the biggest effect is invisible to most, but it’s very important for your visibility plans: this URI is #service semantic, has its own meaning, and serves to identify entities and relationships.
How is this? For example, with Schema structured data. The format of the examples is JSON-LD, but what is relevant here is not the format, but the vocabulary used. If you check the standard you find Schema.org/Service and that’s where the magic lies. It means something to everyone, which is why it’s an established standard.
It is not the same https://www.solidseo.es/#service (a service) as https://www.solidseo.es/#brand (a brand). It might cost a bit, but that’s what I’m an SEO consultant for!
The Concept of “@graph” in Structured Data
What is @graph and its importance
The @graph attribute in JSON-LD is used to define a data graph that contains multiple entities and their relationships.
This is especially useful when working with reusable or interconnected markup, such as on websites, organizations, or products.
How to add @id to your Structured Data scripts and deployments
- Define the Context: Make sure that the context (@context) is defined correctly.
- Add @id to each entity: Provide a unique identifier (@id) for each entity in the graph.
- Link Entities: Use @id to link and reference entities within the graph.
Practical examples of using @graph and @id
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://www.seofreelance.es/#organization",
"name": "Ricard Menor Consultor SEO Freelance",
"url": "https://www.seofreelance.es/"
},
{
"@type": "Product",
"@id": "https://www.seofreelance.es/servicios/auditoria-seo/#product",
"name": "Auditoría SEO",
"offers": {
"@type": "Offer",
"priceCurrency": "EUR",
"price": "XXXX.XX"
},
"manufacturer": {
"@id": "https://www.seofreelance.es/#organization"
}
}
]
}
In this example, a data graph that includes an organization and a product @graph defined.
The product is linked to the organization using @id, which allows search engines to understand the relationship between these entities.
Case Studies and Results
How do canonical tags affect indexing?
Introduced in 2009 by a joint working group of the giants of the time (Google, Microsoft, Yahoo), canonical tags help search engines index the preferred version of a page, consolidating ranking signals and improving visibility.
The revealing studies in the moment after the appearance of the canonical URL meta tag are already old and hardly deserve the detail, since the canonical has become part of the landscape: I would not call it SEO implementation, rather it is a basic imperative.
Several cases of e-commerce sites showed significant increases in organic traffic after implementing canonical tags to handle duplicate content. As I said, today it is a no-brainer, in its day it caused a certain stir like all the novelties… But imagine, if this was groundbreaking: what could be said about the emergence of the LLMs?
How do canonical tags affect page authority?
By consolidating ranking signals into a single URL, canonical tags can improve page authority and performance in search results. At the time, as I said for ecommerce cases, blogs (the most extensive ones in particular) saw an increase in their keyword rankings, and with it they obtained more organic traffic after implementing canonical tags to handle multiple versions of their articles, erroneous paginations and other limitations of the time.
Common mistakes applying canonical URL tags
Here are some indications from Google, to avoid the 5 most common mistakes.
Conclusions to connect the dots
Summary of key points
- Canonical tags are essential for handling content duplication and improving SEO.
- Proper implementation of canonical tags can consolidate page authority and improve visibility.
- Canonical URLs play a crucial role in the Semantic Web and Semantic SEO.
- Using @id and @graph in JSON-LD can help search engines better understand relationships between entities.
Frequently asked questions
What is a canonical label?
A canonical tag is an HTML element that tells search engines the preferred version of a page when there are multiple URLs with similar content.
How do I add a canonical tag to my website?
You can add a canonical tag to your page’s HTML header using the following format:
<link rel="canonical" href="https://www.exampleshop.com/product-x" />
What is @id in Schema.org?
@id is an attribute in Schema.org that provides a unique identifier for an entity within the data graph, allowing that entity to be linked and referenced from other markup blocks.
Ricard Menor
Freelance SEO Consultant
I am Ricard Menor, freelance SEO consultant and founder of SOLID SEO Management Services.
I alternate my clients and projects with stable outsourcings as interim SEO Manager for several companies and online marketing agencies.
I write in several blogs on various topics (always with SEO objectives), but in this space I deal with specific aspects of SEO over time, for those who want to learn SEO.
Any piece of my work may apply to your goals, if you own a business and look for specialized support or if you already have some experience in this discipline of online marketing, maybe to recover lost threads in the history of SEO, delve into details or simply feed an outrank post prompt.
You might be interested in these other articles:
- A microsite can solve your communication/promotion problem.
- Organic snippets are still fully in force, you should know what they are and how they work.
- SEO web design, what it consists of and why it is recommended.
- Your company’s web positioning, that pending project.
- Power words, salt and pepper for your content.















© Ricard Menor SOLID SEO Management Services