cd ..
Teknik SEO

Canonical Tag (Rel=Canonical) Nedir?

Canonical Tag (Kurallı Etiket), web sitenizdeki birbirine çok benzeyen, aynı içeriği farklı URL parametreleriyle sunan veya birebir kopya olan sayfalar arasından arama motorlarına ve Yapay Zeka (LLM) Ajanlarına "Asıl referans alınması gereken ana/orijinal sayfa (Master Copy) budur" mesajını veren kritik bir HTML kodudur. Geleneksel SEO'da "Kopya İçerik (Duplicate Content)" cezalarından kaçınmak için icat edilmiş olsa da, günümüz RAG (Retrieval-Augmented Generation) mimarisinde botların halüsinasyon görmesini engelleyen en temel Ground Truth (Mutlak Doğru) sinyallerinden biri haline gelmiştir.

Neden Ortaya Çıktı? (Duplicate Content Sorunu)

Bir e-ticaret siteniz olduğunu düşünün. Kullanıcılar kırmızı bir tişörte bakıyor. URL'niz şöyle olabilir: /erkek-kirmizi-tisort. Ancak kullanıcılar fiyatı "Artan" şeklinde sıraladığında URL değişir: /erkek-kirmizi-tisort?sort=price_asc. İçerik %100 aynı olmasına rağmen URL değiştiği için, Google ve YZ botları bunları iki farklı sayfa olarak görür.

Eğer Canonical etiketle "Asıl sayfa /erkek-kirmizi-tisort'tür" demezseniz, botlar aynı içeriği defalarca tarayarak Tarama Bütçenizi (Crawl Budget) israf ederler. Dahası, iki sayfa kendi arasında "anahtar kelime yamyamlığına (Keyword Cannibalization)" girer ve SEO otoriteniz ikiye bölünür.

LLMO ve AEO'da Canonical'ın Hayati Önemi

Halüsinasyon (Hallucination) Önleme

Yapay zeka modelleri (ChatGPT, Claude), internetteki verileri "Embeddings (Vektörler)" şeklinde okuyup hafızalarına atarlar. Eğer sitenizde Canonical etiket yoksa, RAG botu bir ürünün 5 farklı filtre URL'sini 5 farklı ürün gibi vektörleştirir. Bu da, YZ'nin kullanıcıya tavsiyede bulunurken (AEO) yanlış linki (Referral) vermesine, fiyatı yanlış okumasına veya "Bu sitede 5 tane aynı kırmızı tişörtten var" diye halüsinasyon görmesine sebep olur.

Atıf (Citation) Otoritesini Konsolide Etmek

GEO (Generative Engine Optimization) stratejisinde amaç, markanızın linkinin LLM cevaplarında tıklanabilir bir referans (Source [1]) olarak çıkmasıdır. Canonical etiket, parçalanmış tüm URL otoritelerini tek bir Merkez URL'de toplar. Böylece YZ, markanıza atıf yaparken en temiz ve en yüksek otoriteye sahip o tekil linki seçer.

Next.js 15+ Mimarilerinde Canonical Etiket Kurgusu

Modern Javascript framework'lerinde Canonical etiketleri statik bırakılmaz, SSR (Server-Side Rendering) anında dinamik olarak üretilmelidir. Next.js App Router yapısında Canonical URL atamak için sayfa başındaki generateMetadata fonksiyonu kullanılır:

// app/blog/[slug]/page.tsx
import { Metadata } from 'next';

export async function generateMetadata({ params }): Promise<Metadata> {
  const { slug } = await params; // Next.js 15 Promise çözümü
  const baseUrl = "https://intent.com.tr";
  
  return {
    title: 'Harika Bir Makale',
    alternates: {
      canonical: `${baseUrl}/blog/${slug}`,
      languages: {
        'en-US': `${baseUrl}/en/blog/${slug}`,
      },
    },
  };
}

Bu mimariyi kurduğunuzda, kullanıcı veya Googlebot /blog/ornek-yazi?utm_source=twitter şeklinde sitenize girse dahi, kaynak kodunda (DOM) Canonical etiket daima tertemiz bir şekilde https://intent.com.tr/blog/ornek-yazi olarak kalacaktır. Bu, mükemmel SEO'nun görünmez kurallarından biridir.

İlgili Araçlar & Çözümler

Sistem mimarisindeki bu bileşeni test etmek veya optimize etmek için entegre araçlarımızı çalıştırabilirsiniz: