Blog · 27 Ekim 2026

Yapılandırılmış Veri Nedir? Schema.org ve JSON-LD ile Zengin Sonuçlar

Yapılandırılmış veri, bir sayfadaki bilginin ne anlama geldiğini arama motorlarına standart bir biçimde anlatan koddur. Örneğin bir sayfadaki "1.250 TL" ifadesinin bir ürünün fiyatı, "4,7" ifadesinin ortalama değerlendirme puanı olduğunu makinenin okuyabileceği şekilde belirtir. Google bu işaretlemeyi sayfayı daha iyi anlamak ve uygun olduğunda arama sonuçlarında yıldız, fiyat, breadcrumb gibi ek bilgiler içeren zengin sonuçlar göstermek için kullanır.

Bu rehberde yapılandırılmış verinin nasıl çalıştığını, schema.org sözlüğünü, üç işaretleme biçimi arasındaki farkı, en çok kullanılan türleri, doğrulama araçlarını ve sitelerin en sık düştüğü hataları uygulamalı örneklerle anlatıyoruz.

Yapılandırılmış veri neden gerekli?

Bir insan bir ürün sayfasına baktığında başlığın ürün adı, büyük puntolu rakamın fiyat, yıldızların müşteri puanı olduğunu hemen anlar. Arama motoru ise sayfayı HTML kodu ve metin olarak okur. Gelişmiş dil anlama yeteneklerine rağmen, hangi sayının fiyat, hangi tarihin yayın tarihi, hangi adresin işletmenin adresi olduğunu kesin olarak bilmesi her zaman mümkün değildir. Yapılandırılmış veri bu belirsizliği ortadan kaldırır.

Pratik faydaları şöyle özetlenebilir:

Önemli bir not: Yapılandırılmış veri doğrudan bir sıralama faktörü olarak tanımlanmaz. Kötü bir sayfayı işaretleme ile üst sıralara taşıyamazsınız. Değeri, zaten iyi olan bir sayfanın arama sonuçlarında daha anlaşılır ve daha dikkat çekici görünmesini sağlamasındadır.

Schema.org nedir?

Schema.org, Google, Microsoft, Yahoo ve Yandex tarafından ortaklaşa başlatılan, yapılandırılmış veri için ortak bir sözlüktür. Bu sözlük, web'de anlatılabilecek şeyleri türler (type) ve bu türlerin özellikleri (property) olarak tanımlar.

Türler bir hiyerarşi içinde düzenlenmiştir. En üstte Thing (şey) bulunur; altında Organization, Person, Place, Product, CreativeWork, Event gibi geniş türler yer alır. Bunların da alt türleri vardır: LocalBusiness hem Organization hem de Place türünden özellik alır; Dentist ya da Restaurant ise LocalBusiness altındaki daha özel türlerdir. Alt tür, üst türün tüm özelliklerini miras alır.

Her türün kullanabileceği özellikler sözlükte listelenir. Örneğin Product türü için name, image, description, brand, offers ve aggregateRating gibi özellikler kullanılabilir. Bir özelliğin değeri basit bir metin olabileceği gibi başka bir tür de olabilir: offers özelliğinin değeri, kendi içinde fiyat ve para birimi barındıran bir Offer nesnesidir.

Schema.org ile Google gereksinimleri aynı şey değildir

Schema.org sözlüğü yüzlerce tür ve özellik içerir, ancak Google bunların yalnızca bir kısmını zengin sonuçlar için destekler. Ayrıca Google, desteklediği her zengin sonuç türü için hangi özelliklerin zorunlu, hangilerinin önerilen olduğunu kendi geliştirici belgelerinde ayrıca belirtir. Schema.org açısından geçerli olan bir işaretleme, Google'ın zengin sonuç gereksinimlerini karşılamayabilir. Bu yüzden işaretleme yazarken iki kaynağa birlikte bakmak gerekir: türlerin ve özelliklerin tanımı için schema.org, zengin sonuç uygunluğu için Google Arama Merkezi belgeleri.

JSON-LD, Microdata ve RDFa: Hangi biçimi kullanmalı?

Schema.org sözlüğü üç farklı sözdizimiyle sayfaya eklenebilir. Üçü de Google tarafından desteklenir, ancak Google mümkün olduğunda JSON-LD kullanılmasını önerir.

BiçimNasıl eklenir?ArtısıEksisi
JSON-LDSayfaya ayrı bir script bloğu olarak eklenirHTML'den bağımsızdır, okunması ve bakımı kolaydır, dinamik olarak üretilebilirGörünen içerikle senkron tutulmazsa veri ile sayfa arasında tutarsızlık oluşabilir
MicrodataMevcut HTML etiketlerine itemscope, itemtype, itemprop nitelikleri eklenirİşaretleme görünen içeriğin üzerinde durduğu için tutarsızlık riski düşüktürŞablon değişikliklerinde kolayca bozulur, iç içe yapılarda karmaşıklaşır
RDFaHTML etiketlerine vocab, typeof, property nitelikleri eklenirFarklı sözlüklerle birlikte kullanılabilirMicrodata ile benzer bakım zorlukları vardır, yaygınlığı daha düşüktür

Yeni bir projede JSON-LD tercih etmemek için güçlü bir neden yoktur. Tüm işaretleme tek bir blokta durur, tasarım ekibi HTML'i değiştirdiğinde işaretleme bozulmaz ve içerik yönetim sisteminden gelen verilerle otomatik olarak üretilebilir. Aynı sayfada birden fazla JSON-LD bloğu bulunabilir; örneğin bir blok Organization, diğeri BreadcrumbList için kullanılabilir.

Basit bir JSON-LD örneği

Aşağıdaki örnek, bir blog yazısı için Article işaretlemesidir. Bu blok genellikle sayfanın head bölümüne ya da body içinde herhangi bir yere eklenir:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Yapılandırılmış Veri Nedir?",
  "image": ["https://www.ornek.com/gorseller/kapak.jpg"],
  "datePublished": "2026-10-27T09:00:00+03:00",
  "dateModified": "2026-10-27T09:00:00+03:00",
  "author": {
    "@type": "Person",
    "name": "Ayşe Yılmaz",
    "url": "https://www.ornek.com/yazarlar/ayse-yilmaz"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Örnek Yayın",
    "logo": {
      "@type": "ImageObject",
      "url": "https://www.ornek.com/logo.png"
    }
  }
}
</script>

Bu örnekte dikkat edilmesi gerekenler:

En yaygın yapılandırılmış veri türleri

Her sitenin her türe ihtiyacı yoktur. Hangi türü kullanacağınızı sayfanın gerçekte ne olduğu belirler. Aşağıdaki tablo, Türkiye'deki çoğu site için öncelikli türleri ve tipik kullanım yerlerini özetler.

TürNerede kullanılır?Öne çıkan özellikler
OrganizationAna sayfa veya hakkımızda sayfasıname, url, logo, sameAs, contactPoint
LocalBusinessFiziksel adresi olan işletmelerin ana sayfası veya şube sayfalarıaddress, telephone, openingHoursSpecification, geo, priceRange
ProductE-ticaret ürün detay sayfalarıname, image, offers (price, priceCurrency, availability), brand, sku
Article / BlogPostingBlog yazıları ve haber içerikleriheadline, image, datePublished, dateModified, author
BreadcrumbListKategori yapısı olan her sayfaitemListElement (position, name, item)
FAQPageSoru-cevap içeren sayfalarmainEntity (Question, acceptedAnswer)
Review / AggregateRatingÜrün, hizmet veya işletme değerlendirmeleriratingValue, reviewCount, author

Organization ve LocalBusiness

Organization, işletmenizin kim olduğunu tanımlar. sameAs özelliğinde resmi sosyal medya profillerinizi listelemek, bu profillerin aynı varlığa ait olduğunu belirtir. Fiziksel bir mağazanız, ofisiniz veya kliniğiniz varsa LocalBusiness ya da onun daha özel bir alt türü (Dentist, Restaurant, AutoRepair gibi) daha uygundur. Adres, telefon ve çalışma saatleri bilgisinin Google İşletme Profilinizdeki bilgilerle tutarlı olması önemlidir. Birden fazla şubeniz varsa her şube sayfasına kendi adresiyle ayrı bir LocalBusiness işaretlemesi ekleyin.

Product

E-ticaret siteleri için en değerli türdür. Fiyat, para birimi ve stok durumu offers içinde verilir. Fiyat sayfada değiştiğinde işaretlemenin de aynı anda güncellenmesi gerekir; bu yüzden Product işaretlemesini elle yazmak yerine ürün verisinden otomatik üretmek esastır. Ürün yorumlarınız sitede gerçekten görünüyorsa aggregateRating ve review özellikleri eklenebilir.

Article ve BlogPosting

Haber ve blog içerikleri için kullanılır. Article türü zorunlu bir zengin sonuç sunmasa da, Google'ın başlığı, yayın tarihini, görseli ve yazarı doğru anlamasına yardımcı olur. dateModified değerini yalnızca içerikte anlamlı bir güncelleme yaptığınızda değiştirin; içeriğe dokunmadan tarihi yenilemek yanıltıcıdır.

BreadcrumbList

Sayfanın site hiyerarşisindeki yerini gösterir. Uygulaması en kolay ve neredeyse her siteye uygun türlerden biridir. Her öğenin position numarası ve name değeri sayfada görünen breadcrumb ile aynı olmalıdır. Site mimarisinin aramada nasıl göründüğü konusunu teknik SEO rehberimizde daha geniş ele aldık.

FAQPage ve HowTo hakkında güncel durum

Bir dönem çok yaygın kullanılan SSS (FAQ) ve nasıl yapılır (HowTo) zengin sonuçları, Google tarafından ciddi biçimde kısıtlandı. SSS zengin sonuçları artık yalnızca sınırlı sayıda, genellikle resmi ve yetkili kabul edilen sitelerde gösteriliyor; HowTo zengin sonuçları ise büyük ölçüde kaldırıldı. Bu nedenle bu türleri yalnızca zengin sonuç elde etmek amacıyla eklemek bugün gerçekçi bir beklenti değildir. FAQPage işaretlemesi içeriği doğru tanımladığı sürece sayfada kalabilir ve zarar vermez, ancak öncelik listenizin üst sıralarına koymayın.

Review ve AggregateRating

Değerlendirme yıldızları en dikkat çekici zengin sonuçlardandır, bu yüzden en çok kötüye kullanılan alan da burasıdır. Google'ın yönergeleri, bir işletmenin kendi sitesinde kendisi hakkında topladığı yorumları (kendi kendine hizmet eden değerlendirmeler) LocalBusiness ve Organization için yıldız gösterimine uygun saymaz. Değerlendirme işaretlemesi; ürünler, kitaplar, tarifler, yazılım uygulamaları gibi desteklenen türlerde ve yorumlar sayfada gerçekten göründüğünde kullanılmalıdır.

Adım adım yapılandırılmış veri ekleme

  1. Sayfa türlerini listeleyin. Sitenizdeki şablonları çıkarın: ana sayfa, kategori, ürün, blog yazısı, iletişim, şube sayfası. İşaretleme sayfa sayfa değil, şablon şablon planlanır.
  2. Her şablona tür atayın. Ana sayfaya Organization veya LocalBusiness, ürün şablonuna Product ve BreadcrumbList, blog şablonuna Article ve BreadcrumbList gibi.
  3. Google belgelerinden zorunlu ve önerilen özellikleri kontrol edin. Zorunlu özellikler eksikse zengin sonuç uygunluğu kaybolur; önerilen özellikler ise uygunluğu güçlendirir.
  4. Veriyi kaynağından üretin. İşaretlemeyi şablon koduna veya içerik yönetim sistemine bağlayın, böylece fiyat, başlık ve tarih değiştiğinde otomatik güncellensin.
  5. Önce tek bir sayfada test edin. Zengin Sonuç Testi ile hata ve uyarıları kontrol edin, sonra tüm şablona yayın.
  6. Canlıya aldıktan sonra Search Console'u izleyin. İlgili geliştirme raporlarında geçerli öğe sayısının arttığını ve yeni hata oluşmadığını doğrulayın.

JSON-LD'yi Google Tag Manager ile eklemek mümkündür ve Google bu yolla eklenen işaretlemeyi de okuyabilir. Ancak bu yöntem JavaScript çalıştırılmasına bağlıdır ve sayfa içeriği ile işaretleme arasındaki bağı zayıflatır. Hızlı bir deneme için kullanışlı olabilir; kalıcı çözüm için işaretlemeyi doğrudan sayfa kaynağına eklemek daha güvenilirdir. Etiket yönetimi tarafını Google Tag Manager rehberimizde ayrıntılı anlattık.

Doğrulama araçları

Zengin Sonuç Testi

Google'ın Zengin Sonuç Testi, bir URL'yi veya kod parçasını analiz ederek sayfada hangi zengin sonuç türlerinin algılandığını, bunların uygun olup olmadığını ve hangi hataların ya da uyarıların bulunduğunu gösterir. Testi Googlebot gibi akıllı telefon tarayıcısıyla çalıştırır ve JavaScript ile eklenen işaretlemeyi de görür. Yalnızca Google'ın zengin sonuç olarak desteklediği türleri raporlar; desteklenmeyen bir türü eklediyseniz burada görünmemesi normaldir.

Schema Markup Validator

Schema.org tarafından sunulan Schema Markup Validator, işaretlemenin schema.org sözlüğüne göre sözdizimsel olarak doğru olup olmadığını kontrol eder. Google'a özgü zengin sonuç kurallarını değerlendirmez, ama Google'ın desteklemediği türler dahil tüm schema.org işaretlemesini gösterir. İki aracı birlikte kullanmak en sağlıklı yoldur: biri sözlüğe uygunluğu, diğeri zengin sonuç uygunluğunu denetler.

Search Console geliştirmeler raporları

Test araçları tek bir sayfaya bakar; Search Console ise sitenin tamamını gösterir. Google sitenizde desteklenen bir yapılandırılmış veri türü algıladığında, Search Console'da o türe ait bir rapor (örneğin breadcrumb, ürün snippet'leri, satıcı listeleri gibi) görünür. Bu raporlar geçerli ve geçersiz öğe sayılarını, hata türlerini ve etkilenen örnek URL'leri listeler. Bir hatayı düzelttikten sonra düzeltmeyi doğrulama talebinde bulunabilirsiniz. Raporların yeri ve okunması hakkında daha fazla bilgi için Google Search Console rehberimize bakabilirsiniz.

Ayrıca Performans raporunda arama görünümüne göre filtreleme yaparak zengin sonuç alan sayfaların tıklama oranını diğerleriyle karşılaştırabilirsiniz. SEO Analytics gibi Search Console verisini bağlayan bir panel kullanıyorsanız, işaretleme eklediğiniz sayfaların öncesi ve sonrası CTR değişimini düşük CTR raporlarıyla birlikte izlemek kolaylaşır.

Sık yapılan hatalar

Zengin sonuç garanti değildir

Hatasız ve yönergelere uygun bir işaretleme, zengin sonuç gösterilmesini garanti etmez. Google, zengin sonucun ne zaman gösterileceğine sorguya, cihaza, konuma, sayfanın kalitesine ve sonuç sayfasındaki diğer öğelere göre kendisi karar verir. Aynı sayfa bir sorguda zengin sonuçla, başka bir sorguda standart sonuçla görünebilir. Zengin Sonuç Testi'nde "uygun" ifadesini görmek, sayfanın teknik olarak hazır olduğu anlamına gelir; gösterim kararı yine Google'dadır.

Bu nedenle yapılandırılmış veriyi bir kısayol gibi değil, sayfanın kalitesini makinelere doğru aktaran bir altyapı olarak görün. İçerik zayıfsa, sayfa yavaşsa veya site güven vermiyorsa işaretleme tek başına fark yaratmaz.

Yapılandırılmış veri kontrol listesi

  1. Sitedeki sayfa şablonlarını listeledim ve her birine uygun türü atadım.
  2. İşaretlemeyi JSON-LD biçiminde ekledim.
  3. Google belgelerindeki zorunlu özelliklerin tamamını, önerilen özelliklerin mümkün olanlarını doldurdum.
  4. İşaretlemedeki her bilginin sayfada görünür olduğunu kontrol ettim.
  5. Fiyat, stok, tarih gibi değişken veriler kaynaktan otomatik üretiliyor.
  6. URL'ler mutlak, tarihler saat dilimli ISO 8601 biçiminde, para birimi ISO kodu ile yazıldı.
  7. Örnek sayfaları Zengin Sonuç Testi ve Schema Markup Validator ile doğruladım.
  8. Aynı sayfada çakışan veya tekrarlanan işaretleme bırakmadım.
  9. FAQ ve HowTo işaretlemesinden zengin sonuç beklentisi kurmadım.
  10. Canlıya aldıktan sonra Search Console geliştirmeler raporlarını ve ilgili sayfaların CTR değişimini takvime ekledim.

Sık sorulan sorular

Yapılandırılmış veri sıralamayı yükseltir mi?

Yapılandırılmış veri doğrudan bir sıralama faktörü olarak tanımlanmaz. Sayfanın daha iyi anlaşılmasına ve zengin sonuçlara uygun olmasına yardımcı olur; bu da tıklama oranını artırarak dolaylı olarak trafiğe katkı sağlayabilir.

JSON-LD sayfanın neresine eklenmeli?

JSON-LD bloğu head bölümüne ya da body içinde herhangi bir yere eklenebilir; Google iki konumu da okur. Önemli olan, bloğun sayfa yüklendiğinde mevcut olması ve içerdiği bilgilerin sayfada görünen içerikle tutarlı olmasıdır.

İşaretleme ekledim ama zengin sonuç çıkmıyor, neden?

Önce sayfanın yeniden tarandığından ve Zengin Sonuç Testi'nde hata olmadığından emin olun. Ardından Search Console geliştirmeler raporlarını kontrol edin. Her şey doğruysa beklemek gerekir; Google zengin sonucu her sorguda ve her sayfa için göstermeyi garanti etmez.

Bir sayfaya birden fazla tür eklenebilir mi?

Evet. Bir ürün sayfasında Product ve BreadcrumbList, bir blog yazısında Article ve BreadcrumbList birlikte kullanılabilir. Önemli olan her türün sayfanın gerçek içeriğini tanımlaması ve aynı varlık için çelişen birden fazla blok bulunmamasıdır.

Diğer yazılar

Yapılandırılmış Veri Nedir? Schema.org ve JSON-LD ile Zengin Sonuçlar | SEO Analytics