Blog'a Dön
hreflangçok dilli seouluslararası seoteknik seoreturn tagx-defaultxml sitemap hreflangnext.js hreflang

Hreflang Teknik Rehberi — Çok Dilli SEO İçin Eksiksiz Uygulama Kılavuzu (2026)

SEOctopus14 dk okuma süresi

Çok dilli veya çok bölgeli bir web sitesi işletiyorsanız, arama motorlarının hangi sayfanın hangi dile ve bölgeye hitap ettiğini doğru anlaması organik trafiğiniz için hayati önem taşır. Hreflang etiketi bu ilişkiyi tanımlayan teknik mekanizmadır — ancak doğru uygulanması, genel kavramı anlamaktan çok daha karmaşıktır. Yanlış yapılandırılmış hreflang etiketleri, arama motorları tarafından tamamen yok sayılır ve çok dilli SEO stratejinizi temelinden çökertir.

Bu rehber, hreflang''in genel tanımını ve "neden önemli" sorularını zaten bildiğinizi varsayar. Uluslararası SEO ve Hreflang Rehberi yazımızda bu temelleri detaylı olarak ele almıştık. Burada ise tamamen teknik uygulamaya odaklanıyoruz: spesifikasyon detayları, üç farklı uygulama yöntemi, dil ve bölge kodlarındaki yaygın hatalar, return tag zorunluluğu, canonical tag ile etkileşim, Next.js/React implementasyonu, XML sitemap ile hreflang yönetimi, hata ayıklama araçları ve büyük ölçekli siteler için ileri düzey stratejiler.

Hreflang Spesifikasyonu: Teknik Detaylar

Hreflang etiketi, Google tarafından 2011 yılında tanıtıldı ve rel="alternate" hreflang="x" formatını kullanır. Temel sözdizimi şöyledir:

```html

```

Her hreflang etiketi üç zorunlu bileşenden oluşur:

1. rel="alternate": Bu bağlantının mevcut sayfanın alternatif bir versiyonu olduğunu belirtir. rel değeri her zaman "alternate" olmalıdır; başka bir değer geçerli değildir.

2. hreflang="dil-kodu": Hedef sayfanın dilini ve opsiyonel olarak bölgesini belirtir. Dil kodu ISO 639-1 standardına, bölge kodu ISO 3166-1 Alpha-2 standardına uymalıdır.

3. href="tam-url": Alternatif sayfanın tam ve mutlak URL''si. Göreli URL''ler kullanılamaz; protokol (https://), alan adı ve tam yol dahil edilmelidir.

Dil ve Bölge Kodları: Doğru Kullanım

ISO 639-1 dil kodları iki harfli küçük harflerden oluşur. Sık karşılaşılan hatalar şunlardır:

Doğru KodYanlış KullanımAçıklama
trtur, tkTürkçe — ISO 639-1 kodu "tr"dir, "tur" üç harfli ISO 639-2 kodudur
eneng, usİngilizce — "us" ülke kodudur, dil kodu değildir
dedeu, gerAlmanca — "ger" ISO 639-2/B kodudur
jajpJaponca — "jp" ülke kodudur
zhcnÇince — "cn" Çin ülke kodudur
kokrKorece — "kr" ülke kodudur

Bölgesel hedefleme yaparken dil ve bölge kodları tire ile birleştirilir: en-US, en-GB, pt-BR, zh-TW. Bölge kodu her zaman büyük harfle yazılır: en-us değil en-US. Google, büyük/küçük harf farkına toleranslı olsa da spesifikasyona uygun biçimi kullanmak en iyi uygulamadır.

Kritik hata: Ülke kodunu dil kodu olarak kullanmak. hreflang="us" geçersizdir çünkü "US" bir ülke kodudur, dil kodu değildir. Doğru kullanım hreflang="en-US" şeklindedir.

x-default Uygulaması

x-default değeri, kullanıcının dili veya bölgesi tanımlanan alternatiflerin hiçbirine uymadığında gösterilecek varsayılan sayfayı belirtir. Ayrıca dil seçim sayfalarını işaretlemek için de kullanılır:

```html

```

x-default uygulamasında dikkat edilmesi gereken noktalar:

  • Her sayfa grubu için yalnızca bir x-default tanımlanmalıdır
  • x-default genellikle İngilizce versiyona veya dil seçim sayfasına yönlendirilir
  • x-default zorunlu değildir ancak şiddetle önerilir — tanımlanmadığında Google kendi algoritmasıyla varsayılan sayfayı belirler
  • x-default sayfasının da return tag''lerini içermesi gerekir

Üç Uygulama Yöntemi: Karşılaştırma ve Seçim

Hreflang etiketlerini uygulamanın üç farklı yöntemi vardır. Her birinin avantajları, dezavantajları ve ideal kullanım senaryoları farklıdır.

En yaygın kullanılan yöntemdir. Her sayfanın bölümüne etiketleri eklenir:

```html

```

Avantajları:

  • Uygulaması en basit yöntemdir
  • Tüm CMS platformlarında kullanılabilir
  • Google, Yandex ve diğer arama motorları tarafından desteklenir
  • Kaynak kodda doğrudan görülebilir, hata ayıklama kolaydır

Dezavantajları:

  • HTML boyutunu artırır — 30 dilli bir sitede her sayfaya 31 (30 dil + x-default) ek satır eklenir
  • Sayfa yüklenme süresini etkileyebilir (özellikle çok dilli sitelerde)
  • Her sayfa şablonunda güncelleme gerektirir
  • JavaScript ile render edilen sayfalarda (SPA) sorunlu olabilir — bot''lar JavaScript çalıştırmadan HTML''i okuduğunda hreflang etiketlerini göremeyebilir

İdeal kullanım: 10''dan az dil/bölge hedefleyen, sunucu tarafında render edilen (SSR) siteler.

Yöntem 2: HTTP Header

PDF, video ve HTML olmayan dosyalar için HTML kullanılamaz. Bu durumda HTTP header yöntemi kullanılır:

```

HTTP/1.1 200 OK

Link: ; rel="alternate"; hreflang="tr",

; rel="alternate"; hreflang="en",

; rel="alternate"; hreflang="de",

; rel="alternate"; hreflang="x-default"

```

Nginx konfigürasyonu örneği:

```nginx

location /tr/dosya.pdf {

add_header Link '; rel="alternate"; hreflang="tr", ; rel="alternate"; hreflang="en", ; rel="alternate"; hreflang="de"';

}

```

Avantajları:

  • HTML olmayan dosyalar için tek seçenek
  • HTML boyutunu etkilemez
  • Sunucu düzeyinde merkezi yönetim

Dezavantajları:

  • Yönetimi karmaşıktır, sunucu konfigürasyonu gerektirir
  • CDN kullanımında header''ların korunması sağlanmalıdır
  • Hata ayıklama görece zordur (HTTP header''larını incelemek gerekir)
  • Her URL için ayrı konfigürasyon gerekebilir

İdeal kullanım: PDF, medya dosyaları veya HTML olmayan kaynakların çok dilli versiyonları.

Yöntem 3: XML Sitemap

Büyük ölçekli siteler için en ölçeklenebilir yöntemdir. Hreflang ilişkileri XML sitemap dosyasında xhtml:link elemanları ile tanımlanır:

```xml

xmlns:xhtml="http://www.w3.org/1999/xhtml">

https://example.com/tr/urunler/

https://example.com/en/products/

https://example.com/de/produkte/

```

Dikkat edin: Her bloğu, o URL''nin tüm dil alternatiflerini (kendisi dahil) listeler. Bu, return tag zorunluluğunu sitemap düzeyinde karşılar.

Avantajları:

  • HTML boyutunu etkilemez
  • Merkezi yönetim — tek bir dosyada tüm hreflang ilişkileri
  • Binlerce sayfa için ölçeklenebilir
  • Programatik olarak oluşturulması kolay
  • Sayfa şablonlarında değişiklik gerektirmez

Dezavantajları:

  • Sitemap dosya boyutu önemli ölçüde artar (her dil alternatifi ek satır ekler)
  • Sitemap''in arama motoru tarafından düzenli olarak taranması gerekir — HTML yöntemine kıyasla değişikliklerin algılanması daha yavaş olabilir
  • Sitemap hataları tüm hreflang yapılandırmasını etkileyebilir

İdeal kullanım: 10+ dil/bölge hedefleyen büyük siteler, e-ticaret platformları.

Hangi Yöntemi Seçmeli?

KriterHTML HeadHTTP HeaderXML Sitemap
Dil sayısı < 10ÖnerilirUygunUygun
Dil sayısı > 10Uygun değilUygun değilÖnerilir
HTML olmayan dosyalarKullanılamazÖnerilirUygun
Yönetim kolaylığıOrtaZorKolay (otomatik)
Algılama hızıEn hızlıHızlıDaha yavaş
HTML etkisiArtırırEtkilemezEtkilemez

Yöntemleri birlikte kullanabilirsiniz ancak dikkatli olun: aynı URL için farklı yöntemlerde çelişkili hreflang tanımları, arama motorlarının kafasını karıştırır. Tutarlılık esastır — bir yöntem seçin ve tüm sitede tutarlı uygulayın.

Return Tag Zorunluluğu: Çift Yönlü Bağlantı

Hreflang uygulamasının en kritik teknik kuralı return tag zorunluluğudur. A sayfası B sayfasına hreflang ile işaret ediyorsa, B sayfası da A sayfasına geri işaret etmelidir. Bu çift yönlü bağlantı yoksa, Google hreflang etiketini yok sayar.

```

Sayfa A (TR) → hreflang="en" → Sayfa B (EN) ✓

Sayfa B (EN) → hreflang="tr" → Sayfa A (TR) ✓ (Return tag)

```

Tek yönlü bir bağlantı geçersizdir:

```

Sayfa A (TR) → hreflang="en" → Sayfa B (EN) ✓

Sayfa B (EN) → hreflang="tr" yok ✗ (Return tag eksik — TÜM hreflang yok sayılır)

```

Self-Referencing Tag

Her sayfa, kendi dilini de hreflang listesinde belirtmelidir. Self-referencing tag olmadan Google, sayfanın hangi dil/bölge grubuna dahil olduğunu net olarak belirleyemez:

```html

```

Self-referencing tag teknik olarak "zorunlu" değildir ancak Google''ın resmi dokümantasyonu bunu şiddetle önerir. Pratikte, self-referencing tag eksik olduğunda hreflang''in yok sayılma oranı belirgin şekilde artar.

Return Tag Doğrulama Mantığı

Bir sayfa grubunda N dil varsa, her sayfa tam olarak N adet hreflang etiketi içermelidir (N-1 alternatif + 1 self-referencing). 5 dilli bir sitede her sayfa 5 hreflang etiketi taşır. Herhangi bir sayfada bir etiket eksikse, o grup için return tag zinciri kırılır.

Doğrulama algoritması:

```

Her URL için:

1. URL''nin hreflang listesindeki tüm alternatifleri al

2. Her alternatif URL''yi ziyaret et

3. Alternatif URL''nin hreflang listesinde orijinal URL var mı kontrol et

4. Yoksa → return tag hatası

```

Hreflang ve Canonical Tag Etkileşimi

Hreflang ile canonical tag arasındaki ilişki, en çok karışıklığa neden olan teknik konulardan biridir. Temel kural şudur: hreflang etiketlerindeki URL''ler, ilgili sayfanın canonical URL''si ile eşleşmelidir.

Doğru Kullanım

```html

```

Yanlış Kullanım (Canonical Çelişkisi)

```html

```

Bu senaryoda Google, canonical URL ile hreflang URL''si arasındaki tutarsızlığı algılar ve hreflang etiketini yok sayar.

Yaygın Tuzaklar

1. Cross-language canonical: Tüm dil versiyonlarının canonical''ını tek bir dile (genellikle İngilizce''ye) yönlendirmek tamamen yanlıştır. Her dil versiyonunun canonical''ı kendisine işaret etmelidir:

```html

```

2. Trailing slash tutarsızlığı: Canonical URL''de trailing slash varken hreflang URL''sinde yoksa (veya tersi), Google bunları farklı URL''ler olarak değerlendirebilir:

```html

```

3. HTTP/HTTPS tutarsızlığı: Canonical URL HTTPS iken hreflang URL''lerinde HTTP kullanmak geçersizdir. Tüm URL''ler aynı protokolü kullanmalıdır.

[Görsel: GORSEL: Hreflang return tag ve canonical tag ilişkisini gösteren teknik diyagram]

Next.js / React İmplementasyonu

Modern web uygulamalarında hreflang uygulaması, framework''ün sunduğu araçlarla yapılmalıdır. Next.js App Router kullanıyorsanız, generateMetadata fonksiyonu ile hreflang etiketlerini dinamik olarak oluşturabilirsiniz:

```typescript

// app/[locale]/products/page.tsx

import { Metadata } from ''next'';

const locales = [''tr'', ''en'', ''de''] as const;

type Locale = (typeof locales)[number];

const localePaths: Record = {

tr: ''/tr/urunler'',

en: ''/en/products'',

de: ''/de/produkte'',

};

export async function generateMetadata({

params,

}: {

params: { locale: Locale };

}): Promise

const baseUrl = ''https://example.com'';

const alternates: Record = {};

for (const locale of locales) {

alternates[locale] = ${baseUrl}${localePaths[locale]};

}

return {

alternates: {

canonical: ${baseUrl}${localePaths[params.locale]},

languages: {

...alternates,

''x-default'': ${baseUrl}${localePaths.en},

},

},

};

}

```

Next.js''in Metadata API''si, alternates.languages nesnesini otomatik olarak etiketlerine dönüştürür. Bu yaklaşımın avantajları:

  • Tip güvenliği — TypeScript ile derleme zamanında hata yakalama
  • Merkezi yönetim — dil/yol eşlemeleri tek bir yerde tanımlanır
  • Otomatik canonical — alternates.canonical ile canonical tag da yönetilir
  • SSR uyumluluğu — sunucu tarafında render edilir, bot''lar sorunsuz okur

Dinamik Rotalar İçin

Ürün, blog veya kategori gibi dinamik sayfalar için hreflang URL''lerini veritabanından çekmeniz gerekir:

```typescript

// app/[locale]/blog/[slug]/page.tsx

export async function generateMetadata({

params,

}: {

params: { locale: string; slug: string };

}): Promise

const baseUrl = ''https://example.com'';

const post = await getPostBySlug(params.slug, params.locale);

if (!post?.translations) return {};

const languages: Record = {};

for (const translation of post.translations) {

languages[translation.locale] = ${baseUrl}/${translation.locale}/blog/${translation.slug};

}

languages[''x-default''] = languages[''en''] ?? Object.values(languages)[0];

return {

alternates: {

canonical: ${baseUrl}/${params.locale}/blog/${params.slug},

languages,

},

};

}

```

next-intl Kütüphanesi İle

next-intl gibi uluslararasılaşma kütüphaneleri kullanıyorsanız, hreflang yönetimi daha da kolaylaşır:

```typescript

// i18n.ts

import { getRequestConfig } from ''next-intl/server'';

export default getRequestConfig(async ({ locale }) => ({

messages: (await import(./messages/${locale}.json)).default,

}));

// middleware.ts

import createMiddleware from ''next-intl/middleware'';

export default createMiddleware({

locales: [''tr'', ''en'', ''de''],

defaultLocale: ''en'',

localePrefix: ''always'',

alternateLinks: true, // Otomatik hreflang etiketleri

});

```

alternateLinks: true ayarı, next-intl''in her sayfa için otomatik olarak hreflang etiketlerini oluşturmasını sağlar.

XML Sitemap ile Hreflang Yönetimi

Büyük ölçekli siteler için XML sitemap yöntemi en pratik yaklaşımdır. Next.js''te programatik sitemap oluşturma örneği:

```typescript

// app/sitemap.ts

import { MetadataRoute } from ''next'';

interface PageTranslation {

locale: string;

path: string;

lastModified: Date;

}

interface PageGroup {

translations: PageTranslation[];

}

export default async function sitemap(): Promise {

const baseUrl = ''https://example.com'';

const pageGroups: PageGroup[] = await getAllPageGroups();

const entries: MetadataRoute.Sitemap = [];

for (const group of pageGroups) {

const languages: Record = {};

for (const translation of group.translations) {

languages[translation.locale] = ${baseUrl}${translation.path};

}

if (languages[''en'']) {

languages[''x-default''] = languages[''en''];

}

for (const translation of group.translations) {

entries.push({

url: ${baseUrl}${translation.path},

lastModified: translation.lastModified,

alternates: { languages },

});

}

}

return entries;

}

```

Bu yaklaşım, Next.js''in yerleşik sitemap oluşturucusunu kullanarak otomatik olarak hreflang etiketlerini XML sitemap''e ekler.

Ham XML Sitemap Oluşturma

Framework bağımsız bir çözüm gerekiyorsa, hreflang sitemap''i şu şablonla oluşturabilirsiniz:

```xml

xmlns:xhtml="http://www.w3.org/1999/xhtml">

https://example.com/tr/urunler/widget-a/

2026-03-01

href="https://example.com/tr/urunler/widget-a/" />

href="https://example.com/en/products/widget-a/" />

href="https://example.com/de/produkte/widget-a/" />

href="https://example.com/en/products/widget-a/" />

```

Kritik nokta: xmlns:xhtml="http://www.w3.org/1999/xhtml" ad alanı bildirimi zorunludur. Bu bildirimi atlarsanız, xhtml:link elemanları geçersiz XML olarak değerlendirilir ve tüm hreflang tanımlarınız yok sayılır.

Hreflang Hata Ayıklama ve Doğrulama

Hreflang uygulamasında hatalar son derece yaygındır. Ahrefs''in 2023 araştırmasına göre, çok dilli sitelerin %75''inden fazlasında hreflang hataları bulunmaktadır. Bu hataları tespit etmek ve düzeltmek için aşağıdaki araçları ve yöntemleri kullanın.

Google Search Console — International Targeting Raporu

Search Console''daki "International Targeting" raporu, algılanan hreflang hatalarını listeler. Ancak dikkat edin: bu rapor yalnızca Google''ın taradığı ve işlediği sayfalar için veri gösterir. Tüm sayfalarınız taranmamışsa, rapor eksik olacaktır.

Kontrol adımları:

  1. Search Console → International Targeting → Language sekmesi
  2. "Errors" bölümünde listelenen URL''leri inceleyin
  3. Yaygın hata türleri: "No return tag", "Unknown language code", "Non-matching canonical"

Screaming Frog ile Hreflang Denetimi

Screaming Frog''un hreflang denetim özelliği en kapsamlı araçlardan biridir:

  1. Configuration → Spider → Extraction → Hreflang''ı etkinleştirin
  2. Tüm siteyi tarayın
  3. Reports → Hreflang → Hreflang All raporunu inceleyin
  4. Özellikle "Missing Return Links", "Inconsistent Language", "Non-Canonical Hreflang" hatalarını kontrol edin

Ahrefs Site Audit

Ahrefs''in Site Audit aracı, hreflang hatalarını otomatik olarak tespit eder:

  • Missing reciprocal hreflang tags
  • Hreflang pointing to non-canonical URLs
  • Hreflang and lang mismatch
  • Missing self-referencing hreflang
  • Hreflang pointing to redirected URLs

Manuel Doğrulama Süreci

Otomatik araçlara ek olarak, kritik sayfalarınız için manuel doğrulama yapın:

```bash

Sayfanın hreflang etiketlerini çekin

curl -s https://example.com/tr/urunler/ | grep -i "hreflang"

HTTP header yöntemi kullanılıyorsa

curl -sI https://example.com/tr/dosya.pdf | grep -i "link.*hreflang"

Her alternatif URL''nin return tag''ini doğrulayın

curl -s https://example.com/en/products/ | grep -i "hreflang=\"tr\""

```

Yaygın Hreflang Hataları ve Çözümleri

Hata 1: Eksik Return Tag

Sorun: A sayfası B''yi referans ediyor ama B, A''yı referans etmiyor.

Çözüm: Tüm dil versiyonlarının hreflang listelerini senkronize edin. Her sayfa, gruptaki tüm alternatifleri (kendisi dahil) listelemelidir.

Önleme: Hreflang etiketlerini merkezi bir veri kaynağından (veritabanı, CMS, API) oluşturun. Manuel ekleme hataya çok açıktır.

Hata 2: Yanlış Dil Kodu

Sorun: hreflang="uk" (Ukrayna ülke kodu) yerine hreflang="uk" kullanmak. Doğru Ukraynaca dil kodu uk''dir ancak İngiliz İngilizcesi için en-GB kullanılmalıdır, en-UK geçersizdir.

Çözüm: ISO 639-1 dil kodları ve ISO 3166-1 Alpha-2 bölge kodları referans tablolarını kullanın. Sık yapılan hatalar:

  • en-UK → doğrusu en-GB (Birleşik Krallık''ın ISO kodu GB)
  • zh-ZH → doğrusu zh-CN veya zh-TW
  • iw → doğrusu he (İbranice eski kodu)

Hata 3: Self-Referencing Tag Eksikliği

Sorun: Sayfa, alternatiflerini listelerken kendisini dahil etmiyor.

Çözüm: Her hreflang grubunda, sayfanın kendisine işaret eden bir etiket mutlaka bulunmalıdır.

Hata 4: HTTP/HTTPS Protokol Tutarsızlığı

Sorun: Site HTTPS kullanıyorken hreflang URL''lerinde HTTP protokolü bulunuyor.

Çözüm: Tüm hreflang URL''lerini HTTPS olarak güncelleyin. Canonical URL''ler ile tutarlı olmalıdır.

Hata 5: Trailing Slash Tutarsızlığı

Sorun: Canonical URL https://example.com/tr/urunler/ (slash ile) iken hreflang URL''si https://example.com/tr/urunler (slash olmadan).

Çözüm: Sitenizde trailing slash politikanızı belirleyin ve tüm URL''lerde tutarlı uygulayın. Next.js''te trailingSlash: true veya false ayarıyla bunu kontrol edebilirsiniz.

Hata 6: Yönlendirilen URL''lere Hreflang İşaret Etme

Sorun: Hreflang etiketinde belirtilen URL, 301 veya 302 yönlendirmesi içeriyor.

Çözüm: Hreflang URL''leri her zaman nihai hedefe (200 yanıt veren URL''ye) işaret etmelidir. Yönlendirme zinciri varsa, nihai URL''yi kullanın.

Hata 7: Noindex Sayfaya Hreflang İşaret Etme

Sorun: Hreflang ile referans verilen sayfa noindex meta etiketi veya X-Robots-Tag header''ı içeriyor.

Çözüm: Noindex sayfaları hreflang gruplarından çıkarın. Arama motoru noindex sayfayı indekslemeyeceği için, o sayfanın hreflang ilişkileri anlamsızlaşır.

İleri Düzey Hedefleme Stratejileri

Dil-Yalnız vs. Dil+Bölge Hedefleme

Dil-yalnız hedefleme (hreflang="en"): İngilizce konuşan tüm kullanıcılara aynı içerik sunulur. ABD, İngiltere, Avustralya ayrımı yapılmaz.

Dil+bölge hedefleme (hreflang="en-US", hreflang="en-GB"): Aynı dili konuşan farklı bölgelere özelleştirilmiş içerik sunulur. Para birimi, yazım farklılıkları (color/colour), yerel ifadeler farklılaştırılır.

Ne zaman bölgesel hedefleme kullanmalısınız:

  • E-ticaret: Fiyatlar, para birimleri, kargo bilgileri bölgeye göre değişiyorsa
  • İçerik farklılıkları: Yazım, terminoloji veya yerel referanslar belirgin şekilde farklıysa
  • Yasal gereklilikler: Bölgeye özgü yasal bilgiler, vergi oranları varsa

Ne zaman yalnız dil hedefleme yeterlidir:

  • Blog/bilgi siteleri: İçerik evrensel, bölgesel fark yok
  • SaaS: Ürün tüm bölgelerde aynı, yalnızca dil değişiyor

Bölgesel Kademeli Hedefleme (Fallback)

Bazı bölgeler için özel içerik varken diğerleri için genel dil versiyonu kullanılabilir:

```html

```

Google, bölgesel bir eşleşme bulamadığında dil-yalnız versiyona, onu da bulamadığında x-default''a döner.

Büyük Ölçekli Hreflang Yönetimi

50+ dil ve binlerce sayfa içeren siteler için hreflang yönetimi ciddi bir mühendislik problemidir:

Veritabanı Odaklı Yaklaşım: Çeviri ilişkilerini veritabanında translation_group gibi bir alan ile yönetin. Hreflang etiketlerini bu veriden otomatik oluşturun. Bu yaklaşım, SEOctopus''un da kullandığı yöntemdir.

Sitemap Segmentasyonu: Dil bazında ayrı sitemap dosyaları oluşturun (sitemap-tr.xml, sitemap-en.xml). Her sitemap''te yalnızca o dilin URL''leri ve hreflang alternatifleri yer alır.

CI/CD Entegrasyonu: Her dağıtımda hreflang doğrulama testleri çalıştırın. Return tag kontrolü, dil kodu doğrulama ve canonical tutarlılığını otomatik olarak test edin.

İzleme ve Alerting: Hreflang hatalarını düzenli olarak tarayın. SEOctopus, otomatik hreflang denetimi ile eksik return tag''leri, yanlış dil kodlarını ve canonical uyumsuzluklarını tespit ederek raporlar.

Hreflang ve AI Arama Motorları

2026 itibarıyla yapay zekâ destekli arama motorlarının (ChatGPT Search, Perplexity, Google AI Overviews) hreflang etiketlerini nasıl işlediği önemli bir sorudur.

Google AI Overviews: Google''ın AI özetleri, geleneksel arama sonuçlarıyla aynı indeksi kullanır. Dolayısıyla hreflang etiketleri, AI Overviews sonuçlarında da bölgesel ve dilsel içerik seçimini etkiler.

ChatGPT Search ve Perplexity: Bu platformlar kendi tarayıcılarıyla web''i indeksler. Hreflang etiketlerini doğrudan işleme konusunda resmi bir belgeleri yoktur. Ancak bu platformlar, kullanıcının dilini algılayarak ilgili içeriği sunmaya çalışır. Doğru hreflang yapılandırması, bu platformların doğru dil versiyonunu keşfetmesini kolaylaştırır.

Pratik etki: Hreflang, AI arama motorları için doğrudan bir sıralama sinyali olmasa da, sitenizin çok dilli yapısının doğru anlaşılmasına katkı sağlar. Yapısal veri ne kadar net olursa, AI platformlarının doğru içeriği sunma olasılığı o kadar artar.

Hreflang Uygulama Kontrol Listesi

Aşağıdaki kontrol listesini her hreflang uygulamasında kullanın:

Temel Kontroller:

  • [ ] Her hreflang etiketi geçerli ISO 639-1 dil kodu kullanıyor mu?
  • [ ] Bölge kodları ISO 3166-1 Alpha-2 standardına uygun mu?
  • [ ] Tüm URL''ler mutlak (tam) URL mi?
  • [ ] Protokol (HTTP/HTTPS) tüm URL''lerde tutarlı mı?
  • [ ] Trailing slash tüm URL''lerde tutarlı mı?

Return Tag Kontrolü:

  • [ ] Her sayfa kendi dilini (self-referencing) listeliyor mu?
  • [ ] Her A→B referansı için B→A return tag''i var mı?
  • [ ] x-default tanımlanmış mı?
  • [ ] x-default sayfası da tüm alternatifleri listeleliyor mu?

Canonical Uyumu:

  • [ ] Hreflang URL''leri canonical URL''lerle eşleşiyor mu?
  • [ ] Cross-language canonical kullanılmıyor mu?
  • [ ] Hreflang, yönlendirilen URL''lere işaret etmiyor mu?
  • [ ] Hreflang, noindex sayfaları referans etmiyor mu?

Araç Doğrulaması:

  • [ ] Search Console International Targeting''de hata yok mu?
  • [ ] Screaming Frog hreflang denetimi temiz mi?
  • [ ] Ahrefs Site Audit hreflang bölümünde sorun yok mu?
  • [ ] Manuel curl testi ile return tag''ler doğrulandı mı?

Sürekli İzleme:

  • [ ] Haftalık hreflang denetimi planlandı mı?
  • [ ] Yeni sayfa eklendiğinde hreflang güncellemesi otomatik mi?
  • [ ] Silinen/yönlendirilen sayfaların hreflang''leri temizleniyor mu?

Sonuç

Hreflang teknik uygulaması, uluslararası SEO''nun en hata yapılan alanıdır. Spesifikasyonu basit gibi görünse de, return tag zorunluluğu, canonical uyumu, dil kodu doğruluğu ve URL tutarlılığı gibi birçok teknik detay, uygulamayı karmaşık hale getirir. Bu rehberdeki yöntemleri, kod örneklerini ve kontrol listesini kullanarak hreflang yapılandırmanızı sağlam temeller üzerine kurabilirsiniz.

Temel prensipleri özetleyelim: tek bir uygulama yöntemi seçin ve tutarlı kullanın, return tag''leri asla ihmal etmeyin, canonical URL''ler ile hreflang URL''lerini senkronize tutun, hreflang etiketlerini merkezi bir kaynaktan otomatik oluşturun ve düzenli denetimler yapın. SEOctopus, bu kontrollerin büyük bölümünü otomatikleştirerek çok dilli sitelerinizin hreflang sağlığını sürekli izlemenize yardımcı olur.

İlgili Yazılar

Markanızın AI Görünürlüğünü Takip Edin

ChatGPT, Perplexity ve diğer AI arama motorlarında markanızın nasıl göründüğünü keşfedin.