Un site cu versiune română și engleză poate concura, fără să vrea, cu propriul conținut în Google: pagina RO și pagina EN se luptă pentru aceleași cuvinte cheie, iar motorul de căutare afișează inconsecvent când una, când alta. Hreflang este atributul tehnic prin care spui explicit lui Google „aceasta este versiunea în limba X a acestei pagini", astfel încât utilizatorul din România primește pagina RO, iar cel care caută în engleză primește pagina EN, fără ca cele două să se canibalizeze reciproc în rezultatele de căutare.
Problema nu este hreflang-ul în sine, ci implementarea lui parțială sau greșită: tag-uri fără confirmare reciprocă, coduri de limbă invalide sau lipsa unui x-default clar. Acest ghid explică, pas cu pas, cum implementezi corect hreflang pe un site RO-EN, ce greșeli produc canibalizare reală și cum verifici, tehnic, dacă totul funcționează așa cum ai intenționat.
Este util pentru proprietari de site-uri cu conținut în două limbi, specialiști SEO care gestionează structuri internaționale și dezvoltatori care implementează efectiv tag-urile hreflang în cod, în sitemap sau la nivel de server.
Ce este canibalizarea SEO între versiunile de limbă și de ce apare
Canibalizarea multilingvă apare atunci când Google nu poate decide clar care versiune de limbă a unei pagini trebuie afișată pentru o anumită interogare, iar cele două pagini (RO și EN) ajung să concureze între ele în loc să se completeze. Practic, ambele versiuni „țintesc" parțial același cuvânt cheie sau aceeași intenție de căutare, iar Google alternează afișarea între ele sau afișează varianta greșită pentru piața respectivă.
Semnale tipice că un site RO-EN are canibalizare de limbă
- Pagina EN apare în rezultatele Google.ro pentru interogări în limba română, sau invers.
- Poziții instabile pentru aceeași pagină, care fluctuează fără o cauză editorială clară.
- Trafic organic din România ajunge pe versiunea EN, cu rată de respingere vizibil mai mare.
- Search Console arată impresii pentru ambele URL-uri (RO și EN) pe interogări identice sau foarte apropiate.
Cauza tehnică cea mai frecventă nu este conținutul în sine, ci lipsa unui semnal clar de relație între cele două pagini. Fără hreflang, Google tratează RO și EN ca pagini independente, pe care le poate clasifica oricum, inclusiv incorect pentru piața locală.
Ce este hreflang și ce rol are, concret, într-o structură multilingvă
hreflang este un atribut folosit în tag-uri <link>, în sitemap sau în header-ul HTTP, prin care indici lui Google echivalentul unei pagini într-o altă limbă sau regiune. Conform documentației oficiale Google Search Central, scopul hreflang este strict direcțional: ajută Google să direcționeze utilizatorii către versiunea cea mai potrivită de limbă sau regiune a unei pagini, nu influențează în mod direct algoritmul de ranking.
Aceasta este o nuanță importantă: hreflang nu „întărește" o pagină și nu îi crește autoritatea. Rolul lui este să elimine ambiguitatea despre care versiune trebuie servită cui, ceea ce reduce indirect canibalizarea, pentru că nu mai lași Google să aleagă singur, potențial greșit, între cele două pagini.
Codurile de limbă și regiune corecte pentru un site RO-EN
Codul de limbă folosește standardul ISO 639-1, iar codul de regiune, opțional, standardul ISO 3166-1 Alpha-2. Pentru un site RO-EN simplu, fără targetare regională suplimentară, codurile corecte sunt ro pentru română și en pentru engleză. Google confirmă explicit că nu acceptă coduri neoficiale precum EU sau UK — pentru engleza britanică, de exemplu, codul corect este en-GB, nu UK.
Cum implementezi corect hreflang: cele trei metode acceptate de Google
Google acceptă trei metode de implementare hreflang, alegerea depinzând de dimensiunea site-ului și de resursele tehnice disponibile. Toate trei sunt valide; diferă doar efortul de mentenanță și scalabilitatea pentru un număr mare de pagini.
| Metodă | Cum funcționează | Recomandată pentru |
|---|---|---|
Tag-uri în <head> | <link rel="alternate" hreflang="ro" href="..."> pe fiecare pagină, inclusiv autoreferință | Site-uri mici și medii, cu control direct asupra template-ului HTML |
| XML Sitemap | Elemente <xhtml:link> imbricate pentru fiecare URL din sitemap | Site-uri mari, unde editarea manuală a fiecărui <head> nu este fezabilă |
| Header HTTP | Link: <url>; rel="alternate"; hreflang="...", trimis de server | Fișiere non-HTML (PDF-uri, documente) care nu pot avea un <head> |
Exemplu orientativ pentru două pagini echivalente, una RO și una EN, folosind tag-uri în <head>:
<link rel="alternate" hreflang="ro" href="https://happyweb.ro/servicii" /> <link rel="alternate" hreflang="en" href="https://happyweb.ro/en/services" /> <link rel="alternate" hreflang="x-default" href="https://happyweb.ro/servicii" />Regula obligatorie, indiferent de metodă: fiecare pagină trebuie să se autoreferențieze în propria listă de hreflang, nu doar să indice celelalte versiuni. Adică pagina RO include și un tag hreflang="ro" către ea însăși, alături de tag-ul hreflang="en" către versiunea engleză.
Confirmarea reciprocă (return tags): cea mai frecventă cauză de hreflang ignorat
Conform Google Search Central, dacă pagina RO trimite către pagina EN printr-un tag hreflang, pagina EN trebuie să trimită înapoi către pagina RO. Fără această confirmare reciprocă, Google poate ignora complet adnotările sau le poate interpreta greșit — practic, exact scenariul de canibalizare pe care hreflang ar trebui să îl prevină.
Această greșeală apare frecvent atunci când versiunea EN a unui site este adăugată ulterior, iar tag-urile hreflang sunt implementate doar pe paginile RO, „către" EN, fără ca cineva să actualizeze și paginile EN cu tag-urile inverse. Rezultatul practic este identic cu lipsa totală a hreflang-ului: Google nu are o confirmare bidirecțională validă.
Greșeli frecvente de implementare hreflang și cum le previi
- Lipsa confirmării reciproce — pagina A trimite spre B, dar B nu trimite înapoi spre A → verifică periodic, în perechi, toate URL-urile din structura RO-EN.
- Coduri de limbă invalide — folosirea unor coduri neoficiale (
EU,UK) sau greșite → folosește exclusiv coduri ISO 639-1, cu regiune ISO 3166-1 Alpha-2 doar dacă targetarea regională este reală și necesară. - Lipsa
x-default— utilizatorii cu setări de limbă neacoperite nu primesc o versiune implicită clară → adaugăx-default, mai ales pe pagina principală și pe orice selector de limbă. - URL-uri neindexabile în hreflang — tag-uri care indică pagini cu
noindex, redirect sau eroare 404 → hreflang-ul trebuie să indice mereu URL-ul canonic, funcțional, al fiecărei versiuni. - Conflict între hreflang și canonical — pagina EN are hreflang către ea însăși, dar canonical către pagina RO → păstrează canonical autoreferențial pe fiecare versiune de limbă, distinct de canonicalul folosit pentru conținut efectiv duplicat.
Hreflang, canonical și redirect geografic: când folosești fiecare
Confuzia dintre aceste trei mecanisme este una dintre cauzele indirecte ale canibalizării: fiecare rezolvă o problemă diferită, iar folosirea greșită a unuia în locul celuilalt anulează practic beneficiul hreflang-ului.
| Situație | Mecanism potrivit | De ce |
|---|---|---|
| Aceeași pagină, tradusă complet în RO și EN | Hreflang, cu canonical autoreferențial pe fiecare versiune | Conținutul are corp de text diferit prin limbă; nu este considerat duplicat de Google |
| Pagină RO cu conținut identic (netranslat) accesibilă și pe un al doilea URL, din greșeală tehnică | Canonical către URL-ul principal | Este duplicat real, nu o versiune de limbă diferită |
| Ai nevoie ca toți vizitatorii dintr-o țară să ajungă automat pe o singură versiune, indiferent de limba browserului | Redirect geografic, cu prudență | Redirectul agresiv poate bloca accesul la alte versiuni și complică indexarea; nu înlocuiește hreflang-ul, se folosește suplimentar și limitat |
Recomandarea practică HappyWeb: nu folosi redirect automat bazat pe IP sau pe limba browserului ca substitut pentru hreflang. Un vizitator din România care caută explicit conținut în engleză trebuie să poată accesa versiunea EN fără să fie forțat pe RO — redirectul agresiv, fără opțiune de schimbare manuală a limbii, este o cauză frecventă de experiență proastă și de blocare a crawlerelor pe anumite versiuni.
Cum verifici implementarea hreflang: instrumente și pași concreți
Raportul dedicat de „International Targeting" din Search Console a fost retras de Google; validarea hreflang se face acum prin combinarea următoarelor instrumente, nu printr-un singur raport central.
- Folosește URL Inspection Tool din Search Console pentru a confirma că fiecare pagină RO și EN este indexată separat, sub URL-ul corect.
- Verifică sursa HTML a paginii (sau sitemap-ul) pentru a confirma manual perechile de tag-uri hreflang și autoreferința fiecărei pagini.
- Folosește un instrument de crawling tehnic (ex: Screaming Frog, sau echivalent) pentru a genera automat un raport de erori hreflang: tag-uri fără confirmare reciprocă, coduri invalide sau URL-uri neindexabile.
- Compară în Search Console - Performance, filtrat pe pagină și pe țară, dacă traficul din România ajunge predominant pe versiunea RO și traficul internațional pe versiunea EN.
Dacă un instrument de crawling raportează „missing return links" pentru un set mare de pagini, problema este aproape sigur o implementare parțială hreflang, nu o eroare izolată — verifică template-ul folosit pentru generarea automată a tag-urilor, nu doar paginile individuale semnalate.
Plan practic de implementare hreflang pe un site RO-EN
Etapa 1 (0-2 săptămâni): audit și corectare rapidă
- Listează toate perechile de pagini RO-EN echivalente și verifică dacă au deja tag-uri hreflang.
- Rulează un crawl tehnic și identifică toate paginile fără confirmare reciprocă.
- Corectează codurile de limbă invalide și adaugă
x-defaultpe pagina principală.
Etapa 2 (2-6 săptămâni): implementare completă și testare
- Alege metoda de implementare potrivită dimensiunii site-ului (tag-uri în head sau sitemap).
- Implementează hreflang pentru toate paginile din structura RO-EN, inclusiv autoreferință.
- Verifică fiecare pereche cu URL Inspection Tool și cu un crawl tehnic de confirmare.
Etapa 3 (recurent, la fiecare 90 de zile)
- Verifică dacă paginile noi publicate în ambele limbi primesc automat tag-urile hreflang corecte, fără intervenție manuală uitată.
- Monitorizează în Search Console dacă traficul pe țară rămâne aliniat cu versiunea de limbă corectă.
SEO multilingv RO-EN: recomandări specifice pentru piața din România
Majoritatea site-urilor din România cu versiune EN nu au probleme de trafic masiv internațional, ci riscul opus: versiunea EN „fură" vizibilitate pe piața locală pentru interogări unde utilizatorul caută, de fapt, în română, dar folosește termeni tehnici în engleză (frecvent în B2B și tech).
- Verifică explicit dacă termenii tehnici în engleză din conținutul RO (ex: „hreflang", "canonical") nu creează, din greșeală, suprapunere de intenție cu pagina EN completă.
- Pentru site-uri cu structură
/en/ca subfolder (nu subdomeniu sau ccTLD separat), hreflang rămâne suficient; nu este nevoie de infrastructură suplimentară doar pentru a preveni canibalizarea. - Dacă publici conținut nou doar în română, nu adăuga automat tag-uri hreflang „goale" către o pagină EN inexistentă — trimite doar către URL-uri live, funcționale.
FAQ - SEO multilingv cu hreflang
1. Hreflang îmbunătățește ranking-ul unei pagini?
Nu direct. Conform Google Search Central, hreflang are un rol strict direcțional: ajută Google să servească versiunea de limbă potrivită fiecărui utilizator. Nu crește autoritatea sau poziționarea unei pagini prin el însuși, dar reduce riscul ca versiunea greșită să apară pentru piața țintă.
2. Am nevoie de x-default dacă am doar RO și EN?
Nu este obligatoriu tehnic, dar Google recomandă explicit adăugarea lui pe pagini de tip selector de limbă sau pe pagina principală cu redirect automat, pentru utilizatorii ale căror setări de limbă nu se potrivesc exact cu ro sau en.
3. Ce se întâmplă dacă adaug hreflang doar pe pagina RO, către EN, fără tag invers pe EN?
Google poate ignora complet adnotarea, deoarece lipsește confirmarea reciprocă cerută explicit în documentația oficială. Practic, efectul este identic cu lipsa hreflang-ului: fără protecție reală împotriva canibalizării.
4. Hreflang înlocuiește nevoia de canonical pe fiecare pagină?
Nu. Fiecare versiune de limbă păstrează propriul canonical, de obicei autoreferențial. Canonical rezolvă conținut duplicat pe același URL sau variante identice; hreflang rezolvă relația dintre versiuni de limbă diferite, cu conținut tradus, nu duplicat.
5. De ce nu mai găsesc raportul de International Targeting în Search Console?
Google a retras acest raport dedicat. Validarea hreflang se face acum prin URL Inspection Tool, verificare manuală sau automată a tag-urilor din cod/sitemap și analiza traficului pe țară din raportul de Performance.
Concluzie
Canibalizarea între versiunile RO și EN ale unui site nu vine din faptul că ai două limbi, ci din lipsa unui semnal tehnic clar care să le diferențieze corect pentru Google. Hreflang, implementat cu confirmare reciprocă, coduri valide și x-default acolo unde este cazul, elimină ambiguitatea și lasă fiecare versiune să concureze pe piața ei, nu pe piața celeilalte. Prioritatea imediată pentru orice site RO-EN este un audit tehnic al tag-urilor existente, nu rescrierea conținutului.
Ai nevoie de un audit hreflang pentru site-ul tău RO-EN, cu verificare de confirmare reciprocă și corectare tehnică? Discutăm un audit tehnic SEO sau vezi serviciile noastre de SEO. Pentru context despre proiectele noastre multilingve, vezi și portofoliul HappyWeb.
Expertiză: implementare și audit hreflang, structuri multilingve RO-EN și corectare de canibalizare tehnică SEO, aplicate pe proiecte reale dezvoltate de HappyWeb în România.
Imagine generată cu AI, folosită în scop ilustrativ.
Scrie un comentariu