Dijital dünyada markaların en büyük yanılsamalarından biri, içerikleri farklı dile çevirmenin otomatik olarak o dilin konuşulduğu bölgede organik görünürlük kazandıracağı beklentisidir. Oysa proje deneyimlerimizde, uluslararası organik görünürlüğün, çeviriden ziyade bazı önemli teknik sinyallerin doğru verilmesine bağlı olduğunu görüyoruz.

Bu makalede SEO dünyasında en sık karşılaştığımız dil yapılandırma hatalarından ve çözüm önerilerinden bahsedeceğiz.

Bir web sitesini, İngilizce’ye veya Almanca’ya çevirdiğinizde Google botları bu yeni sayfaların varlığından haberdar olsa bile, onları hangi kullanıcıya, hangi coğrafyada ve hangi niyetle sunacağını anlamak için somut teknik kanıtlara ihtiyaç duyar. 

SEO audit çalışmalarımızda, özellikle çok dilli sitelerde karşılaştığımız en yaygın hata, bu teknik sinyallerin zayıf veya çelişkili kurulmasıdır.

Google başta olmak üzere arama motorları, kullanıcının bulunduğu konumu ve tarayıcı dili ayarlarını analiz ederek, ona en uygun dil versiyonunu sunabilir. Bu eşleşmeyi sağlayan sinyal olan “hreflang etiketleri” bir sayfanın hangi dil veya bölge versiyonuna ait olduğunu botlara bildiren bir “tabela” görevi görür. Eğer bu tabela eksik, hatalı veya çelişkili ise Googlebot sayfanın dilini ve konumunu anlamlandıramayarak o URL’yi arama sonuçlarının alt sıralarda listeler. 

Makaleye konu olan sorunu kısaca tanımladıktan sonra web sitelerinde çoklu dil yapısına geçişte en sık karşılaştığımız hreflang hatalarını detaylandıralım. 

1- Non-200 Hreflang URLs Sorunu ve Tarama Bütçesiyle İlgisi

Screaming Frog’da karşılaştığımız “Non-200 Hreflang URLs” sorunu, önceki bölümde tanımını yaptığımız “hreflang” URL’inin, 200 OK dışında bir yanıt döndürmesi nedeniyle meydana gelir.

Bir hreflang URL’si 200 OK dışında bir yanıt döndürdüğünde Google yalnızca ilgili URL’yi değil, çoğu durumda tüm dil versiyonlarını geçersiz sayar. Bu durum, markanın uluslararası organik görünürlük hedefini sona erdirebileceği gibi projenizde botların karşısına kırık bağlantılar çıkaracağı için tarama bütçesini de gereksiz tüketecektir. 

Bu sorun web sitenizin kırık bağlantılarla dolmasıyla beraber, tarama bütçenizi de olumsuz etkilediği için sağlıklı sayfalarınızın (200 OK) dizine eklenme süresini de geciktirecektir.

Sorunun Çözümü;

i) Yukarıda özetlediğimiz durumda alınması gereken ilk aksiyon hatalı hreflang URL’lerini, o dilin güncel ve status 200 OK veren URL’i ile değiştirmektir. Yani hreflang etiketlerinin gösterdiği hatalı URL’ler yerine, doğru versiyonlarının eklenmesi gerekir.

ii) Eğer o dilde bir karşılık artık mevcut değilse, o dile ait hreflang etiketini tüm sayfalardan tamamen çıkarın. 

iii) Sayfayı ana sayfaya 301 ile yönlendirmek yerine, doğrudan ilgili içeriğe bağlayın. Google, dil etiketlerinde yönlendirilmiş URL sevmez; sinyalin doğrudan status 200 OK hedefe ulaşmasını ister.

2- Karşılıklı Hreflang Etiketi Kullanımı (Return Tag)

Çok dilli sitelerde karşılaşılan en yaygın mantık hatalarından bir diğeri, dil etiketlerinin tek taraflı çalışacağını varsaymaktır. Oysa hreflang etiketleri karşılıklı olarak çalışır. Çok sayıda projemizde markaların Türkçe sayfadan İngilizce sayfaya link verdiğini ancak İngilizce sayfadan Türkçe sayfaya dönüş yapmadığını (return tag) görüyoruz. Bu durum, bir arkadaşınıza selam verip onun size bakmaması gibi bir iletişim kopukluğu yaratır. Google, bu iletişim kopukluğunu görür ve bu sayfalar gerçekten birbirinin alternatifi değil şeklinde yorumlar.

Return Tag (Geri Dönüş Etiketi) Hatası Nasıl Keşfedilir?

Return tag mantığı en basit anlatımla şu şekildedir: Eğer A sayfası, B sayfasını kendi alternatifi olarak gösteriyorsa, B sayfası da mutlaka A sayfasını alternatif olarak göstermelidir. Eğer bu karşılıklı bağlantı kurulmazsa, Google etiketleri tamamen görmezden gelebilir veya yanlış yorumlayabilir. Bu karmaşa, özellikle aynı dili konuşan farklı bölgeler (Örn: ABD İngilizcesi vs. İngiltere İngilizcesi) arasında içerik cannibalization (birbirinin trafiğini çalma) sorunlarını tetikler.

Örnek yapı:

<link rel="alternate" hreflang="en" href="https://example.com/en/" />
<link rel="alternate" hreflang="es" href="https://example.com/es/" />

<link rel="alternate" hreflang="es" href="https://example.com/es/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/" />


Hreflang yapısı sadece sayfaların birbirini işaret etmesiyle tamamlanmaz; her sayfa kendi dilini de açıkça beyan etmelidir (self-referencing hreflang).

Yani bir İngilizce bir sayfa;

i) İspanyolca versiyonu işaret etmeli

ii) İngilizce versiyonu için de hreflang etiketi içermelidir.

Aksi durumda Google, o sayfanın hangi dil setine ait olduğunu net şekilde anlamayabilir. Hreflang kurgusunu eksik kabul edebilir.

Teknik SEO analizlerimizde return tag (geri dönüş etiketi) kontrollerini Screaming Frog’un “Missing Return Links” raporu kullanılarak gerçekleştirebiliriz.

3- HTML Lang Etiketi ve İçerik Uyuşmazlığı

Bir sayfanın kimliği sadece hreflang etiketi ile değil, aynı zamanda HTML’de yer alan <html lang=”...”> özniteliği ile de tanımlanır.

Teknik analizlerimizde pek çok CMS yapılarında sayfanın içeriği tamamen Türkçe olmasına rağmen, kod yapısında <html lang="en-US"> ile karşılaşıyoruz. Bu Türkçe konuşurken “I am British” demeye benzediği için teknik SEO araçları bu konuda sizi uyarır.

HTML Lang Etiketi Uyuşmazlığının SEO’ya Etkisi

Google her ne kadar sayfanın dilini anlamak için içerik analizine öncelik verse de, Bing gibi diğer arama motorları ve ekran okuyucular (screen readers) doğrudan HTML lang etiketine güvenir. Ekran okuyucunun Türkçe bir makaleyi İngilizce okumaya çalışması kullanıcı deneyimi açısından tam bir felakettir. Semrush ve Ahrefs gibi araçlarda “Hreflang and HTML lang mismatch”  uyarısı alıyorsanız nedeni budur ve genel SEO sağlığınız için önemli bir tehdittir.

 HTML Lang hatalarının genel nedenleri ve pratik çözüm önerileri aşağıdaki gibidir:

  1. CMS Varsayılan Hataları: Sitenin genel dil ayarının İngilizce kalması, tüm sayfa başlıklarının bu dili baz almasına neden olur. Ayarlar panelinden sayfa bazlı dinamik dil tanımlarını aktif hale getirin.
  2. Tema Hataları: Bazı temalar, dil etiketini header.php dosyasına sabit (hard-coded) olarak yazar. Sabit kodları kaldırıp, CMS’in dil fonksiyonlarını (Örn: WordPress için language_attributes()) kullanın.
  3. Schema Senkronizasyonu: Schema.org verilerindeki inLanguage özelliği ile HTML lang etiketini uyumlu hale getirin. Bu, arama motorlarına sayfanın hedef kitlesi hakkında daha kuvvetli sinyaller verir. 

Etiket Tipi

İşlevi

Hatalı Kullanım Senaryosu

HTML lang

Dokümanın ana dilini tarayıcıya bildirir.

Türkçe içerikte lang="en" yazması.

Hreflang

Diğer dillerdeki alternatifleri gösterir.

Sadece tek bir dile işaret edip diğerlerini unutmak.

inLanguage (Schema)

Yapılandırılmış verideki dil beyanı.

Sayfa diliyle çelişen şema verisi sunmak.

4- Indexlenmeyen İstemci Taraflı (CSR) Çevirinin Riskleri

Çok dilli sitelerde en çok karşılaştığımız bir diğer SEO sorunu, dil değişiminin sadece bir butonla (tarayıcı bazlı) sağlanması ve URL’in değişmemesidir. JavaScript ile yapılan bu işlem, kullanıcı için pratik görünse de Googlebot için o sayfanın “tek dilli” kalmasına neden olur.

Googlebot, sayfanın İngilizce versiyonuna ulaşabileceği benzersiz bir yol yani URL bulamadığında, o içerik Google için bir "hayalet" haline gelir.

Yukarıdaki yapıda (CSR kullanan sitelerde), içerik tarayıcıda JS ile çalıştıktan sonra oluşur. Googlebot JavaScript işleyebilse de kullanıcı etkileşimi gerektiren dil seçimlerini gerçekleştiremez. Sonuç olarak, İngilizce içerik bot için asla var olmamıştır. 

Sorunun Çözümü:

i) Benzersiz URL Yapısı: Her dil için /en/, /de/ gibi alt klasörler veya en.site.com gibi alt alan adları (subdomains) kullanın.

ii) Sunucu Taraflı Sunum (SSR): İçeriği sunucu tarafında oluşturup HTML olarak kaynak koda ekleyin. Bu, botun sayfayı saniyeler içinde anlamasını ve dizine eklemesini sağlar.

iii) Dinamik Rendering: Eğer tamamen JS tabanlı bir yapı kullanıyorsanız, botlar için önceden oluşturulmuş (pre-rendered) bir HTML sürümü sunan dinamik rendering tercih edin.

5- Ülke Kodlarının Doğru Hatalı Kullanımı (“en-UK” Hatası)

Hreflang etiketlerinde kullanılan dil ve kodlarının standartları göz ardı edilmemesi gereken bir diğer noktadır. Projelerimizde ülke kodlarının pek çok kez sezgisel olarak kullanıldığını görüyoruz. Bunun en yaygın örneği, “Birleşik Krallık için “UK” kodunun kullanılmasıdır. Bu kod, sezgisel olarak doğru gelse de ISO standartlarında Birleşik Krallık için kullanılması gereken doğru kod “GB” (Great Britain) olarak tanımlanmıştır.

ISO Kodlarının Hatalı Kullanımının SEO’ya Etkisi

Yukarıda bahsettiğimiz basit kod hatası bile, Google’ın dil sinyalini tamamen reddetmesine neden olabilir. “en-UK” yazdığınızda Googlebot bunu tanımsız bir komut olarak algılar ve o satırı bir yazım hatası olarak görüp geçebilir. Bu küçük hata, o bölgedeki kullanıcıların karşısına yanlış dil versiyonunun çıkmasına veya SERP’te yerel rakiplerin gerisinde kalmanıza neden olabilir.

Sorunun Çözümü;

  • Dil Kodları: Mutlaka ISO 639-1 formatında (iki harfli) olmalıdır. Örn: tr, en, de, fr.
  • Ülke Kodları: Mutlaka ISO 3166-1 Alpha 2 formatında olmalıdır. Örn: TR, US, GB, DE.
  • Sıralama Kuralı: Her zaman önce dil, sonra opsiyonel olarak ülke kodu gelir (dil-ülke). Asla ülke-dil (Örn: GB-en) şeklinde kullanmayın.

 ISO kod hatalarını Screaming Frog aracının Incorrect Language & Region Codes menüsünden görüntüleyebilirsiniz.

6- X-Default Etiketi: Nedir? Nasıl Çalışır?

Eğer bir kullanıcı, hedeflediğiniz dil versiyonlarından hiçbirine uymayan bir bölgeden geliyorsa (Örn: Siteniz Türkçe ve İngilizce iken Brezilya’dan bir kullanıcı gelirse), Google’a hangi sayfayı göstermesi gerektiğini söylemeniz gerekir. İşte bu noktada hreflang="x-default" etiketi devreye girer.

X-Default Etiketi Nasıl Çalışır?

X-default etiketi, arama motoruna "eğer hiçbir eşleşme yoksa bu sayfayı göster" diyen bir yer göstericidir. Genellikle bir dil seçim sayfasını veya uluslararası geçerliliği olan ana İngilizce sayfayı işaret eder. 

Bu etiketin eksikliği, hangi dil seçeneğinin gösterileceği kararını Google’a bırakır. Googlebot da tamamen alakasız bir dil gösterebilir.

7- Canonical Etiketleri ve Hreflang Çatışması

Hreflang ve canonical etiketleri birbirine benzese de, işlevsel olarak tamamen farklı komutlardır. Canonical, "bu sayfa bir kopyadır veya asıl yetkili sayfa şudur" derken; Hreflang, "bu sayfa şu bölge için özel bir versiyondur" der. 

En büyük teknik hatalardan biri, tüm dil versiyonlarını tek bir "ana" URL'ye (genellikle İngilizce ana sayfaya) canonical yapmaktır.

Hatalı Kullanım (Tüm dillerin tek bir 'ana' sayfayı işaret etmesi):

https://example.com/es/ (İspanyolca Versiyon) sayfasının kod yapısında:

<link rel="canonical" href="https://example.com/en/" />

<link rel="alternate" hreflang="en" href="https://example.com/en/" />

<link rel="alternate" hreflang="es" href="https://example.com/es/" />

Doğru Kullanım (Her dilin kendi canonical etiketine sahip olması):

https://example.com/es/ (İspanyolca Versiyon) sayfasının kod yapısında:

<link rel="canonical" href="https://example.com/es/" />

<link rel="alternate" hreflang="es" href="https://example.com/es/" />

<link rel="alternate" hreflang="en" href="https://example.com/en/" />

 

Yanlış Canonical Etiketi Kullanımının SEO’ya Etkisi

Skype'ın tüm dil versiyonlarını ana İngilizce sayfaya canonical yapması bu konuyla ilgili en meşhur örnektir. Bu yapılandırmada Google, "Tamam, İspanyolca sayfanın var olduğunu söylüyorsun ama aynı zamanda bu sayfanın önemsiz bir kopya olduğunu ve İngilizce olanın tek gerçek olduğunu iddia ediyorsun. "O zaman ben sadece İngilizceyi dizine ekliyorum" der. Sonuç? Milyonlarca dolarlık yerelleştirme yatırımı arama sonuçlarından silinir.

Sorunun Çözümü;

i) Self-referencing Canonical: Her dil versiyonu, mutlaka kendisine (self-referencing) canonical yapmalıdır.

ii) Çapraz Kontrol: Hreflang içindeki URL’lerin, o sayfanın canonical URL’i ile birebir uyuştuğundan emin olun.

iii) Yönlendirmelere Dikkat: Canonical etiketi asla bir yönlendirme (301) zincirine işaret etmemelidir.

8- Screaming Frog ile Hreflang Denetimi

Screaming Frog üzerinden takip ettiğimiz kritik sütunlar ve bunların stratejik karşılıkları aşağıdaki tabloda özetlenmiştir.

Screaming Frog 

Hata Durumu (Error Status)

Çözüm Aksiyonu

Hreflang > Non-200 Hreflang URLs

"non-200"

Yanıt kodu 200 OK olmayan (404, 301 vb.) URL'leri tespit edip güncelleyin veya etiketi tamamen kaldırın.

Hreflang > Missing Return Links

"missing"

Alternate sayfalar arasındaki karşılıklılık ilkesini (reciprocity) sağlayacak eksik geri dönüş bağlantılarını ekleyin.

Hreflang > Incorrect Language & Region Codes

"Non Canonical"

Hreflang etiketlerinde yer alan URL'lerin ilgili sayfanın canonical (asıl) versiyonuyla birebir uyuşmasını sağlayın.

Hreflang > Noindex Return Links

"inconsistent"

Dönüş linkindeki dil/bölge değerinin hedef sayfanın kendi beyanıyla çelişmediğinden emin olun; değerleri senkronize edin.

Googlebot’a doğru sinyaller göndermek, global büyüme hedeflerini somut trafik verilerine dönüştürmenin tek yoludur. Teknik hatalar nedeniyle SERP’ün derinliklerinde kalan kaliteli içerik, keşfedilmeyi bekleyen bir hazine gibidir; ancak doğru anahtarlar (hreflang, canonical, HTML lang) olmadan o hazineye kimse ulaşamaz. 

Kaynaklar