Canonical tag:
kompletní průvodce
Jeden špatně nastavený canonical může rozdělit autoritu stránky mezi desítky URL a způsobit, že ve výsledcích vyhledávání uvidíte jinou adresu, než chcete. Tento průvodce vám ukáže přesně, kdy a jak canonical použít, a jakých 15 chyb se vyvarovat.
<link rel="canonical">) je HTML značka v sekci <head>, která vyhledávačům říká, která verze stránky je hlavní a měla by být indexována. Používá se primárně k řešení duplicitního obsahu a konsolidaci SEO autority na jednu URL.
Canonical tag je jeden z nejčastěji špatně nastavených prvků technického SEO a zároveň jeden z nejvýkonnějších. Správně použitý říká Googlu přesně to, co potřebuje vědět: tato stránka je ta hlavní, tuto indexuj, na ni soustřeď autoritu. Špatně nastavený canonical způsobuje opak: rozptyluje crawl budget, tříští link equity a může způsobit, že se ve výsledcích zobrazí jiná URL, než chcete.
Co je canonical tag (kanonický odkaz)?
Canonical tag je HTML značka, která sděluje Googlu a dalším vyhledávačům, kterou verzi stránky považujete za hlavní.
V kódu stránky, konkrétně v sekci <head>, vypadá canonical takto:
Základní syntaxe
<link rel="canonical" href="https://priklad.cz/hlavni-stranka/" />
Atribut rel="canonical" říká vyhledávači: toto je preferovaná URL. Atribut href obsahuje adresu té hlavní verze.
Canonical tag patří vždy do sekce <head>, nikoliv do <body>. Tato chyba je překvapivě častá a vede k tomu, že Google canonical ignoruje.
Proč canonical vůbec existuje?
Na webu přirozeně vznikají situace, kdy existuje více URL adres se stejným nebo velmi podobným obsahem. Google musí rozhodnout, kterou z nich zobrazí ve výsledcích vyhledávání. Bez canonical tagu si toto rozhodnutí dělá sám a nemusí zvolit tu, kterou chcete.
Jak vypadá canonical v kontextu celé stránky?
<!DOCTYPE html>
<html lang="cs">
<head>
<meta charset="UTF-8">
<title>Název stránky</title>
<link rel="canonical" href="https://www.vasestranka.cz/produkt/cervena-mikina/" />
</head>
<body>
<!-- obsah stránky -->
</body>
</html>
Proč canonical tag potřebuješ?
Canonical tag řeší tři problémy, které přímo ovlivňují výkon webu ve vyhledávání: duplicitní obsah, ztrátu link equity a plýtvání crawl budgetem.
Nejčastější zdroje technického duplicitního obsahu
Duplicitní obsah vzniká ve většině případů technicky, ne záměrným kopírováním. Zde jsou nejčastější příčiny:
| Typ duplicity | Příklad URL | Jak vzniká |
|---|---|---|
| HTTP vs. HTTPS | http:// vs. https:// |
Chybějící redirect nebo nekonzistentní interní linky |
| www vs. non-www | www.priklad.cz/ vs. priklad.cz/ |
Neukotvená preferovaná verze domény |
| Filtry a řazení e-shopu | /boty/?barva=cerna&razeni=cena |
Filtry e-shopu generující nové URL pro každou kombinaci |
| UTM a tracking parametry | /clanek/?utm_source=newsletter |
Marketingové kampaně s UTM parametry |
| Session ID | /kosik/?sessid=abc123 |
Starší e-commerce systémy |
| Mobilní vs. desktopová verze | m.priklad.cz/ vs. priklad.cz/ |
Samostatná mobilní verze webu |
| Tiskové verze | /stranka/?print=1 |
Funkce tisku v CMS |
| AMP stránky | amp.priklad.cz/clanek/ |
AMP implementace |
| Paginace | /blog/strana/2/ |
Stránkovaný obsah |
| Trailing slash | /stranka vs. /stranka/ |
Nekonzistentní URL struktura |
Jak canonical tag funguje?
Canonical tag je pro Google doporučení, nikoliv závazný příkaz. Toto je jedna z nejdůležitějších věcí, které o canonicalu musíte vědět.
Canonical jako doporučení, ne příkaz
Google canonical tag zpravidla respektuje. Existují však situace, kdy ho ignoruje a zvolí jinou URL:
- Kanonická URL je blokovaná v
robots.txt - Kanonická URL vrací chybový kód (404, 500)
- Interní odkazování webu výrazně upřednostňuje jinou URL
- Canonical ukazuje na stránku s velmi odlišným obsahem
- Existuje konflikt mezi canonical tagem v HTML a canonical v HTTP hlavičce
Jak Google vybírá kanonickou URL
Když Google narazí na více URL se stejným nebo podobným obsahem, prochází řadou signálů seřazených od nejsilnějšího:
<head> — explicitní HTML značkaJak poznat, že Google ignoruje váš canonical
Pokud máte podezření, že Google nerespektuje nastavený canonical, ověřte to takto:
Pokud se tyto dvě URL liší, Google váš canonical ignoruje. Nejčastější příčiny a jejich řešení jsou popsány v sekci o 15 nejčastějších chybách níže.
Kdy canonical použít — 12 konkrétních situací
Canonical tag je správné řešení v těchto situacích. U každé jsou uvedena doporučená opatření.
| # | Situace | Příklad URL | Doporučené řešení |
|---|---|---|---|
| 1 | HTTP vs. HTTPS | http://priklad.cz/stranka/ |
Canonical na HTTPS verzi + 301 redirect |
| 2 | www vs. non-www | www.priklad.cz/ vs. priklad.cz/ |
Canonical na preferovanou verzi + 301 redirect |
| 3 | Filtry a řazení e-shopu | /boty/?barva=cerna&razeni=cena |
Canonical na hlavní kategorii bez parametrů |
| 4 | UTM a tracking parametry | /clanek/?utm_source=fb |
Canonical na čistou URL bez UTM |
| 5 | Session ID | /kosik/?sess=abc123 |
Canonical na URL bez session ID |
| 6 | Mobilní verze webu | m.priklad.cz/stranka/ |
Canonical na desktopovou verzi |
| 7 | Tiskové verze | /stranka/?print=1 |
Canonical na hlavní verzi stránky |
| 8 | AMP stránky | amp.priklad.cz/clanek/ |
Canonical na non-AMP verzi |
| 9 | Paginace | /blog/strana/3/ |
Self-referencing canonical pro každou stránkovanou URL (ne canonical na první stránku) |
| 10 | Produktové varianty | /mikina-cervena/ vs. /mikina-modra/ |
Canonical na hlavní produkt (nebo vlastní pro každou variantu, pokud se výrazně liší) |
| 11 | Syndikovaný obsah | Článek na partnerském webu | Canonical na původní zdroj |
| 12 | Stránky za přihlášením | Stejný obsah na různých URL pro různé role | Canonical na veřejně dostupnou verzi |
rel="next" a rel="prev". Doporučeným řešením je mít pro každou stránkovanou URL vlastní canonical ukazující na sebe samu (self-referencing canonical), nikoliv canonical na první stránku. Canonical na první stránku by způsobil, že Google ostatní stránky neindexuje.
Canonical vs. 301 redirect — kdy co použít?
Základní pravidlo: pokud chcete jednu URL trvale nahradit jinou a nepotřebujete zachovat obě, použijte 301 redirect. Pokud potřebujete zachovat obě URL funkční, použijte canonical.
| Kritérium | Canonical tag | 301 redirect |
|---|---|---|
| Typ signálu | Doporučení (hint) | Příkaz |
| Přenos link equity | Přibližně 90–99 % (Google potvrdil) | Téměř 100 % |
| Dostupnost původní URL | Obě URL zůstávají dostupné | Původní URL je přesměrována |
| Kdy použít | Duplicitní obsah, který musí zůstat přístupný (filtry, varianty, jazykové verze) | Trvalé změny URL, migrace webu, přechod na HTTPS |
| Respektování Googlem | Zpravidla ano, ale ne vždy | Vždy |
| Dopad na uživatele | Žádný — uživatel zůstává na původní URL | Uživatel je přesměrován na novou URL |
Canonical vs. noindex
Nikdy nekombinujte canonical a noindex na stejné stránce. Google to považuje za konflikt signálů. Canonical říká „indexuj kanonickou verzi“, noindex říká „tuto neindexuj“ — výsledek je nepředvídatelný. Noindex používejte pro stránky, které chcete zcela vyloučit z indexu (interní vyhledávání, děkovné stránky).
Canonical vs. disavow
Disavow soubor slouží k odmítnutí toxických zpětných odkazů — jde o zcela jiný nástroj než canonical. Canonical nenahrazuje disavow a nelze ho použít pro správu linkového profilu. Více o disavow v dokumentaci Google Search Console.
Jak správně implementovat canonical tag
Před nasazením canonical tagu ověřte všechna základní pravidla. Jedna přehlédnutá chyba může způsobit, že Google canonical ignoruje.
Základní checklist implementace
- Absolutní URL s HTTPS — vždy uvádějte plnou adresu včetně protokolu. Špatně:
/stranka/. Správně:https://priklad.cz/stranka/ - Pouze jeden canonical na stránce — více canonical tagů způsobí, že Google všechny ignoruje
- Canonical patří do
<head>— nikdy do<body> - Self-referencing canonical — každá stránka by měla mít canonical ukazující na sebe samu, pokud není duplicitní
- Kanonické URL v XML sitemapě — sitemap by měla obsahovat pouze kanonické URL
- Konzistence s hreflang — canonical musí odpovídat jazykové verzi stránky
- Kanonická URL vrací HTTP 200 — canonical na stránku s chybou 404 nebo 301 je ignorován
Self-referencing canonical — proč ho mít všude?
Self-referencing canonical je canonical tag, který stránka odkazuje sama na sebe. Na stránce https://priklad.cz/clanek/ bude:
<link rel="canonical" href="https://priklad.cz/clanek/" />
Proč to dělat i když stránka nemá duplicitu?
- Zabraňuje, aby Google sám vybral jinou kanonickou verzi (s trailing slashem nebo bez)
- Chrání stránku před externími duplikacemi — někdo zkopíruje obsah, Google neví, která verze je originál
- Je to obecně doporučená best practice podle Google Search Central
Canonical a hreflang — jak je správně kombinovat
Pokud provozujete vícejazyčný web, platí jedno zásadní pravidlo: canonical musí vždy ukazovat na stejnou jazykovou verzi stránky.
Česká verze stránky
<link rel="canonical" href=".../cs/produkt/" />
<link rel="alternate" hreflang="cs" href=".../cs/produkt/" />
<link rel="alternate" hreflang="en" href=".../en/product/" />
<link rel="alternate" hreflang="x-default" href=".../cs/produkt/" />
Anglická verze stejné stránky
<link rel="canonical" href=".../en/product/" />
<link rel="alternate" hreflang="cs" href=".../cs/produkt/" />
<link rel="alternate" hreflang="en" href=".../en/product/" />
<link rel="alternate" hreflang="x-default" href=".../cs/produkt/" />
Canonical v JavaScriptových aplikacích (SPA, React, Vue)
Canonical tag v JavaScriptové aplikaci je spolehlivý pouze tehdy, pokud je renderován na straně serveru (SSR). Googlebot JavaScript sice renderuje, ale ve dvou fázích. Pokud je canonical generován dynamicky client-side, nemusí být přítomen v první fázi crawlu.
Doporučení pro JS aplikace
- Používejte SSR (Next.js, Nuxt.js) nebo statické generování (SSG) pro stránky, kde canonical záleží
- Ověřte rendering přes GSC → URL Inspection → záložka „Rendered HTML“ — hledejte canonical v renderovaném kódu
- Alternativou je přidat canonical přímo do HTTP hlavičky serveru
Next.js — SSR implementace
import Head from 'next/head';
export default function Page() {
return (
<Head>
<link rel="canonical"
href="https://priklad.cz/stranka/" />
</Head>
);
}
Canonical v populárních CMS — krok za krokem
Návod pro WordPress (Yoast SEO a Rank Math), Shoptet, WooCommerce a ruční implementaci bez CMS.
WordPress + Yoast SEO
Yoast SEO přidává self-referencing canonical automaticky na všechny stránky. Pokud potřebujete canonical přepsat ručně:
- Otevřete úpravu stránky nebo článku
- Přejděte do panelu Yoast SEO ve spodní části editoru
- Klikněte na záložku Pokročilé
- Do pole Canonical URL zadejte cílovou adresu
WordPress + Rank Math
- Otevřete úpravu stránky
- V panelu Rank Math SEO klikněte na záložku Pokročilé
- Najděte pole Canonical URL a zadejte preferovanou adresu
Rank Math nabízí hromadné nastavení přes Rank Math → Sitemap Settings, kde vyloučíte určité typy stránek ze sitemaps a tím nepřímo signalizujete jejich nekanonický charakter.
Shoptet
Shoptet přidává canonical automaticky na základě struktury URL. Klíčová nastavení:
- Filtrové stránky: Shoptet od verze 5.x nabízí nastavení indexovatelnosti filtrových URL. Doporučené nastavení: filtrové kombinace s canonical na hlavní kategorii
- Produktové varianty: každá varianta dostává vlastní URL. Canonical by měl ukazovat na hlavní produkt, pokud se varianty výrazně neliší
- Ověření: Ctrl+U na produktové stránce a hledat
rel="canonical"
WooCommerce
WooCommerce v kombinaci s Yoast SEO nebo Rank Math zpracovává canonical automaticky.
- Produktové atributy a varianty: WooCommerce generuje URL pro každou kombinaci atributů (
?attribute_barva=cervena). Yoast SEO automaticky nastavuje canonical parametrických URL na hlavní produktovou stránku - Archivní stránky produktů: pokud používáte atributy jako taxonomie, ověřte, zda archivní stránky mají správný canonical nebo jsou vyloučeny přes
noindex
Ruční implementace (bez CMS nebo pluginu)
Statická HTML implementace
<head>
<link rel="canonical"
href="https://priklad.cz/stranka/" />
</head>
Dynamická implementace v PHP
<?php
$canonical_url = "https://" .
$_SERVER['HTTP_HOST'] .
strtok($_SERVER['REQUEST_URI'], '?');
echo '<link rel="canonical" href="'
. htmlspecialchars($canonical_url)
. '" />';
?>
15 nejčastějších chyb s canonical tagem
Každá z těchto chyb má konkrétní důsledky a konkrétní řešení. Projděte si seznam a zkontrolujte, zda váš web některou z nich neobsahuje.
Jak poznat: Zkontrolujte canonical oba směry nebo použijte Screaming Frog (Report → Canonicals → Canonical Chains).
Řešení: Identifikujte, která URL je skutečně preferovaná, a nastavte canonical jednosměrně.
Jak poznat: curl test nebo Screaming Frog — zkontrolujte HTTP status kanonické URL.
Řešení: Canonical musí vždy ukazovat na finální cílovou URL, která vrací 200.
<head> existují dva nebo více tagů <link rel="canonical">. Google všechny ignoruje.Jak poznat: Ctrl+U → hledat „canonical“ — měl by být pouze jeden výsledek v
<head>.Řešení: Zajistěte, aby šablona nebo plugin vkládal pouze jeden canonical tag. Zkontrolujte konflikty mezi pluginy (Yoast + jiný SEO plugin).
Jak poznat: Zobrazení zdrojového kódu a hledání výskytu „canonical“ mimo sekci
<head>.Řešení: Přesuňte canonical tag do
<head>.
<link rel="canonical" href="/stranka/" /> — bez protokolu a domény. Může způsobit chybnou interpretaci, zejména pokud web běží na více doménách nebo v testovacím prostředí.Řešení: Vždy používejte absolutní URL:
https://priklad.cz/stranka/.
Jak poznat: Screaming Frog → Canonicals → filtr „Canonical Returns 4XX“.
Řešení: Aktualizujte canonical na správnou URL nebo přidejte 301 redirect z původní URL.
robots.txt. Googlebot ji nemůže procházet, a proto canonical ignoruje.Jak poznat: Otestujte kanonickou URL v nástroji GSC → Testování robots.txt.
Řešení: Odstraňte blokování kanonické URL z robots.txt.
<meta name="robots" content="noindex">. Google dostane protichůdné signály.Řešení: Nikdy nekombinujte canonical a noindex na cílové stránce. Vyberte jedno: buď stránku indexujte (a použijte canonical), nebo ji vyloučte (noindex bez canonical z jiných stránek na ni).
Jak poznat: GSC → URL Inspection → porovnat „Canonical URL určená uživatelem“ vs. „Canonical URL vybraná Googlem“.
Nejčastější příčiny: Interní odkazování upřednostňuje jinou URL → opravte interní linky. Sitemap obsahuje jinou URL → aktualizujte sitemap. Stránky jsou příliš podobné → vylepšete obsah kanonické URL, přidejte strukturovaná data.
Jak poznat: Spusťte
curl -I https://priklad.cz/stranka/ a porovnejte Link: rel="canonical" v HTTP hlavičce s canonical tagem v HTML.Řešení: Zajistěte, aby obě hodnoty ukazovaly na stejnou URL, nebo HTTP canonical odstraňte.
Správná hierarchie:
Non-AMP stránka: canonical ukazuje na sebe samu.
AMP stránka: canonical ukazuje na non-AMP verzi.
Non-AMP stránka také obsahuje:
<link rel="amphtml" href="...amp verze..." />
Řešení: Canonical by měl vždy ukazovat na nejlépe optimalizovanou, nejúplnější verzi stránky.
Řešení: Canonical musí vždy odpovídat jazykové verzi stránky. Česká stránka → canonical na českou URL. Anglická stránka → canonical na anglickou URL.
Co dělat:
1. Přidejte canonical tag na všechny duplicitní URL.
2. Aktualizujte XML sitemap — zahrňte pouze kanonické URL.
3. Požádejte o recrawl kanonické URL přes GSC → URL Inspection → Požádat o indexaci.
4. Sledujte GSC → Indexování → Stránky, sekci „Duplicitní bez kanonické URL“. Měla by se postupně vyprazdňovat.
Proces může trvat dny až týdny v závislosti na crawl frekvenci webu.
Jak poznat: Porovnejte canonical v HTML s hodnotou
Link: v HTTP hlavičce pomocí curl nebo Chrome DevTools (záložka Network → Headers).Řešení: Zkontrolujte Cloudflare pravidla (Page Rules, Transform Rules) a ujistěte se, že nepřidávají ani nepřepisují canonical hlavičku.
Jak ověřit nastavení canonical tagu — 7 metod
Od bezplatných nástrojů přes příkazový řádek až po profesionální crawlery. Vyberte metodu podle rozsahu kontroly.
Google Search Console (URL Inspection)
Nejdůležitější nástroj. GSC vám ukáže nejen co jste nastavili, ale i co Google skutečně považuje za kanonickou URL.
- Přihlaste se do Google Search Console
- Klikněte na URL Inspection
- Zadejte URL stránky, kterou chcete zkontrolovat
- Ve výsledcích najděte Indexování → Kanonická URL
- Porovnejte „Určená uživatelem“ vs. „Vybraná Googlem“
Screaming Frog SEO Spider
Hromadná analýza canonical tagů napříč celým webem.
- Spusťte crawl webu a přejděte na záložku Directives → Canonical
- Canonical Returns 4XX — canonical na neexistující stránky
- Canonical Chains — canonical smyčky
- Self-referencing — přehled self-referencing canonical
- Non-Indexable Canonicals — canonical na stránky s noindex
Chrome DevTools (ruční kontrola)
Rychlá metoda pro ověření konkrétní stránky bez nutnosti externího nástroje.
- Otevřete stránku v Chrome
- Stiskněte F12 nebo pravé tlačítko → Prozkoumat
- Záložka Elements → Ctrl+F → hledat „canonical“
- Ověřte, že se tag nachází v
<head>
curl příkaz (HTTP hlavičky)
Pro non-HTML soubory (PDF, DOCX) nebo ověření HTTP canonical hlavičky:
curl -I https://priklad.cz/stranka/
Ve výstupu hledejte řádek Link: <https://...>; rel="canonical". Pokud existuje a liší se od canonical v HTML, máte konflikt.
Ahrefs nebo Semrush (site audit)
Oba nástroje nabízejí automatický audit canonical chyb.
- Ahrefs: Site Audit → Issues → hledejte „Canonical“
- Semrush: Site Audit → Crawled Pages → filtr Issues → „Canonical“
- Identifikují: canonical smyčky, canonical na 4XX/3XX, chybějící canonical, konflikty
Collabim
Český SEO nástroj Collabim nabízí audit stránky včetně technických SEO prvků. Vhodný pro české weby, kde chcete sledovat i pozice na Seznam.cz a korelovat je s technickými nastaveními.
Sitebulb
Sitebulb poskytuje vizuální mapu canonical vztahů — přehledně zobrazí, které stránky na sebe odkazují canonical tagem a kde jsou smyčky nebo konflikty. Ideální pro větší weby s komplexní strukturou.
Co se stane, když canonical nefunguje?
E-shop s módou, filtry a stovkami duplicitních URL — reálný příklad toho, jak chybějící canonical blokuje organický výkon.
Středně velký e-shop s módou provozoval kategoriové stránky s filtry pro barvu, velikost a typ materiálu. Každá kombinace filtrů generovala vlastní URL — celkem přes 2 400 URL pouze pro jednu kategorii dámských triček.
- Google indexoval filtrové URL místo hlavní kategorie
- Crawl budget byl z velké části čerpán procházením filtrových kombinací
- Hlavní kategorie rankovala slabě, link equity se dělila mezi 2 400+ URL
- V GSC se zobrazovalo přes 1 800 stránek ve stavu „Duplicitní bez kanonické URL vybrané uživatelem“
Na všechny filtrové URL přidán canonical na hlavní kategorii. Filtrové URL blokovány v robots.txt pro parametry, které nevytvářejí unikátní stránky. XML sitemap aktualizována. Interní odkazování zkontrolováno.
- Indexované stránky v GSC: klesly z 3 200 na 890
- Crawl budget: efektivněji využíván na nové produkty a kategorie
- Organická návštěvnost kategorie: vzrostla o 34 % meziměsíčně
- GSC chyba „Duplicitní bez kanonické URL“: zmizela
FAQ — 15 nejčastějších otázek
Odpovědi na otázky, které se u canonical tagu opakují nejčastěji.
<link rel="canonical"> v renderovaném kódu.Indexování → Stránky → kategorie „Duplicitní bez kanonické URL vybrané uživatelem“.
Kategorie „Duplicitní, Google zvolil jinou kanonickou URL než uživatel“.
Vysoký počet indexovaných URL v porovnání s reálným počtem unikátních stránek.
Implementační checklist
Canonical tag je jednoduchý HTML prvek s velkým dopadem. Správně nastavený pomáhá Googlu lépe pochopit strukturu webu, konsoliduje link equity a efektivně využívá crawl budget.
Co zkontrolovat jako první krok
- Otevřete Google Search Console
- Přejděte na Indexování → Stránky
- Podívejte se, kolik stránek je ve stavu „Duplicitní bez kanonické URL“ nebo „Duplicitní, Google zvolil jiný canonical“
- Pokud vidíte desítky nebo stovky takových URL, je čas canonical audit provést
Doporučené navazující články
Checklist před publikací každé stránky
- Stránka má v
<head>právě jeden<link rel="canonical"> - Canonical URL je absolutní (obsahuje
https://a celou doménu) - Canonical URL vrací HTTP 200 (ne 301, 302, 404)
- Canonical URL není blokovaná v
robots.txt - Canonical URL nemá
noindexmeta tag - Canonical je konzistentní se záznamem v XML sitemapě
- U vícejazyčných webů: canonical odpovídá jazykové verzi stránky (konzistentní s hreflang)
- U JS aplikací: canonical je přítomen v renderovaném HTML (ověřeno přes GSC URL Inspection)
Potřebujete audit
technického SEO?
Zdroje a reference
- Google Search Central — Consolidate duplicate URLs: developers.google.com
- Google Search Central — Canonicalization: developers.google.com
- Google Search Central — Large site crawl budget management: developers.google.com
- Google Search Central — Localized versions of your page (hreflang): developers.google.com
- Google Search Central — Mobile-first indexing: developers.google.com
- Google Search Central — AMP on Google: developers.google.com
- Google Search Central — JavaScript SEO basics: developers.google.com
- Google Search Central — Sitemaps overview: developers.google.com
Datum poslední aktualizace obsahu: .