Google Neden Farklı Canonical Seçiyor? Sinyal Çakışmalarını Teşhis Etme
Google'ın seçtiği canonical ile sayfanın rel="canonical" etiketi farklıysa Google, sayfayı başka bir URL'nin kopyası veya varyasyonu olarak değerlendirmiş olabilir. Canonical bir tercih sinyalidir; Google bunu içerik, redirect, sitemap ve iç bağlantılarla birlikte değerlendirebilir. Teşhis, yalnızca head içindeki tek etiketi okumakla tamamlanmaz.
Canonical conflict matrix
| Durum | Bildirilen canonical | İç linkler | Sitemap URL | Redirect | İçerik benzerliği | Muhtemel sinyal çatışması | Önerilen aksiyon |
|---|---|---|---|---|---|---|---|
| A — tutarlı | /a | çoğunlukla /a | /a | yok | aynı varlık | Düşük; sinyaller hizalı | /a self-canonical olarak koru |
| B — link/sitemap ters | /a | çoğunlukla /b | /b | yok | yüksek | Keşif ve tercih sinyali /b'yi gösterir | İç link ve sitemap'i /a ile hizala |
| C — canonical redirect'e gidiyor | /a | /a | /a | /a → /b | yüksek | Canonical hedefi doğrudan erişilebilir değil | Canonical, link ve sitemap'i /b yap |
| D — diğer URL daha güçlü | /a | /b daha güçlü | /a | yok | yüksek | /b için daha fazla site içi bağlam vardır | İç linkleri tek hedefte topla, içeriği karşılaştır |
| E — kopya değil | /a | ayrı amaçlar | ayrı | yok | düşük | Canonical iki farklı amacı birleştirmeye çalışır | Sayfaları ayır, self-canonical kullan |
| F — iki 200 near-duplicate | /a | karışık | /a ve /b | yok | çok yüksek | Birden fazla consolidation sinyali çakışır | Birincil URL seç, diğerini 301 veya sitemap dışı bırak |
Bu tablo bir sıralama ağırlığı iddia etmez. Google'ın canonical dokümanında redirect, canonical link ve sitemap'in sinyal olarak birlikte kullanılabileceği; hiçbir tek yöntemin garanti olmadığı açıklanır.
Tam bir çakışma vakası
Kampanya parametresi içeriği değiştirmiyorsa:
URL A: https://example.com/urun?ref=ig
URL B: https://example.com/urun
Hatalı sistemin üç katmanı:
<!-- URL A'nın server HTML'si -->
<link rel="canonical" href="https://example.com/urun">
<!-- sitemap.xml -->
<url><loc>https://example.com/urun?ref=ig</loc></url>
<!-- navigation -->
<a href="/urun?ref=ig">Ürün</a>
HTML /urun derken sitemap ve site içi keşif parametreli adresi öne çıkarır. Düzeltilmiş durum:
HTML canonical: https://example.com/urun
sitemap loc: https://example.com/urun
internal links: /urun
HTTP: /urun?ref=ig → /urun (uygunsa 301)
Parametre analitik amacıyla çalışabilir; indekslenecek URL'nin kalıcı sinyallerde aynı olması gerekir.
Google canonical etiketini neden yok sayabilir?
Google birden fazla sinyali birlikte değerlendirebilir. Canonical /a iken navigasyon ve breadcrumb /b'ye bağlanıyor, sitemap /b içeriyor, /a redirect veriyor veya iki URL farklı amaçlara sahipse bildirilen canonical tek başına beklenen sonucu üretmeyebilir. Buradan kesin bir ağırlık veya sıralama formülü çıkarmayın; önce sinyalleri kaydedin ve URL'lerin kullanıcı açısından aynı kaynak olup olmadığını kararlaştırın.
Sinyal tutarlılığı kontrolü
canonical
internal links
sitemap loc
redirect hedefleri
hreflang (kullanılıyorsa)
structured data url / @id
navigation ve breadcrumb
duplicate içerik stratejisi
hreflang yoksa eklemeyin. JSON-LD içindeki url veya mainEntityOfPage başka bir URL'yi gösteriyorsa bunu da audit kaydına dahil edin.
Uygulama ve audit sırası
- URL A ve URL B için
curl -Ive kaynak HTML alın. - Canonical, status ve ana H1'i kaydedin.
- Sitemap
<loc>değerlerini parametre ve trailing-slash biçimiyle karşılaştırın. - Menü, breadcrumb, hub ve makale iç linklerinin gerçek href değerlerini tarayın.
- Redirect zincirini doğrudan hedefe kadar izleyin.
- İçeriğin aynı varlık mı, farklı arama amacı mı olduğunu okuyarak kararlaştırın.
- Search Console URL Inspection'ta Google-selected canonical sonucunu diğer katmanlarla birlikte yorumlayın.
Önce tek bir tercih edilen URL seçin; sonra HTML, sitemap, redirect, structured data ve iç linkleri o seçime göre aynı anda doğrulayın. Canonical çatışmaları için Next.js App Router canonical rehberi uygulama katmanındaki kontrol noktalarını gösterir.