Ve zkratce: Kanonický odkaz neboli canonical pomáhá vyhledávačům určit, kterou URL považujete za preferovanou reprezentativní verzi stejného nebo velmi podobného obsahu. V HTML se obvykle zapisuje jako element rel="canonical" v části <head> stránky.
<link rel="canonical" href="https://example.com/produkt/" />
Canonical není příkaz, který by Google musel bezpodmínečně respektovat. Je to canonicalizační signál. Provozovatel webu může deklarovat preferovanou URL, ale Google při indexaci vyhodnocuje i další signály a může jako canonical vybrat jinou adresu.
Co je kanonický odkaz?
Kanonický odkaz je způsob, jak vyhledávači sdělit, kterou URL preferujete jako hlavní reprezentativní verzi stránky v případě, že je stejný nebo velmi podobný obsah dostupný pod více adresami.
Nejčastěji se používá HTML element <link> s atributem rel="canonical". V běžné řeči se používají také názvy canonical tag, canonical link, rel canonical nebo jednoduše canonical.
Canonical se používá hlavně kvůli duplicitním nebo velmi podobným URL. Typickým příkladem může být produkt dostupný současně na adresách:
https://example.com/produkt/https://example.com/produkt/?utm_source=newsletterhttps://example.com/produkt/?sort=price
Pokud všechny zobrazují prakticky stejný produktový obsah, může web pomocí canonicalu signalizovat, že jako preferovanou variantu považuje například https://example.com/produkt/.
Canonical patří do oblasti technického SEO a úzce souvisí s crawlingem, indexací, strukturou URL a duplicitním obsahem.
Co znamená canonical URL?
Canonical URL je reprezentativní URL vybraná pro skupinu duplicitních nebo velmi podobných stránek. Je však důležité rozlišit, kdo tuto URL vybral.
Majitel webu může prostřednictvím rel="canonical", redirectu nebo dalších signálů Googlu sdělit svoji preferovanou canonical URL. Google následně při indexaci provádí vlastní canonicalizaci a může dojít ke stejnému i odlišnému závěru.
Proto není zcela přesné říkat, že „canonical URL je URL uvedená v canonical tagu“. URL uvedená provozovatelem je deklarovaná preferovaná canonical URL. Skutečnou canonical URL z pohledu Google představuje URL, kterou Google pro daný cluster obsahu nakonec zvolil.
Jak canonical funguje?
Google při indexaci porovnává nalezené stránky, rozpoznává duplicity nebo stránky s velmi podobným hlavním obsahem a seskupuje je. Z této skupiny následně vybere reprezentativní URL.
Představme si, že Google nalezne tyto adresy:
https://example.com/boty/123/https://example.com/boty/123/?utm_source=facebookhttps://example.com/boty/123/?ref=homepage
Pokud všechny URL vedou ke stejnému produktu, Google se může rozhodnout zacházet s nimi jako s jednou skupinou duplicitních URL. Z této skupiny vybere jednu reprezentativní canonical URL, kterou bude typicky používat při zpracování obsahu a ve výsledcích vyhledávání.
Web může Googlu výběr usnadnit například canonical tagem, konzistentními interními odkazy, sitemapou nebo přesměrováním. Canonicalizace ale probíhá v systémech vyhledávače; vložení rel="canonical" tedy samo o sobě nezaručuje konkrétní výsledek.
User-declared canonical vs. Google-selected canonical
User-declared canonical je URL, kterou jako preferovanou deklaruje web. Google-selected canonical je URL, kterou jako reprezentativní ve skutečnosti vybere Google. Obě hodnoty mohou být stejné, ale nemusí.
| Pojem | Co znamená | Kdo rozhoduje |
|---|---|---|
| User-declared canonical | Preferovaná canonical URL deklarovaná webem například pomocí rel="canonical". |
Provozovatel webu |
| Google-selected canonical | URL, kterou Google po vyhodnocení dostupných informací skutečně zvolil jako canonical. |
Například stránka může obsahovat:
<link rel="canonical" href="https://example.com/produkt/" />
Tím web deklaruje https://example.com/produkt/ jako preferovanou URL. Google ji může přijmout, ale pokud narazí na významně konfliktní signály nebo usoudí, že jiná URL lépe reprezentuje daný obsah, může vybrat jinou.
To je důvod, proč je formulace „canonical přikáže Googlu, kterou stránku má indexovat“ nesprávná.
Proč vůbec vznikají duplicitní URL?
Duplicitní URL nejsou automaticky známkou špatně vytvořeného webu. U dynamických webů, e-shopů a redakčních systémů mohou vznikat zcela běžně. Problém nastává hlavně tehdy, když jich vzniká velké množství, jejich účel není jasný nebo web vysílá vyhledávačům protichůdné signály.
URL parametry
Stejná stránka může být dostupná s různými parametry:
https://example.com/produkt/
https://example.com/produkt/?utm_source=google
https://example.com/produkt/?ref=newsletter
Tracking parametr obvykle nemění hlavní obsah stránky, přesto technicky vytváří jinou URL.
Filtrování a řazení
E-shop může generovat adresy jako:
https://example.com/notebooky/?barva=cerna
https://example.com/notebooky/?sort=price
https://example.com/notebooky/?barva=cerna&sort=price
U filtrování není správným řešením automaticky canonicalizovat všechno na základní kategorii. Některé filtry mohou mít samostatnou vyhledávací hodnotu a obsah, jiné představují pouze technické varianty. U rozsáhlé faceted navigation je potřeba řešit současně indexaci, crawling, interní prolinkování a samotnou architekturu URL.
HTTP a HTTPS
Bez správně nastaveného přesměrování může být obsah dostupný například jako:
http://example.com/stranka/
https://example.com/stranka/
Google obecně preferuje odpovídající HTTPS variantu, pokud HTTPS správně funguje a jiné signály tomu neodporují. U dlouhodobého přechodu z HTTP na HTTPS je ale standardním řešením především permanentní redirect, nikoliv pouhé spoléhání na canonical.
Více informací o zabezpečené variantě protokolu najdete také v hesle SSL certifikát.
www a non-www
Také adresy https://www.example.com/ a https://example.com/ jsou technicky odlišné. Pokud mají představovat jeden web, je vhodné zvolit konzistentní variantu a ostatní trvale přesměrovat.
Varianty produktů
Barva, velikost nebo jiná varianta produktu může mít vlastní URL. Pokud všechny adresy představují prakticky tentýž produkt a varianty nemají důvod být samostatnými výsledky vyhledávání, může dávat smysl canonical směrem na hlavní produkt.
Pokud má ale každá varianta vlastní důležitý obsah, dostupnost, vyhledávací záměr nebo jiný důvod pro samostatnou indexaci, plošná canonicalizace může být špatně.
Tiskové a jiné technické verze
CMS může vytvořit samostatnou URL pro tiskovou verzi, náhled, embed, export nebo jiný způsob zobrazení stejného obsahu.
Více cest ke stejnému produktu
Některé systémy mohou zpřístupnit stejný produkt například přes různé kategorie:
https://example.com/boty/model-x/
https://example.com/panske/boty/model-x/
https://example.com/vyprodej/model-x/
Stránkování
Stránkované archivy jsou zvláštní případ. Stránka 1, stránka 2 a stránka 3 zpravidla neobsahují stejnou sadu položek, a Google je proto doporučuje chápat jako samostatné URL.
Není vhodné automaticky nastavit canonical všech stránkovaných stránek na první stránku série. Google pro klasickou pagination doporučuje unikátní URL pro každou stránku a vlastní self-referencing canonical.
Technické duplicity CMS
WordPress nebo jiné CMS mohou podle konfigurace, pluginů a šablon zpřístupnit obsah prostřednictvím více technických cest. Proto má smysl web pravidelně procházet crawlerem a kontrolovat, zda nevznikají nežádoucí indexovatelné varianty URL.
Jak canonical vypadá v HTML?
Canonical pro HTML stránku se standardně zapisuje jako element <link rel="canonical"> uvnitř části <head>.
<head>
<title>Ukázkový produkt</title>
<link rel="canonical" href="https://example.com/produkt/" />
</head>
Přestože se běžně používá výraz „canonical tag“, technicky nejde o <meta> tag, ale o <link> element. Více o skutečných meta značkách najdete v článku Co je meta tag.
Google pro HTML canonical očekává element v platné části <head>. Canonical vložený pouze do těla stránky není správnou implementací.
Self-referencing canonical
Self-referencing canonical je canonical odkazující na stejnou URL, na které se nachází.
Na stránce https://example.com/clanek/ tedy může být:
<link rel="canonical" href="https://example.com/clanek/" />
Google self-referencing canonical doporučuje. Pomáhá jednoznačně deklarovat preferovanou podobu URL a omezuje nejasnosti v případech, kdy se ke stejnému obsahu začnou přidávat parametry nebo jiné URL varianty.
Self-canonical není absolutní podmínkou indexace. Stránka může být indexována i bez něj, protože Google dokáže canonical URL vybírat automaticky. Z hlediska konzistence technického SEO je však self-referencing canonical na indexovatelných stránkách běžnou a rozumnou praxí.
Canonical na jinou URL
Pokud je stejný nebo velmi podobný obsah dostupný pod více URL, duplicitní varianta může canonicalizovat na preferovanou adresu.
Například návštěvník otevře:
https://example.com/produkt/?utm_source=newsletter
Stránka ale obsahuje:
<link rel="canonical" href="https://example.com/produkt/" />
Obě URL mohou zůstat technicky dostupné. Canonical pouze vyjadřuje preferenci, že čistá URL bez tracking parametru má reprezentovat daný obsah ve vyhledávání.
To je zásadní rozdíl oproti přesměrování: návštěvník z adresy s parametrem není canonicalem automaticky poslán jinam.
Cross-domain canonical
Canonical může odkazovat také na URL na jiné doméně. Cross-domain canonical dává smysl především tehdy, když se skutečně duplicitní nebo velmi podobný obsah z legitimního důvodu nachází na více doménách.
Například kopie obsahu na webu B může uvádět jako preferovanou verzi originál na webu A:
<link rel="canonical" href="https://example.com/puvodni-clanek/" />
Ani cross-domain canonical není pro Google absolutním příkazem. Google musí stránky vyhodnotit jako vhodné kandidáty pro společnou canonicalizaci.
Navíc není vhodné chápat cross-domain canonical jako univerzální řešení syndikovaného obsahu. Aktuální dokumentace Google upozorňuje, že u syndikace se stránky často dostatečně liší a canonical proto nemusí být nejlepší metodou, pokud je cílem zabránit indexaci kopie u partnera.
Jak Google vybírá canonical URL?
Google nepoužívá pouze canonical tag. Při canonicalizaci kombinuje více signálů a sám vybírá reprezentativní URL.
Aktuální dokumentace Google výslovně označuje následující metody jako canonicalizační signály:
- permanentní přesměrování – silný signál směrem k cílové URL,
rel="canonical"– silný signál pro deklarovanou URL,- zařazení URL v sitemapě – slabší signál preferované canonical URL.
Google zároveň doporučuje, aby jednotlivé signály byly konzistentní. Canonical tag by například neměl ukazovat na URL A, zatímco sitemap obsahuje jako preferovanou variantu URL B a interní navigace systematicky odkazuje na URL C.
Mezi další okolnosti, které Google při canonicalizaci zohledňuje, patří mimo jiné HTTPS vs. HTTP a u mezinárodních webů vazby v hreflang skupinách.
Také interní odkazy mají být vedeny na URL, kterou web považuje za canonical. Google tuto konzistenci přímo doporučuje.
Canonical vs. 301 redirect
301 redirect přesune uživatele i robota na jinou URL. Canonical obě URL ponechává dostupné a pouze signalizuje, kterou považujete za preferovanou reprezentativní verzi.
| Vlastnost | Canonical | 301 redirect |
|---|---|---|
| Co se stane uživateli? | Zůstane na původní URL. | Prohlížeč ho přesměruje na cílovou URL. |
| Zůstává původní URL dostupná? | Ano. | Ne jako samostatný obsah; odpoví redirectem. |
| Účel | Konsolidace duplicitních nebo velmi podobných URL, které potřebují zůstat dostupné. | Trvalé přesunutí, zrušení nebo sjednocení staré URL. |
| Canonicalizační signál pro Google | Ano, silný signál. | Ano, permanentní redirect je silný signál. |
| Typický příklad | Tracking parametr nebo technická varianta produktu. | Starý článek se trvale přesunul na novou adresu. |
Pokud URL již nemá být samostatně používána a existuje jasná náhrada, je obvykle vhodnější permanentní přesměrování. Pro Google mají permanentní HTTP redirecty 301 a 308 canonicalizační význam.
Canonical naopak dává smysl tam, kde potřebujete zachovat přístup k více URL, například kvůli tracking parametrům nebo jiným funkčním variantám.
Canonical vs. noindex
Canonical a noindex řeší dva odlišné problémy. Canonical pomáhá vybrat reprezentativní URL ze skupiny podobného obsahu, zatímco noindex říká vyhledávači, aby danou stránku nezařazoval do výsledků vyhledávání.
Příklad noindexu:
<meta name="robots" content="noindex" />
Pokud máte dvě téměř stejné stránky a chcete konsolidovat jejich signály směrem k jedné reprezentativní URL, je pro tento záměr určen canonical.
Pokud naopak máte stránku, která nemá být v Googlu vůbec – například určitou interní stránku s nízkou hodnotou pro vyhledávání – může být vhodným nástrojem noindex.
Noindex není „silnější canonical“. Google přímo nedoporučuje používat noindex jako způsob, jak v rámci webu vynutit výběr jiné canonical URL, protože noindex stránku z vyhledávání vyřazuje.
Canonical vs. robots.txt
Robots.txt řídí především crawling, noindex řídí možnost indexace a canonicalizace vybírá reprezentativní URL. Tyto mechanismy nelze zaměňovat.
| Mechanismus | Primární účel |
|---|---|
robots.txt |
Řízení toho, co může crawler požadovat a procházet. |
noindex |
Zabránění zařazení konkrétního obsahu do výsledků vyhledávání. |
rel="canonical" |
Signalizace preferované reprezentativní URL mezi duplicitními či velmi podobnými stránkami. |
Google výslovně nedoporučuje používat robots.txt jako canonicalizační nástroj.
Důvod je důležitý: pokud pomocí robots.txt zablokujete crawling konkrétní URL, Google nemusí mít možnost načíst její HTML, a tedy ani canonical nebo noindex uvnitř stránky. Samotná blokace crawlingu navíc nezaručuje, že se URL nikdy neobjeví v indexu – Google může za určitých okolností znát samotnou adresu například z odkazů.
Pokud očekáváte, že Google přečte rel="canonical" na duplicitní stránce, musí se k tomuto signálu nejprve dostat.
Canonical a sitemap
Sitemap by měla být konzistentní s tím, které URL web považuje za canonical. Do XML sitemap je obecně vhodné zařazovat preferované indexovatelné URL, nikoli jejich duplicitní technické varianty.
Pokud tedy máte:
https://example.com/produkt/
https://example.com/produkt/?utm_source=facebook
a za canonical považujete první adresu, do sitemapy by měla patřit právě ona.
Google považuje zařazení URL v sitemapě za canonicalizační signál, ale slabší než redirect nebo rel="canonical". Sitemap proto sama o sobě není náhradou správně vyřešené canonicalizace.
Canonical a interní odkazy
Interní odkazy by měly konzistentně směřovat na preferovanou canonical URL.
Pokud například canonical produktu zní:
https://example.com/produkt/
ale menu, kategorie a články na webu stále odkazují především na:
https://example.com/produkt/?variant=default
vysílá web zbytečně nejednotné signály.
Správná informační architektura proto neřeší canonical izolovaně. Zkontrolujte také navigaci, breadcrumbs, související články, XML sitemapu a další zdroje interních odkazů.
Jak správně nastavit canonical ve WordPressu?
Na běžném WordPress webu většinou není potřeba canonical ručně vkládat do šablony. WordPress a běžné SEO pluginy umějí canonical generovat automaticky.
Samotné jádro WordPressu obsahuje funkci pro výstup rel="canonical" u singularních dotazů. Rozšířenější SEO řešení pak canonicalizaci spravují i pro další typy stránek a umožňují výstup upravovat.
Yoast SEO
Yoast SEO canonical URL standardně generuje automaticky. Pokud má konkrétní stránka záměrně canonicalizovat jinam, plugin umožňuje výchozí hodnotu ručně přepsat v pokročilých nastaveních daného obsahu.
Ruční změnu provádějte pouze tehdy, když přesně víte, proč má stránka canonicalizovat na jinou URL. U běžné unikátní stránky bývá výchozí self-canonical správně.
Rank Math
Rank Math podobně používá u běžných příspěvků a stránek jako výchozí canonical jejich vlastní URL a umožňuje zadat vlastní canonical v pokročilém SEO nastavení.
Pozor na několik zdrojů canonicalu současně
Častým WordPress problémem je kombinace šablony, vlastního kódu a více SEO pluginů. Pokud každý z nich vygeneruje svůj canonical, může stránka skončit s několika hodnotami.
Proto po instalaci nebo výměně SEO pluginu vždy zkontrolujte výsledný HTML kód stránky, nikoliv pouze hodnotu zobrazenou v administraci.
Jak zjistit canonical konkrétní stránky?
Nejjednodušší je otevřít zdrojový HTML kód stránky a vyhledat rel="canonical". Pro kontrolu toho, co skutečně vybral Google, použijte Google Search Console.
1. Zdrojový kód stránky
V prohlížeči otevřete zdroj stránky a vyhledejte:
rel="canonical"
Správně můžete najít například:
<link rel="canonical" href="https://example.com/clanek/" />
Zkontrolujte zejména:
- zda canonical vůbec existuje,
- zda je pouze jeden jednoznačný výstup,
- zda vede na očekávanou URL,
- zda používá správný protokol a hostname,
- zda nevede omylem na staging nebo jinou doménu.
2. Vývojářské nástroje prohlížeče
Canonical lze zkontrolovat také v DevTools. U JavaScriptových webů je ale užitečné rozlišovat původní HTML odpověď od DOMu upraveného JavaScriptem. Google doporučuje canonical deklarovat co nejjednoznačněji už v HTML zdroji a neměnit jeho hodnotu JavaScriptem na jinou URL.
3. SEO crawlery a auditní nástroje
U většího webu je praktičtější použít crawler, který najednou odhalí například chybějící canonicaly, canonical na redirect, několik canonical hodnot nebo konflikty mezi indexovatelnými a nekanonickými URL.
Kontrola canonical v Google Search Console
Google Search Console ukáže jak canonical deklarovaný webem, tak canonical skutečně vybraný Googlem. Použijte nástroj Kontrola URL a sekci týkající se indexace stránky.
U indexované URL můžete narazit zejména na dvě hodnoty:
- User-declared canonical – canonical, který web Googlu deklaroval,
- Google-selected canonical – canonical, který skutečně zvolil Google.
Pokud jsou stejné, Google akceptoval stejnou reprezentativní URL, jakou preferuje web.
Pokud jsou odlišné, není správné automaticky předpokládat, že je Google „rozbitý“ nebo že web musí okamžitě něco měnit. Nejdříve je potřeba porovnat obsah obou stránek a další technické signály.
Důležitý detail: živý test URL nedokáže předpovědět, kterou canonical URL Google při indexaci skutečně zvolí. Google-selected canonical se určuje v procesu indexace a hodnotu je potřeba kontrolovat u indexovaných dat.
Více o samotném nástroji najdete v hesle Google Search Console.
Co znamená, když Google vybere jiný canonical?
Odlišný Google-selected canonical znamená, že Google po vyhodnocení obsahu a dostupných signálů považuje jinou URL za lepší reprezentativní variantu. Nemusí to být chyba.
Pokud ale chcete zjistit příčinu, zkontrolujte zejména následující.
Stránky nejsou dostatečně podobné
Canonical má sdružovat stejné nebo velmi podobné stránky. Pokud URL A deklaruje URL B jako canonical, ale jejich hlavní obsah je zásadně odlišný, Google nemá důvod tento vztah přijmout.
Konfliktní canonical signály
Například:
- HTML canonical ukazuje na URL A,
- sitemap obsahuje URL B,
- 301 redirect míří na URL C,
- většina interních odkazů používá URL D.
Takový web nedává Googlu jednoznačný obraz o preferované variantě.
Canonical cíluje na problematickou URL
Preferovaná canonical URL by měla být reálně dostupná a indexovatelná. Canonical směrující na 404, serverovou chybu, blokovanou stránku nebo URL s noindex vytváří problematickou konfiguraci.
Canonical míří přes redirect
Pokud canonical vede na URL, která se následně ještě přesměruje, vytváříte zbytečný mezikrok. Lepší je odkazovat přímo na finální preferovanou URL.
HTTP, HTTPS nebo hostname nejsou konzistentní
Canonical může používat HTTP, zatímco sitemap a interní odkazy HTTPS. Totéž platí pro www a non-www variantu.
Změna ještě nebyla znovu zpracována
Po opravě canonicalizace musí Google URL znovu projít a přehodnotit. Změna proto nemusí být v Search Console viditelná okamžitě.
Google jednoduše považuje jinou variantu za vhodnější
Google při canonicalizaci hodnotí celý cluster. Pokud jeho volba dává z hlediska uživatele a architektury webu smysl, nemusí být nutné nic opravovat.
Nejčastější chyby canonical tagů
Canonical na neexistující URL
Canonical míří na adresu, která vrací 404 nebo jinou chybu. Taková URL nemůže plnit roli zdravé indexovatelné reprezentativní stránky.
Canonical přes redirect
Například A canonicalizuje na B a B přesměrovává na C. Web tím vytváří zbytečný canonicalizační řetězec. Canonical by měl směřovat přímo na C, pokud právě C představuje finální preferovanou URL.
Několik různých canonical hodnot
Jedna šablona přidá canonical A a SEO plugin canonical B. Výsledkem je nejednoznačnost. Udržujte na stránce jeden jasný canonicalizační záměr.
Konflikt HTML a HTTP hlavičky
Google podporuje canonical jak v HTML, tak v HTTP Link hlavičce, ale doporučuje zvolit jednu metodu. Použití obou zvyšuje riziko, že jedna vrstva bude ukazovat jinam než druhá.
Všechny stránky canonicalizované na homepage
Canonical není způsob, jak Googlu říct „indexuj jen hlavní stránku“. Produkt, článek a kategorie s rozdílným obsahem nejsou duplicity homepage. Plošný canonical na úvodní stránku je závažná chyba.
Canonical na nerelevantní obsah
Například stránka o notebooku canonicalizuje na kategorii televizorů jen proto, že administrátor nechce původní URL indexovat. To je nesprávné použití. Pokud stránka nemá být indexována, řešení může spočívat například v noindexu, redirectu nebo odstranění – podle situace.
Špatně zpracované URL parametry
Web může například zachovávat session ID nebo generovat canonical s náhodnými parametry, takže se canonical mění při každém načtení. Preferovaná adresa má být stabilní.
Nekonzistentní HTTP a HTTPS
HTTPS stránka odkazuje canonicalem na starou HTTP variantu. Google HTTPS obecně preferuje, ale konfliktní signál může canonicalizaci komplikovat.
Nekonzistentní www a non-www
Část webu canonicalizuje na www.example.com, jiná část na example.com. Zvolte jednotný hostname a sladěte redirecty, interní odkazy, sitemapu i canonical.
Staging a production
Po migraci může zůstat v konfiguraci nesprávná doména a produkční web začne generovat canonicaly například na staging.example.com. Opačným problémem je veřejně crawlovatelný staging web.
Testovací prostředí je vhodné zabezpečit tak, aby nebylo běžně dostupné vyhledávačům, místo spoléhání pouze na canonical.
Canonical generovaný JavaScriptem přepisuje původní hodnotu
Pokud HTML obsahuje canonical A a JavaScript jej po načtení změní na B, vzniká zbytečná nejednoznačnost. Google doporučuje, aby JavaScript canonical neměnil na jinou hodnotu než původní HTML.
Pagination canonicalizovaná na první stránku
Stránky ?page=2, ?page=3 a další obvykle obsahují jinou část seznamu. Google doporučuje vlastní canonical pro jednotlivé stránky pagination, nikoliv automatické canonicalizování celé série na stranu 1.
Může canonical směřovat na stránku s jiným obsahem?
Canonical by měl směřovat na skutečně duplicitní nebo velmi podobnou reprezentativní stránku. Není určen ke spojování libovolných URL s různým obsahem.
Pokud například článek „Jak vybrat notebook“ canonicalizujete na článek „Jak vybrat televizi“, nejde o logickou canonicalizaci. Google může takový signál ignorovat a vybrat canonical podle vlastního vyhodnocení.
Pokud potřebujete jednu stránku skutečně nahradit jinou, zvažte spíše permanentní redirect. Pokud má stránka zůstat dostupná, ale nemá být indexována, může být podle situace vhodný noindex.
Canonical a PDF nebo jiné ne-HTML dokumenty
U dokumentů, které nemají HTML <head>, lze canonical Googlu deklarovat pomocí HTTP Link hlavičky.
Například odpověď serveru při načtení PDF může obsahovat:
HTTP/1.1 200 OK
Content-Type: application/pdf
Link: <https://example.com/manual/>; rel="canonical"
Tím server signalizuje, že HTML stránka https://example.com/manual/ má představovat canonical verzi obsahu dostupného také jako PDF.
HTTP canonical lze technicky použít i pro další podporované dokumenty. Google uvádí, že tato metoda canonicalizace prostřednictvím HTTP hlavičky je podporována pro výsledky webového vyhledávání.
Absolutní vs. relativní canonical URL
Google relativní canonical URL umí zpracovat, ale doporučuje používat absolutní URL včetně protokolu a hostname.
Doporučený zápis:
<link rel="canonical" href="https://www.example.com/produkty/notebook/" />
Méně vhodný zápis:
<link rel="canonical" href="/produkty/notebook/" />
Absolutní URL snižuje riziko chyb při práci s více doménami, subdoménami nebo testovacím prostředím. Z canonicalu je navíc okamžitě jasné, zda používá správné HTTPS a správnou variantu hostname.
Může být na stránce více canonical tagů?
Na stránce byste měli udržovat jeden jednoznačný canonicalizační záměr. Několik konfliktních canonical hodnot vytváří nejednoznačnost a je potřeba je opravit.
Google také upozorňuje, že kombinace canonicalu v HTML a HTTP hlavičce je sice podporována, ale je náchylnější k chybám. Pokud například HTML ukazuje na URL A a HTTP hlavička na URL B, dáváte vyhledávači dva rozdílné signály.
Stejně nevhodné je deklarovat jednu URL přes rel="canonical" a jinou jako preferovanou přes sitemapu nebo redirect.
Co dělat při změně URL stránky?
Pokud se obsah trvale přesouvá ze staré URL na novou a stará URL už nemá sloužit návštěvníkům, použijte permanentní redirect, typicky 301 nebo 308. Canonical není náhradou skutečného přesunutí.
Příklad:
https://example.com/stary-clanek/
→ 301 →
https://example.com/novy-clanek/
Na nové URL má být následně self-referencing canonical:
<link rel="canonical" href="https://example.com/novy-clanek/" />
Aktualizujte také interní odkazy a sitemapu, aby všechny důležité signály používaly novou adresu.
Praktické příklady canonicalizace
A) Tracking parametr
Situace:
https://example.com/produkt/
https://example.com/produkt/?utm_source=newsletter
Pravděpodobně vhodné řešení: canonical varianty s tracking parametrem na čistou URL.
Proč: UTM parametr mění analytické označení návštěvy, nikoliv samotný hlavní obsah stránky. Obě URL tedy pravděpodobně představují stejný dokument.
B) Produkt dostupný pod více URL
Situace:
https://example.com/produkt/model-x/
https://example.com/notebooky/model-x/
Pravděpodobně vhodné řešení: pokud obě URL skutečně zobrazují totožný produkt a obě musí zůstat dostupné, vybrat jednu jako preferovanou a druhou na ni canonicalizovat.
Alternativa: pokud technicky nepotřebujete obě adresy, je často čistší jednu přesměrovat na druhou.
C) HTTP → HTTPS
Situace:
http://example.com/sluzby/
https://example.com/sluzby/
Pravděpodobně vhodné řešení: permanentní redirect z HTTP na HTTPS, HTTPS URL v interních odkazech a sitemapě a self-canonical na HTTPS.
Proč: Nejde pouze o dvě funkční varianty, které chcete ponechat. HTTP verzi obvykle chcete trvale opustit.
D) Starý článek přesunutý na novou URL
Situace:
https://example.com/blog/stary-nazev/
https://example.com/blog/novy-nazev/
Pravděpodobně vhodné řešení: 301 nebo 308 ze staré URL na novou.
Proč: Pokud se článek skutečně přestěhoval, uživatelé ani vyhledávače nemají důvod zůstávat na staré adrese.
E) Filtrace e-shopu
Situace:
https://example.com/boty/
https://example.com/boty/?barva=cerna
https://example.com/boty/?barva=cerna&velikost=43
Řešení závisí na záměru.
Pokud jsou filtry pouze technickou pomůckou pro uživatele, nevytvářejí unikátní hodnotný obsah a nechcete je samostatně indexovat, může být canonical na základní kategorii jedním z použitelných signálů. U velkého počtu kombinací je ale potřeba řešit také crawling a způsob, jakým se URL generují a interně odkazují.
Pokud naopak například stránka „černé pánské boty“ představuje důležitou samostatnou landing page s unikátním obsahem a vlastním search intentem, plošný canonical na obecné „boty“ může její indexaci zbytečně potlačovat.
Rychlý rozhodovací přehled
| Situace | Canonical | 301 / permanentní redirect | noindex | Poznámka |
|---|---|---|---|---|
| Tracking parametr se stejným obsahem | Ano, často | Někdy | Obvykle ne | Záleží, zda parametr potřebujete zachovat. |
| Stará URL byla trvale nahrazena novou | Ne jako hlavní řešení | Ano | Ne | Aktualizujte také interní odkazy a sitemapu. |
| Dvě URL musí zůstat dostupné a mají stejný obsah | Ano | Ne, pokud obě potřebujete | Obvykle ne | Vyberte logickou reprezentativní URL. |
| Stránka nemá být ve vyhledávání vůbec | Nejde o primární řešení | Jen pokud existuje skutečná náhrada | Ano, často | Noindex řeší indexaci, ne canonicalizaci. |
| HTTP varianta webu | Doplňkově | Ano | Ne | Přesměrujte na HTTPS. |
| Duplicitní produkt pod více cestami | Ano, pokud URL musí zůstat | Ano, pokud druhou URL nepotřebujete | Obvykle ne | Rozhoduje architektura webu. |
| Pagination – stránka 2, 3, 4 | Self-canonical | Ne | Obvykle ne | Necanonalizujte automaticky vše na první stránku. |
| Filtry e-shopu | Někdy | Někdy | Někdy | Nejdříve rozhodněte, které filtrové URL mají mít vlastní hodnotu ve vyhledávání. |
Jak poznat dobře vyřešenou canonicalizaci?
Canonicalizace není pouze kontrola jednoho HTML tagu. Dobře vyřešený web má jednotlivé technické signály sladěné.
- Každá důležitá indexovatelná stránka má logickou preferovanou URL.
- Indexovatelné stránky používají smysluplný self-referencing canonical.
- Duplicitní URL canonicalizují pouze na skutečně stejné nebo velmi podobné stránky.
- Trvale zrušené URL používají redirect místo pouhého canonicalu.
- Canonical URL používá správný protokol, obvykle HTTPS.
- Canonical používá správný hostname, tedy zvolenou www nebo non-www variantu.
- Canonical nevede na 404, 5xx nebo jinou nefunkční stránku.
- Canonical nevede zbytečně přes redirect.
- Canonical URL není současně označena
noindex, pokud má být indexovanou reprezentativní stránkou. - XML sitemap obsahuje preferované canonical URL.
- Interní odkazy míří převážně přímo na canonical URL.
- Na stránce nejsou konfliktní canonical hodnoty.
- JavaScript nepřepisuje canonical na jinou adresu.
- Testovací nebo staging doména se neobjevuje v produkčních canonicalech.
- Google Search Console u klíčových URL neukazuje neočekávanou Google-selected canonical.
U většího webu má smysl tyto podmínky kontrolovat automatizovaným crawlerem. Ruční kontrola několika URL nemusí odhalit problém, který se týká celé šablony, parametrů nebo jen určitého typu obsahu.
Canonical a indexace: důležitý princip
Canonical je pouze jedna část širšího procesu, kterým vyhledávač obsah objevuje, prochází, interpretuje a zařazuje do svého indexu.
Stránka může mít bezchybný canonical a přesto nemusí být indexována například kvůli technické nedostupnosti, noindexu, chybě serveru nebo rozhodnutí vyhledávače stránku do indexu nezařadit.
Stejně tak samotný canonical nevyřeší nekontrolovatelnou tvorbu milionů filtrových URL, chybné redirecty ani špatnou informační architekturu. Proto je potřeba canonical posuzovat v kontextu celého SEO a technického stavu webu.
Často kladené otázky
Je canonical povinný?
Ne. Google dokáže canonical URL vybrat i bez explicitní deklarace. Správně nastavený canonical ale pomáhá jednoznačně vyjádřit preferovanou variantu a Google self-referencing canonical doporučuje.
Musí mít každá stránka self-canonical?
Není to absolutní technická podmínka indexace, ale na běžných indexovatelných stránkách je self-referencing canonical doporučenou praxí. Pomáhá zejména v situacích, kdy stejný obsah začne být dostupný také přes URL parametry nebo jiné varianty.
Respektuje Google vždy canonical?
Ne. rel="canonical" je silný canonicalizační signál, nikoliv závazný příkaz. Google může na základě ostatních signálů a podobnosti obsahu vybrat jinou canonical URL.
Může canonical směřovat na jinou doménu?
Ano. Cross-domain canonical je podporovaný. Stránky ale musí dávat smysl jako duplicity nebo velmi podobné reprezentace stejného obsahu a Google nemusí deklarovanou URL automaticky přijmout.
Je canonical totéž co přesměrování?
Ne. Redirect uživatele i robota pošle na jinou URL. Canonical ponechává původní adresu dostupnou a pouze deklaruje preferovanou reprezentativní URL.
Pomůže canonical odstranit stránku z Googlu?
Canonical není nástroj určený k prostému odstraňování libovolných stránek z výsledků. Pokud stránka nemá být indexována, může být podle situace vhodnější noindex. Pokud byla trvale nahrazena jinou URL, bývá správnější redirect.
Může canonical směřovat na URL s redirectem?
Technicky taková konfigurace může existovat, ale není vhodná. Pokud znáte finální preferovanou URL, canonical by měl směřovat přímo na ni a nevytvářet další redirect hop.
Jak zjistím, jakou URL považuje Google za canonical?
V Google Search Console otevřete Kontrolu URL a u indexovaných dat vyhledejte položku Google-selected canonical. Vedle ní lze porovnat také User-declared canonical.
Je duplicate content kvůli parametrům automaticky penalizace?
Ne. Výskyt duplicitních URL sám o sobě neznamená automatickou penalizaci. Duplicitní obsah je na moderních webech běžný. Smyslem canonicalizace je především pomoci vyhledávači pochopit, která URL má daný obsah reprezentovat, konsolidovat signály a omezit zbytečné procházení duplicit.
Mám canonicalizovat všechny filtry e-shopu na základní kategorii?
Ne automaticky. Některé filtrové stránky mohou být bezcenné technické kombinace, zatímco jiné mohou představovat užitečné landing pages odpovídající reálnému vyhledávacímu záměru. Rozhodnutí vyžaduje posouzení obsahu, indexační strategie, crawlingu a informační architektury webu.
Oficiální dokumentace a další čtení
Protože se chování vyhledávačů a jejich dokumentace průběžně vyvíjejí, je u technicky citlivých implementací vhodné kontrolovat také aktuální primární zdroje:
- Google Search Central: co je URL canonicalization
- Google Search Central: jak deklarovat canonical URL
- Google Search Central: řešení problémů s canonicalizací
- Google Search Central: noindex a blokování indexace
Řešíte problémy s indexací, canonical URL nebo technickým SEO na vlastním webu? Technickou kontrolu a opravu webu lze svěřit MH Webdesign – kontrola indexovatelnosti webu.
