Prejsť na hlavný obsah
TechSEO Vitals

Váš hreflang je správny. Google ho aj tak ignoruje

Vymyslený hreflang zlyhá potichu a jedna verzia prestane byť alternatívou. Aj ten platný však prehráva, keď sú vaše stránky pre jednotlivé krajiny rovnaké.

Zdieľať na

Nedávno som pracoval na webe, ktorý mal v hreflangu neexistujúci kód. Nebol to preklep v jednej šablóne. Niekto si vymyslel kód pre jeden trh a ten potom sedel v heade úplne každej stránky.

Jedna verzia prestala byť alternatívou a stala sa konkurentom. Zaindexovala sa vedľa ostatných. Pozície vo vyhľadávaní medzi nimi preskakovali týždeň čo týždeň.

Klient si myslel, že má problém s obsahom. Mal dvojpísmenkový problém.

Neplatný kód zlyhá potichu

Google narazí na kód, ktorý v štandarde nie je, tú časť anotácie ignoruje a ide ďalej. Žiadne varovanie. Nikde ani slovo.

Zvyšok sady hreflangov funguje ďalej. Práve preto sa to tak ľahko prehliadne. Rozbitý kód sedí v heade každej stránky, lebo každá stránka vypisuje všetky alternatívne verzie, ale zo sady vypadne naozaj len jedna.

Tá verzia je teraz osirelá. Nie je alternatívou k žiadnej inej verzii. Je to len ďalšia takmer identická stránka na tej istej doméne a nič nevysvetľuje, ako súvisí s ostatnými.

A tak súperí. S verziami, s ktorými mala byť spárovaná. Rozbitý hreflang nie je neutrálny – a práve to klienti nečakajú.

Tento problém vídam často. en-uk namiesto en-gb. cz namiesto cs pri češtine. eu pre „Európu“, čo nie je krajina ani náhodou. Len kód krajiny tam, kam patrí jazyk. Niekto si vymyslí niečo, čo človeku znie rozumne a parseru nehovorí nič.

Niekde sa dočítate, že si to Google sčasti opraví sám. Tá rada je stará. Aktuálna dokumentácia uvádza UK, UN a EU medzi rezervovanými kódmi a rovno dodáva, že ich použitie v hreflangu nemá na Vyhľadávanie žiadny vplyv. Google regióny aj tak nikdy nepodporoval. Jeho infraštruktúra rozumie krajinám, nie regiónom.

Takýto typ problému dokáže ľahko potopiť ktorýkoľvek web, ktorý predáva na viacerých trhoch.

Hreflang nikdy nebol príkaz

Google ho vo vlastnej dokumentácii opisuje ako spôsob, akým pochopí, že ide o lokalizované verzie tej istej stránky. Nie ako pokyn, ktorým sa musí riadiť. A povedal to natvrdo: hreflang nezaručuje indexáciu, a ak sú dve verzie rovnaké, jednu z nich vyberie ako kanonickú.

Je to tak zámerne.

Hreflang je len jeden zo signálov a rozhodujúci je výber kanonickej stránky. Keď canonical ukazuje niekam mimo vašej sady hreflangov, Google celú anotáciu ignoruje. Keď vaše stránky vyzerajú ako duplicity, zlúči ich.

Ťažší problém začína vtedy, keď máte kódy v poriadku

Rozbitý hreflang je ten jednoduchší prípad. Nájdete ho, opravíte, hotovo.

Ten ťažký je európsky e-shop, ktorý má hreflang čistý, platný aj vzájomne prepojený – a Google aj tak ukazuje verziu pre nesprávny trh.

Pozrite sa na tie stránky. Rovnaká mena, všade eurá. Rovnaký jazyk na všetkých trhoch – holandčina pre NL a BE, francúzština pre FR, BE a LU, nemčina pre DE a AT. Rovnaké názvy produktov. Rovnaké popisy od výrobcu. Rovnaké ceny.

Čo ich vlastne odlišuje? Kód krajiny v URL adrese a jeden riadok hreflangu.

Google duplicity zlučuje. Robí to na celom internete, neustále, a ide mu to. Chcieť od neho, aby takmer identické stránky nezlučoval len na základe jednej nápovedy, znamená žiadať ho, aby šiel sám proti sebe.

Občas si teda vyberie tú nesprávnu. Nie je to náhoda. Stojí za tým algoritmus, ktorý vyhodnocuje signály, na ktoré nevidíte. Lenže keď sa dve stránky takmer ničím nelíšia, rozhodujú maličkosti. Zvonku to vyzerá ako hod mincou.

Hreflang nevytvorí rozdiel, ktorý tam nie je

Ak sú dve stránky pre rôzne krajiny funkčne identické, máte dve možnosti. Buď ich naozaj odlíšte, alebo prestaňte predstierať, že sú samostatné.

Naozaj sa odlíšiť znamená dať Googlu signály, na ktoré vidí. Miestne ceny. Miestne dodacie lehoty a ceny dopravy. Miestna adresa a telefón. Miestna skladová dostupnosť. Recenzie od miestnych zákazníkov. Obsah písaný pre ten trh, nie taký, čo prešiel tou istou prekladovou pamäťou ako ten predchádzajúci.

Nič z toho nie je hreflang. Hreflang vzťah medzi stránkami opisuje. Nevytvára rozdiel, ktorý ten vzťah odôvodňuje.

Alternatívou je konsolidácia. Jedna silná stránka na jazyk. Krajinu vyriešite priamo na stránke, nie v URL adrese. Menej URL adries, všetky signály na jednom mieste, menej vecí, ktoré sa môžu pokaziť. Pre veľa webov je to lepšie rozhodnutie a nikto to nahlas nepovie, lebo to riešenie pre jednotlivé krajiny už beží a niekto si naň obhájil rozpočet.

Pri rôznych jazykoch je to inak. Preložený obsah je naozaj odlišný a Google s ním tak aj zaobchádza. Nebezpečné sú varianty v rovnakom jazyku pre rôzne trhy.

Dajte hreflang do HTML, kde naň vidíte

HTML head vyhráva jednou vecou: dá sa skontrolovať. Otvoríte zdrojový kód a máte to tam. Zachytíte to v crawle. Živú stránku si overíte za desať sekúnd.

Hreflang v mape stránok je čierna skrinka. Časom prestane sedieť s tým, čo je na stránkach, a na oboch stranách vyzerá správne, pritom nerobí nič. Nakoniec veríte súboru namiesto toho, aby ste sa pozreli na stránku.

Vyberte si jednu metódu. Použiť obe a nechať v nich rozporné dáta je horšie než siahnuť po tej slabšej – keď si signály odporujú, Google takú dvojicu hreflangov zahodí.

Ešte jedna vec. Inline skripty dokážu rozbiť head a vytlačiť váš hreflang do body, kde nerobí nič. Práve preto vám dokumentácia Googlu hovorí, nech validujete vykreslenú stránku.

Hreflang vkladaný JavaScriptom mimochodom funguje. Google číta vykreslené HTML. Lenže rendering prebieha menej často než crawl a ešte menej často na stránkach, na ktorých Googlu až tak nezáleží. Vaše zmeny sa tak prejavia časom, nie hneď. Vykreslite ho na serveri a čakanie odpadá.

Nikto vám nepovie, že je hreflang rozbitý

Google už pred rokmi odstránil zo Search Console prehľad Medzinárodné zacielenie. Nech ste si o ňom mysleli čokoľvek, bolo to jediné miesto, kde chyby v hreflangu vychádzali najavo samy od seba.

Dnes neexistuje nič centrálne. Neplatný kód zlyhá potichu. Chýbajúci odkaz naspäť zlyhá potichu. Cieľ, z ktorého sa medzitým stalo presmerovanie, zlyhá potichu. Stránky sa pritom načítavajú úplne normálne.

Odhaliť to je váš problém. Naplánujte si na hreflang pravidelný crawl. Skontrolujte to po každom nasadení, ktoré zasahuje do šablón alebo routingu. Berte to ako Core Web Vitals. Niečo, čo sledujete aj po spustení.

Ten klient mal vymyslený kód na webe poriadne dlho, než si ho niekto spojil s chaosom v pozíciách. Nemal sa to ako dozvedieť.

Čistý hreflang je minimum. Dajte kódy do poriadku, zosúlaďte signály a potom si úprimne priznajte, či vaše stránky pre jednotlivé krajiny vôbec majú dôvod existovať zvlášť.

Pôvodná verzia tohto článku je anglická. Do slovenčiny je preložená automaticky.

Martin Štěpánek

Martin Štěpánek

Konzultant enterprise technického SEO

Som konzultant enterprise technického SEO a vývojár. Vyše desať rokov som web staval, až potom som ho začal opravovať, a produkčný kód píšem dodnes. Čítam odpovede, ktoré váš web naozaj posiela, poviem vám, ktoré nálezy stoja za sprint, a opravu odovzdám vašim vývojárom sám.

Každé dva týždne

Newsletter o technickom SEO, ktorý vývojári aj SEO špecialisti naozaj dočítajú

Jeden konkrétny problém rozoberiem do detailu a poviem jasne, čo s ním. Porovnám to s primárnou dokumentáciou aj s tým, čo vidím v auditoch. A k tomu tri správy z posledných dvoch týždňov, ktoré vyberiem a vysvetlím.

Mersudin ForbesMersudin ForbesMark Williams-CookMark Williams-CookAleyda SolisAleyda Solis
Odporúčajú ho lídri v odbore

Prihlásiť sa

Nové vydanie každé dva týždne. Odhlásenie jedným klikom.

Iba v angličtine

Prihlásením súhlasím so Zásadami ochrany osobných údajov a Obchodnými podmienkami.

Žiadny spam. Odhlásenie kedykoľvek jedným klikom.
Poznámky z technického SEO