Arama motorlarına hangi URL’nin “asıl” sayfa olduğunu söylemek için kullanılan canonical etiketi, teknik SEO’nun en güçlü ve en sık yanlış uygulanan araçlarından biridir. Duplicate content sorunlarından kaynaklanan sıralama kayıplarını önler, link juice’u doğru sayfada toplar ve crawl bütçesini verimli kullanmanızı sağlar.
Bu rehberde canonical etiketi nedir sorusundan başlayarak ileri düzey senaryolara — cross-domain canonical, sayfalama, URL parametreleri ve çakışan sinyaller — kadar her konuyu örneklerle ele alacağız.
Canonical Etiketi Nedir?
Canonical etiketi (teknik adıyla rel="canonical" bağlantı öğesi), bir web sayfasının HTML <head> bölümüne ya da HTTP yanıt başlığına eklenen ve Google başta olmak üzere tüm büyük arama motorlarına “bu içeriğin tercih edilen, yetkili sürümü şu URL’dir” mesajını ileten bir HTML öğesidir.
2009 yılında Google, Bing ve Yahoo tarafından ortak bir standart olarak duyurulan canonical, bugün hâlâ teknik SEO’nun temel taşlarından biridir.
Temel Kullanımı
<link rel="canonical" href="https://www.orneksite.com/urun/kirmizi-sneaker/" />
Bu tek satır, sayfa içeriğinin özgün kaynağını tanımlar. Arama motorları bu sinyali okur ve sıralama değerini canonical URL’ye yönlendirir.
Neden Canonical Etiketi Gereklidir?
Web siteleri farkında olmadan aynı içeriği birden fazla URL üzerinden yayınlar. Bunun başlıca nedenleri şunlardır:
- Oturum kimlikleri (
?sessionid=abc123) - Sıralama ve filtreleme parametreleri (
?renk=kirmizi&boyut=42) - UTM izleme parametreleri (
?utm_source=newsletter) wwwilewwwsiz URL farklarıhttpilehttpskarışıklığı- Trailing slash farkları (
/urun/vs/urun) - Baskı sayfaları (
/print/) - Mobil ön eki olan URL’ler (
m.orneksite.com)
Tüm bu durumlarda Google, aynı içeriği farklı URL’lerde görür. Duplicate content (yinelenen içerik) olarak değerlendirilen bu durum iki somut zarara yol açar:
- Sıralama gücü bölünür. Aynı içeriğe gelen backlinkler farklı URL’lere dağılır; hiçbiri tek başına yeterince güçlü sinyal oluşturamaz.
- Crawl bütçesi israf edilir. Google botları aynı içeriği defalarca tarar; yeni ve değerli sayfalar geri planda kalır.
Canonical etiketi, bu sorunların tamamına tek bir direktifle yanıt verir.
HTML Head’e Canonical Nasıl Eklenir?
En yaygın yöntem, sayfanın <head> bölümüne <link> etiketi eklemektir:
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<title>Kırmızı Sneaker | Örnek Site</title>
<link rel="canonical" href="https://www.orneksite.com/urun/kirmizi-sneaker/" />
</head>
<body>
...
</body>
</html>
Dikkat Edilmesi Gereken Kurallar
hrefdeğeri her zaman tam ve mutlak URL olmalıdır. Göreli yollar (/urun/kirmizi-sneaker/) bazı tarayıcılarda farklı yorumlanabilir.<head>içinde yalnızca bir canonical etiketi bulunmalıdır. Birden fazla varsa Google ikisini de görmezden gelebilir.- Canonical etiketi
<body>içine konulmamalıdır; arama motorları bu etiketi geçersiz sayar. - URL büyük-küçük harf duyarlıdır.
orneksite.com/Urun/ileorneksite.com/urun/arama motorları için farklı adreslerdir.
HTTP Header ile Canonical
HTML <head> yöntemine ek olarak, canonical sinyali HTTP yanıt başlığı aracılığıyla da iletilebilir. Bu yöntem özellikle PDF dosyaları, CSV indirmeleri ve HTML olmayan belgeler için kullanışlıdır.
Sunucu yanıt başlığı şu biçimde gönderilir:
Link: <https://www.orneksite.com/rapor.pdf>; rel="canonical"
Apache sunucusunda .htaccess üzerinden bu başlık şöyle eklenir:
<FilesMatch "rapor\.pdf">
Header set Link '<https://www.orneksite.com/rapor.pdf>; rel="canonical"'
</FilesMatch>
Nginx’te ise:
location ~* \.pdf$ {
add_header Link '<https://www.orneksite.com/rapor.pdf>; rel="canonical"';
}
HTML Head vs HTTP Header: Hangisini Kullanmalı?
| Kriter | HTML <head> | HTTP Header |
|---|---|---|
| Uygulama kolaylığı | Yüksek | Orta (sunucu erişimi gerekir) |
| HTML sayfalar için destek | Tam | Tam |
| HTML dışı dosyalar için destek | Yok | Tam |
| CMS entegrasyonu | Çoğu CMS destekler | Manuel yapılandırma gerekebilir |
| Hata riski | Düşük | Orta (yapılandırma hatası olasılığı) |
Çoğu durumda HTML <head> yöntemi yeterlidir ve öncelikle tercih edilmelidir.
Self-Referencing Canonical Nedir?
Self-referencing canonical (öz referanslı canonical), bir sayfanın kendi URL’sini canonical olarak işaret etmesidir. Yani sayfa hem içeriği sunan hem de “benim asıl URL’im benim” diyen sayfadır.
<!-- https://www.orneksite.com/blog/seo-rehberi/ sayfasında -->
<link rel="canonical" href="https://www.orneksite.com/blog/seo-rehberi/" />
Neden Gereklidir?
Bir sayfanın duplicate olmadığı durumlarda bile self-referencing canonical eklemek önerilir. Nedeni şudur:
- Birisi sayfanıza
?ref=twittergibi bir parametreyle gelen bir URL’yi paylaşabilir. Canonical, Google’ın bu parametreli URL yerine asıl URL’yi indekslemesini sağlar. - Google, canonical sinyali olmayan sayfalarda “kanonikleştirmeyi” kendisi yapar. Kendi tercihi sizin beklentinizle örtüşmeyebilir.
- İçeriğiniz başka siteler tarafından izinsiz kopyalanırsa ve o sayfalar canonical olarak sizi işaret etmezse, self-referencing canonical özgünlüğünüzü pekiştirir.
Her Sayfaya Self-Referencing Canonical Eklemeli misiniz?
Evet. SEO en iyi uygulamaları kapsamında her sayfanın — blog yazıları, ürün sayfaları, kategori sayfaları dahil — bir self-referencing canonical etiketine sahip olması önerilir. Çoğu modern CMS (WordPress, Shopify, Webflow) bunu otomatik olarak yapar; ancak bunu doğrulamak her zaman akıllıca bir adımdır.
Teknik SEO hizmetimizde canonical denetimi, site genelindeki tüm sayfaları kapsayacak biçimde gerçekleştirilmektedir.
Cross-Domain Canonical Nedir?
Cross-domain canonical (alan adları arası canonical), bir sayfanın başka bir alan adındaki URL’yi canonical olarak işaret etmesidir. Bu senaryo en çok şu durumlarda karşılaşılır:
- İçerik sendikasyon anlaşmaları (bir makalenin birden fazla yayın organında yayınlanması)
- Marka birleşmeleri ve alan adı geçişleri
- Bölgesel site sürümleri arasındaki içerik tekrarı
Örnek Senaryo
Diyelim ki ornekblog.com’da yayınlanan bir makale, haberpaneli.com adlı bir haber portalında da yayınlanıyor. Haberpaneli.com, içeriğin özgün kaynağına atıfta bulunmak için şunu kullanır:
<!-- haberpaneli.com/ekonomi/seo-nedir sayfasında -->
<link rel="canonical" href="https://www.ornekblog.com/blog/seo-nedir/" />
Bu etiket, Google’a “bu içeriğin asıl sahibi ornekblog.com’dur, sıralama gücünü oraya ver” mesajını iletir.
Cross-Domain Canonical’ın Riskleri
- Google bu sinyali bir öneri olarak değerlendirir, zorunluluk olarak değil. Eğer Google iki domain arasındaki ilişkiyi güvenilir bulmuyorsa sinyali görmezden gelebilir.
- Yanlış yapılandırılmış bir cross-domain canonical, kendi sitenizin sıralama değerini rakiplerinize aktarabilir.
- Bir 301 yönlendirmesi genellikle daha güçlü bir sinyaldir; kalıcı domain taşımalarında canonical yerine 301 tercih edilmelidir.
Sayfalama (Pagination) ile Canonical Kullanımı
E-ticaret kategorileri, blog arşivleri ve forum listeleri gibi sayfalanmış içerik dizilerinde canonical yönetimi özellikle karmaşıklaşır.
Eski Yaklaşım: rel=prev / rel=next
Google 2019’a kadar rel="prev" ve rel="next" etiketlerini destekliyordu. O tarihten itibaren bu etiketlere artık sıralama sinyali olarak değer vermediğini açıkladı. Ancak Bing hâlâ bu etiketleri desteklemektedir.
Güncel Yaklaşım: Her Sayfalama Sayfasına Self-Referencing Canonical
Google’ın güncel önerisi, her sayfalama sayfasının kendisini canonical olarak işaret etmesidir:
<!-- /kategori/ayakkabi/?sayfa=2 sayfasında -->
<link rel="canonical" href="https://www.orneksite.com/kategori/ayakkabi/?sayfa=2" />
Bu yaklaşımda her sayfa bağımsız olarak indekslenir ve kendi sıralaması vardır.
Yanlış Yaklaşım: Tüm Sayfalama Sayfalarını Birinci Sayfaya Yönlendirmek
<!-- /kategori/ayakkabi/?sayfa=3 sayfasında YANLIŞ kullanım -->
<link rel="canonical" href="https://www.orneksite.com/kategori/ayakkabi/" />
Bu yaklaşım Google’a 2., 3., 4. sayfaların duplicate olduğunu söyler. Google bu sayfaları indekslemeyebilir; dolayısıyla o sayfalardaki ürünler ve bağlantılar crawl bütçesinden çıkarılabilir. Yalnızca ilk sayfada bulunan ürünler ve içerikler görünür olur.
Doğru Senaryo: “Hepsini Görüntüle” Sayfası Varsa
Eğer /kategori/ayakkabi/tumu/ gibi tüm ürünleri tek sayfada listeleyen bir URL varsa ve bu sayfa sayfalanmış versiyonlarla tamamen örtüşen içeriğe sahipse, o zaman tüm sayfalama sayfalarından bu tek sayfaya canonical yönlendirmesi mantıklı olabilir:
<!-- /kategori/ayakkabi/?sayfa=2 ve sonraki sayfalarda -->
<link rel="canonical" href="https://www.orneksite.com/kategori/ayakkabi/tumu/" />
Ancak bu yaklaşım yalnızca “tümünü göster” sayfası hem teknik olarak sağlam hem de hız açısından uygunsa uygulanmalıdır.
URL Parametreleri ve Canonical
URL parametreleri duplicate content’in en yaygın kaynaklarından biridir. Aşağıdaki URL’lerin hepsi aynı içeriği gösteriyor olabilir:
https://www.orneksite.com/urun/kirmizi-sneaker/
https://www.orneksite.com/urun/kirmizi-sneaker/?renk=kirmizi
https://www.orneksite.com/urun/kirmizi-sneaker/?renk=kirmizi&boyut=42
https://www.orneksite.com/urun/kirmizi-sneaker/?utm_source=instagram&utm_medium=story
https://www.orneksite.com/urun/kirmizi-sneaker/?sessionid=XYZ789
Her sayfalı URL için canonical etiketi temiz URL’ye yönlendirmelidir:
<!-- Yukarıdaki tüm URL varyantlarında kullanılacak canonical -->
<link rel="canonical" href="https://www.orneksite.com/urun/kirmizi-sneaker/" />
Parametre Türlerine Göre Yaklaşım
| Parametre Türü | Örnek | Canonical Yaklaşımı |
|---|---|---|
| UTM izleme | ?utm_source=google | Temiz URL’ye yönlendir |
| Oturum kimliği | ?sessionid=abc | Temiz URL’ye yönlendir |
| Sıralama | ?sirala=fiyat-artan | Kategori sayfasına yönlendir |
| Renk/boyut filtresi | ?renk=mavi | Ürüne veya kategoriye göre karar ver |
| Sayfalama | ?sayfa=2 | Self-referencing veya tüm-sayfa canonical |
| İçeriği değiştiren parametre | ?dil=en | Self-referencing (farklı içerik) |
Google Search Console’daki URL Parametreleri aracı (artık eski arayüzde mevcut), Google’ın belirli parametreleri nasıl işlediğini yapılandırmanıza olanak tanır. Ancak bu aracın yerini büyük ölçüde canonical etiketleri almıştır.
Çakışan Canonical Sinyalleri
Canonical etiketinin en tehlikeli tarafı, diğer SEO sinyalleriyle çakışabilmesidir. Çakışan sinyaller Google’ı karıştırır ve canonical direktifinizi geçersiz kılabilir.
301 Yönlendirme ile Canonical Çakışması
Senaryo: /eski-sayfa/ → 301 → /yeni-sayfa/
Ama /eski-sayfa/ üzerindeki canonical → /baska-sayfa/
Bu durumda Google hangi sinyali dinleyeceğini bilemez. 301 yönlendirme her zaman canonical etiketinden daha güçlüdür. Çakışmalardan kaçının: bir URL zaten başka bir yere 301 yönlendiriyorsa, o URL üzerinde canonical etiketi taşıması gerekmez.
Sitemap ile Canonical Çakışması
XML sitemap’iniz, canonical olarak işaretlemediğiniz URL’leri içeriyorsa Google’a çelişkili bir mesaj göndermiş olursunuz. Sitemap yalnızca canonical URL’leri içermelidir.
<!-- sitemap.xml - Doğru kullanım: yalnızca canonical URL'ler -->
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.orneksite.com/urun/kirmizi-sneaker/</loc>
<lastmod>2026-07-01</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
</urlset>
Hreflang ile Canonical Çakışması
Çok dilli sitelerde hreflang ve canonical birlikte kullanılır. Her dil sürümü kendi URL’sini canonical olarak işaret etmeli, hreflang ise dil/bölge varyantlarını birbirine bağlamalıdır.
<!-- Türkçe sayfa: tr.orneksite.com/urun/kirmizi-sneaker/ -->
<link rel="canonical" href="https://tr.orneksite.com/urun/kirmizi-sneaker/" />
<link rel="alternate" hreflang="tr" href="https://tr.orneksite.com/urun/kirmizi-sneaker/" />
<link rel="alternate" hreflang="en" href="https://en.orneksite.com/product/red-sneaker/" />
<link rel="alternate" hreflang="x-default" href="https://en.orneksite.com/product/red-sneaker/" />
Yaygın hata: tüm dil sürümlerini tek bir “varsayılan” dil URL’sine canonical etmek. Bu, diğer dil sayfalarının indekslenmesini engeller.
noindex ile Canonical Çakışması
Bir sayfada hem noindex hem de canonical bulunması çelişkilidir. noindex etiketi Google’a “bu sayfayı indeksleme” derken, canonical “bu sayfayı tercih et” der. Bu durumda Google genellikle noindex sinyalini önceliklendirir ve canonical işleme alınmaz.
<!-- YANLIŞ: Aynı sayfada noindex + canonical -->
<meta name="robots" content="noindex" />
<link rel="canonical" href="https://www.orneksite.com/kategori/ayakkabi/" />
Eğer bir sayfayı indekslemek istemiyorsanız, o sayfadan başka bir sayfaya canonical yönlendirmek yerine doğrudan noindex kullanın veya sayfayı robots.txt ile engelleyin.
Yaygın Canonical Hataları
Canonical etiketini doğru yapılandırmak görünürde basit gibi görünse de pratikte pek çok yaygın hata karşımıza çıkar.
Hata 1: Canonical Etiketi Hiç Olmamak
Özellikle el yapımı statik sitelerde veya eski CMS kurulumlarında hiç canonical etiketi bulunmayabilir. Bu durumda Google, duplicate URL’ler arasında kanonikleştirmeyi kendisi yapar; ve bu tercih her zaman site sahibinin beklentisiyle örtüşmez.
Çözüm: Tüm sayfa türleri için en azından self-referencing canonical ekleyin.
Hata 2: Göreli URL Kullanımı
<!-- YANLIŞ: Göreli URL -->
<link rel="canonical" href="/urun/kirmizi-sneaker/" />
<!-- DOĞRU: Mutlak URL -->
<link rel="canonical" href="https://www.orneksite.com/urun/kirmizi-sneaker/" />
Göreli URL’ler tarayıcı tarafından base URL’ye göre çözümlenir; ancak farklı bot uygulamalarında bu çözümleme tutarsız sonuçlar doğurabilir. Her zaman tam URL kullanın.
Hata 3: Birden Fazla Canonical Etiketi
<!-- YANLIŞ: Çift canonical -->
<link rel="canonical" href="https://www.orneksite.com/urun/kirmizi-sneaker/" />
<link rel="canonical" href="https://www.orneksite.com/kategori/ayakkabi/" />
Google bu durumda her iki etiketi de geçersiz sayabilir ve kanonikleştirmeyi tamamen kendi başına yapar. CMS eklentileri ve tema dosyaları zaman zaman birbiriyle örtüşen canonical etiketleri üretebilir; bu durum denetimle tespit edilebilir.
Hata 4: Canonical’ın Farklı Protokol/Alt Domain’e İşaret Etmesi
<!-- YANLIŞ: http ile canonical, ama site https'e geçmiş -->
<link rel="canonical" href="http://www.orneksite.com/urun/kirmizi-sneaker/" />
<!-- YANLIŞ: www olmayan URL canonical, ama tercih www -->
<link rel="canonical" href="https://orneksite.com/urun/kirmizi-sneaker/" />
Canonical URL, sitenizin tercih edilen sürümüyle (https + www veya https + www’suz) tam olarak eşleşmelidir. Google Search Console’da tercih edilen alan adını doğrulayın ve canonical’larınızın bununla tutarlı olduğundan emin olun.
Hata 5: Yönlendirilen URL’ye İşaret Eden Canonical
<!-- YANLIŞ: canonical, 301 ile başka yere yönlendiren bir URL'yi işaret ediyor -->
<link rel="canonical" href="https://www.orneksite.com/eski-kategori/ayakkabi/" />
Canonical’ın işaret ettiği URL’nin zincir yönlendirme içermemesi gerekir. Canonical, her zaman son ve erişilebilir URL’yi göstermelidir.
Hata 6: Canonical Zinciri
Sayfa A → canonical → Sayfa B → canonical → Sayfa C
Bu “canonical zinciri” yapısından kaçının. Google zinciri takip edebilir; ancak her ekstra adım sinyali zayıflatır. Mümkünse tüm zinciri tek adıma kısaltın: Sayfa A → canonical → Sayfa C.
Hata 7: JavaScript ile Canonical Eklemek
// YANLIŞ: Canonical'ı JavaScript ile dinamik olarak enjekte etmek
document.querySelector('head').innerHTML +=
'<link rel="canonical" href="https://www.orneksite.com/urun/">';
Google, JavaScript’i her sayfada anında çalıştırmaz. Canonical mutlaka HTML kaynak kodunda, sayfa yüklendiğinde zaten mevcut olmalıdır. JavaScript render gecikmesi, Google’ın canonical sinyalini hiç görmemesine yol açabilir.
Google’ın Canonical’ı Her Zaman Kabul Edeceğinin Garantisi Var mı?
Hayır. Google, canonical etiketini bir direktif (kesin emir) değil, bir sinyal (ipucu) olarak değerlendirir. Google şu durumlarda canonical sinyalinizi görmezden gelebilir:
- Canonical URL, taranabilir ve erişilebilir değilse
- Canonical URL’nin içeriği, işaret ettiği sayfadan çok farklıysa
- İçerik kalitesi düşükse (arama motoru, içeriğin duplicate olduğuna zaten karar vermişse)
- Çok daha güçlü ters sinyaller varsa (örneğin, canonical URL’nin robots.txt ile engellenmiş olması)
Google’ın kendi canonical seçimini neden yaptığını anlamak için Search Console’daki “Google tarafından seçilen kanonik URL” raporunu incelemek gerekir.
Search Console’da Canonical Raporu
Google Search Console, canonical etiketlerini doğrulamak için vazgeçilmez bir araçtır.
URL İnceleme Aracı
Herhangi bir URL için şu adımları izleyin:
- Search Console’a giriş yapın
- Sol menüden “URL İnceleme”yi seçin
- İncelemek istediğiniz URL’yi girin
- ”Dizin oluşturma kapsamı” bölümünü açın
Bu bölümde iki kritik bilgi görürsünüz:
- Kullanıcı tarafından bildirilen kanonik: Canonical etiketinizde ne yazdığı
- Google tarafından seçilen kanonik: Google’ın gerçekte hangi URL’yi canonical saydığı
Bu iki değer eşleşmiyorsa bir sorun var demektir.
Dizine Ekleme Kapsamı Raporu
Search Console → Dizine Ekleme → Sayfalar bölümünde, “Yinelenen sayfa, Google tarafından farklı bir kanonik seçildi” veya “Kullanıcı tarafından seçilen kanonik sayfa değil” gibi durumları görebilirsiniz. Bu uyarılar, canonical yapılandırmanızda tutarsızlıklar olduğuna işaret eder.
| Search Console Durumu | Olası Neden | Çözüm |
|---|---|---|
| Google tarafından farklı kanonik seçildi | İçerik kalitesi düşük veya çelişkili sinyaller | İçeriği güçlendirin, çelişkili sinyalleri temizleyin |
| Kullanıcı tarafından seçilen kanonik değil | Canonical URL erişilebilir değil | Canonical URL’nin 200 döndürdüğünü doğrulayın |
| Yinelenen sayfa, kanonik yok | Self-referencing canonical eksik | Tüm sayfalara canonical ekleyin |
| Dizine eklenmedi, robots.txt tarafından engellendi | Canonical URL robots.txt’de bloke | robots.txt’yi düzeltin |
Canonical Denetimi İçin Araçlar
Kendi sitenizin canonical yapılandırmasını hızlıca denetlemek için Canonical Tag Oluşturucu ve Denetim Aracımızı kullanabilirsiniz. Bu araç, herhangi bir URL’nin canonical etiketini anında kontrol etmenizi sağlar.
CMS Platformlarında Canonical Yönetimi
WordPress
WordPress için Yoast SEO veya Rank Math eklentileri, her sayfaya otomatik olarak self-referencing canonical ekler. Özel bir canonical ayarlamak için:
Yoast SEO ile:
- Sayfa/yazı düzenleme ekranına gidin
- Yoast SEO bloğunu açın
- ”Gelişmiş” sekmesini seçin
- ”Canonical URL” alanına tercih edilen URL’yi girin
Yoast aynı zamanda arama parametrelerini (?s=kelime) ve arşiv sayfalarını (/tag/, /author/) otomatik olarak yönetir.
Shopify
Shopify, ürün ve koleksiyon sayfaları için canonical etiketlerini otomatik olarak yönetir. Ancak tema özelleştirmelerinde dikkat edilmesi gereken bir kural vardır:
{%- comment -%}
Shopify canonical - theme.liquid veya layout dosyasında
{%- endcomment -%}
<link rel="canonical" href="{{ canonical_url }}" />
Shopify’da {{ canonical_url }} değişkeni, Liquid tarafından otomatik olarak doldurulur. Tema dosyanızda bu değişkenin iki kez çağrılmadığına dikkat edin.
Statik Site Üreticileri (Astro, Next.js, Gatsby)
Statik site üreticilerinde canonical etiketleri genellikle sayfa bileşenlerinin <head> bölümünde programatik olarak oluşturulur:
---
// Astro bileşeni örneği
const canonicalURL = new URL(Astro.url.pathname, Astro.site);
---
<head>
<link rel="canonical" href={canonicalURL} />
</head>
Bu yaklaşım, canonical URL’nin her zaman sitenin base URL’si ile tutarlı olmasını sağlar.
E-Ticaret Sitelerinde Canonical Stratejisi
E-ticaret siteleri canonical sorunlarının en yoğun yaşandığı platformlardır. Birkaç kritik senaryo:
Varyant Sayfaları
Aynı ürünün renk veya boyut varyantları ayrı URL’lere sahipse ve içerikleri büyük ölçüde örtüşüyorsa:
/urun/sneaker-kirmizi/ → canonical: /urun/sneaker/
/urun/sneaker-mavi/ → canonical: /urun/sneaker/
/urun/sneaker-yesil/ → canonical: /urun/sneaker/
Ancak dikkat: eğer her varyant sayfasının kendi SEO değeri varsa (özellikle renk bazlı arama hacmi mevcutsa), self-referencing canonical daha uygun olabilir.
Birden Fazla Kategori Yolundaki Ürünler
Bir ürün birden fazla kategoride listeleniyorsa farklı URL yolları oluşabilir:
/kategori/ayakkabi/sneaker/kirmizi-sneaker/
/kategori/erkek-giyim/ayakkabi/kirmizi-sneaker/
/kategori/indirim/kirmizi-sneaker/
Bu durumda tek bir “asıl” URL seçilir ve diğerleri bu URL’ye canonical ile yönlendirilir:
<!-- /kategori/indirim/kirmizi-sneaker/ sayfasında -->
<link rel="canonical" href="https://www.orneksite.com/kategori/ayakkabi/sneaker/kirmizi-sneaker/" />
Filtreli Kategori Sayfaları
Renk, beden, marka gibi filtreler uygulandığında oluşan URL’ler:
/kategori/ayakkabi/?renk=kirmizi&marka=nike&beden=42&sirala=fiyat-artan
Bu URL’nin canonical’ı, filtrelerin içerik açısından anlamlı olup olmadığına göre belirlenir:
- Filtre kombinasyonu yalnızca sıralama/görünüm değişikliği yapıyorsa → Ana kategori URL’ye yönlendir
- Filtre kombinasyonu gerçekten özgün bir içerik oluşturuyorsa (örneğin belirli bir marka + kategori sayfası SEO hedefliyorsa) → Self-referencing canonical
Canonical Etiketini Test Etme ve Doğrulama
1. Sayfa Kaynağını İncelemek
Tarayıcıda Ctrl+U (Windows) veya Cmd+Option+U (Mac) kısayoluyla sayfa kaynağını açın. <head> bölümünde şunu arayın:
rel="canonical"
2. Tarayıcı Geliştirici Araçları
Chrome DevTools → Elements → <head> → canonical etiketini bulun. Bu yöntem, JavaScript ile eklenen canonical etiketlerini de gösterir.
3. curl ile HTTP Header Canonical Kontrolü
curl -I https://www.orneksite.com/rapor.pdf | grep -i "link:"
4. Google Search Console URL İnceleme Aracı
Yukarıda açıklandığı şekilde URL İnceleme aracını kullanın. Bu, Google’ın gerçekte ne gördüğünü raporlar — kaynak kodunuzdaki değil.
5. Screaming Frog SEO Spider
Screaming Frog ile site genelinde canonical denetimi yapabilirsiniz:
- Canonical Tag sütunu: Her URL’nin canonical etiketini gösterir
- Canonical Tag Mismatch: Canonical URL ile gerçek URL’nin uyuşmadığı durumları listeler
- Canonical Points to Redirect: Canonical URL’nin yönlendirme içerdiğini bildirir
- Multiple Canonicals: Aynı sayfada birden fazla canonical olduğunu gösterir
Canonical ile noindex Arasındaki Fark
Canonical ve noindex etiketleri zaman zaman karıştırılır; ancak amaçları ve etkileri birbirinden temelden farklıdır.
| Özellik | rel="canonical" | noindex |
|---|---|---|
| Amacı | Tercih edilen URL’yi bildirir | Sayfanın indekslenmesini engeller |
| İçerik indekslemesi | İşaret ettiği URL indekslenir | Sayfa hiç indekslenmez |
| Link juice aktarımı | Canonical URL’ye aktarılır | Aktarım olmaz |
| Tarama devam eder mi | Evet, Google sayfayı taramaya devam edebilir | Evet, taranabilir ama indekslenmez |
| Kullanım amacı | Duplicate URL yönetimi | Gizli kalması gereken sayfalar |
noindex, test sayfaları, kullanıcı paneli içerikleri, dahili arama sonuç sayfaları gibi kamuya açık olmaması gereken içerikler için kullanılır. Canonical ise her zaman kamuya açık, erişilebilir bir URL’ye işaret etmelidir.
Canonical Etiketi ve PageRank Konsolidasyonu
Duplicate sayfalar olmasa bile canonical’ın SEO’ya katkısı vardır: PageRank (link juice) konsolidasyonu.
Bir içerik farklı URL’lerden erişilebiliyorsa ve farklı harici linkler bu URL’lerin farklı versiyonlarına geliyorsa, tüm bu linklerin sağladığı otorite bölünür. Canonical, bu dağınık otorite parçalarını tek bir URL’de toplar.
Örneğin:
http://orneksite.com/blog/seo-nedir→ 5 harici linkhttps://orneksite.com/blog/seo-nedir→ 12 harici linkhttps://www.orneksite.com/blog/seo-nedir→ 8 harici link
Bu üç URL, gerçekte aynı içeriği sunuyor. Canonical etiketiyle https://www.orneksite.com/blog/seo-nedir tercih edildiğinde, toplam 25 linkin sağladığı otorite bu tek URL’de birleşir. Bu, ilgili anahtar kelimelerde sıralama gücünü somut biçimde artırır.
Canonical Etiketi ve Crawl Bütçesi İlişkisi
Büyük e-ticaret siteleri ve haber portalları için crawl bütçesi kritik bir SEO kaynağıdır. Google botlarının belirli bir sürede tarayabileceği sayfa sayısı sınırlıdır; duplicate sayfaların gereksiz yere taranması, yeni ve değerli içeriklerin geri planda kalmasına neden olur.
Canonical etiketleri, Google’a “bu URL’yi taramanı gerekmeyebilir; asıl URL şu” mesajını iletir. Ancak canonical bir indexing direktifi değil, bir sinyaldir. Google yine de canonical olmayan URL’leri tarayabilir.
Daha güçlü bir crawl bütçesi kontrolü için canonical + robots.txt veya canonical + noindex kombinasyonu kullanılabilir. Ancak her iki yöntemin de birlikte ne anlama geldiğini yukarıda açıkladık — çelişkili yapılandırmalardan kaçının.
Canonical Etiketinde Sıkça Sorulan Sorular
Canonical etiketi 301 yönlendirmesinin yerini tutabilir mi?
Hayır. Canonical, Google’a bir öneri sunar; 301 yönlendirmesi ise kesin bir direktiftir. Kalıcı URL değişikliklerinde veya domain taşımalarında mutlaka 301 kullanın. Canonical yalnızca duplicate content yönetimi için uygundur.
Canonical etiketi olmayan bir sayfa Google tarafından otomatik olarak kanonikleştirilir mi?
Evet. Google, canonical sinyali olmayan sayfalar arasında “kanonikleştirme” işlemini kendi algoritmalarıyla gerçekleştirir. Bu otomatik seçim ise her zaman site sahibinin tercihiyle örtüşmez. Dolayısıyla canonical etiketini kendiniz kontrol altına almanız her zaman daha güvenlidir.
Canonical etiketi eklemek sayfanın içeriğini değiştirir mi?
Hayır. Canonical etiketi yalnızca <head> bölümünde yer alır ve sayfa içeriğini, görünümünü ya da kullanıcı deneyimini hiçbir şekilde etkilemez. Yalnızca arama motoru botlarına yönelik bir sinyaldir.
Tüm canonical etiketlerimi self-referencing yaparsam ne olur?
Bu, siteniz için en güvenli temel yapılandırmadır. Tüm sayfalar kendi URL’lerini canonical olarak işaret ettiğinde, duplicate içerik karışıklığı olmaz. Yalnızca gerçekten duplicate olan sayfalar için başka bir URL’ye yönlendirmeniz gerekir.
Canonical etiketi ekledim, ancak Google hâlâ farklı bir URL’yi canonical kabul ediyor. Ne yapmalıyım?
Önce şu kontrolleri yapın: (1) Canonical URL 200 HTTP kodu döndürüyor mu? (2) Canonical URL robots.txt ile engelleniyor mu? (3) Aynı sayfada birden fazla canonical var mı? (4) Canonical URL, işaret ettiği içerikle tutarlı mı? Search Console URL İnceleme aracıyla süreci gözlemleyin; Google’ın canonical seçimini değiştirmesi birkaç tarama döngüsü alabilir.
Özet: Canonical Etiketi En İyi Uygulamaları
Tüm konuları bir araya getiren temel kurallar şunlardır:
- Her sayfaya en az self-referencing canonical ekleyin — duplicate olmayan sayfalar bile bu uygulamadan yararlanır.
- Her zaman tam (mutlak) URL kullanın — göreli yollar kullanmayın.
- Tek bir canonical etiketine sahip olun — birden fazla canonical etiketi Google’ı yanıltır.
- Canonical URL’nin 200 döndürdüğünü doğrulayın — yönlendirilen veya hata veren URL’lere işaret etmeyin.
- Sitemap’inizi canonical URL’lerle senkronize edin — yalnızca tercih edilen URL’leri sitemap’e ekleyin.
- 301 yönlendirmeyle çakışmayın — zaten yönlendirilen URL’ler için canonical gereksizdir; kalıcı birleşmelerde canonical yerine 301 kullanın.
- Search Console’u düzenli inceleyin — Google’ın seçtiği canonical ile sizin işaret ettiğiniz URL’nin eşleşip eşleşmediğini kontrol edin.
- Sayfalama için her sayfaya self-referencing canonical ekleyin — tüm sayfalama sayfalarını ilk sayfaya yönlendirmek içerik erişilebilirliğini kısıtlar.
Canonical etiketinin doğru yapılandırılması, özellikle büyük ve karmaşık sitelerde teknik SEO denetiminin vazgeçilmez bir parçasıdır. Teknik SEO danışmanlığı kapsamında yürüttüğümüz canonical denetimlerinde, sitelerin büyük çoğunluğunda yukarıda sayılan hatalardan en az ikisine rastlıyoruz.
Kendi sitenizin canonical yapılandırmasını hemen kontrol etmek istiyorsanız Canonical Tag Aracımızı kullanabilirsiniz; herhangi bir URL’nin canonical durumunu anında görüntüleyebilirsiniz.