JSON-LD: Yapılandırılmış Veri Biçimi
Google’ın önerdiği, script tabanlı yapılandırılmış veri biçimi JSON-LD — uygulanması en kolay seçenektir, görünür HTML’ye dokunmaz ve SEO için genellikle schema.org ile eşleştirilir.
Diller
Bu sayfada 1 kanıt sinyali
- İlgili canlı araçSchema Markup Validator
JSON-LD, sayfa içeriğini açıklamak için <script type="application/ld+json"> etiketi içinde yaşayan bir yapılandırılmış veri biçimidir; SEO tarafında genellikle schema.org sözlüğüyle eşleştirilir ancak JSON-LD başka sözlükleri de taşıyabilir. 2014 tarihli bir W3C standardıdır ve Google, Microdata ve RDFa yerine tek bir nedenle bunu önerir: kendi bloğunda durduğu ve görünür HTML’ye hiç dokunmadığı için geniş ölçekte uygulanması ve bakımı en kolay biçimdir. Doğru uygulandığında üç biçimin tümü eşit derecede çalışır. Söz diziminin omurgası @context (çoğu SEO işaretlemesi için sözlük — schema.org, ancak tek geçerli değer değil), @type (varlık) ve @id’dir (varlıkları bağlamak için kullanışlı ama isteğe bağlı kararlı URI — @graph kalıbının temeli; kendisi de zorunlu olmayan geçerli bir düzenleme yoludur). Googlebot JavaScript’i oluşturduğu için dinamik eklenen JSON-LD Google’da çalışır; ancak test edildiği üzere GPTBot ve ClaudeBot dahil bazı AI tarayıcıları JavaScript çalıştırmaz. Bu sağlayıcıya ve tarihe özgüdür, evrensel kural değildir; belirli bir tarayıcı önemliyse doğrudan doğrulayın ve doğrulayamadığınız işaretlemeyi sunucu tarafında oluşturun. Yapılandırılmış veri sıralama sinyali değildir; zengin sonuç uygunluğunu ve varlık anlaşılmasını yönetir ve sayfada gerçekten görünür olan içeriği açıklamalıdır.
TL;DR — JSON-LD, bir sayfanın ne hakkında olduğunu — makale, ürün, tarif — açıkça belirtmek için sayfaya eklediğiniz küçük bir kod bloğudur; arama motorları ve yapay zekâ sistemleri bunu kolayca okuyabilir. Kendi
<script>etiketinde durur ve ziyaretçilerin gördüğü hiçbir şeyi değiştirmez. Google, eklenmesi ve düzenli tutulması en kolay seçenek olduğu için diğer iki biçim yerine bunu önerir. Sıralamanızı yükseltmez ama sonuçlarınızın daha zengin görünmesini sağlayabilir (yıldızlar, fiyatlar, SSS).
JSON-LD nedir?
Bir sayfa yayımladığınızda insan, kelimeleri okuyup “aa, bu muzlu ekmek tarifi” diyebilir. Arama motoru ise bunu kelimelerden tahmin etmek zorundadır. Yapılandırılmış veri, tahmini durdurmanın yoludur — sayfayı makinenin okuyabileceği kodla etiketlersiniz; böylece motorlar bunun tarif olduğunu, yazarın kim olduğunu ve puanın ne olduğunu bilir.
Bu etiketi yazmanın en yaygın yolu JSON-LD’dir. Adı JavaScript Object Notation for Linked Data ifadesinin kısaltmasıdır. Evidence for this claim JSON-LD is a structured-data format that can express Schema.org types and properties in a script block. Scope: Schema.org JSON-LD guidance; JSON-LD is a format, not the vocabulary itself. Confidence: high · Verified: Schema.org: JSON-LD Bunun ne anlama geldiğini bilmeden de kullanabilirsiniz. Pratikte JSON-LD, etiketli gerçekler listesini andıran ve bir <script> etiketinin içine yerleştirilmiş bir kod parçasıdır:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "How to Bake Banana Bread",
"author": { "@type": "Person", "name": "Patrick Stox" },
"datePublished": "2026-06-26"
}
</script>Önemli nokta şu: bu blok sayfanızdaki kelimelerden ayrı yaşar. Ziyaretçilerinizin gördüğü tek bir şeyi bile değiştirmez. Robotlara verilen talimatlardan ibarettir.
Google neden bunu seviyor?
Yapılandırılmış veri yazmanın aslında üç yolu vardır — JSON-LD, Microdata ve RDFa. Diğer ikisi, görünür HTML’nizin içine başlıklarınız ve paragraflarınızla iç içe geçmiş ekstra kodlar serpiştirerek çalışır. JSON-LD ise hepsini tek ve düzenli bir kutuda tutar.
Google’ın JSON-LD’yi önermesinin nedeni budur: eklemesi en kolay, doğru tutması en kolay biçimdir ve bir şeyi bozma olasılığınız çok daha düşüktür. Google’ın ifadesiyle: “the easiest solution for website owners to implement and maintain at scale.” Üç biçimin tümü uygundur — JSON-LD yalnızca hataya en az açık olanıdır.
Evidence for this claim Google Search supports JSON-LD, Microdata, and RDFa and recommends JSON-LD when practical. Scope: Google Search structured-data guidance; supported formats do not guarantee feature eligibility. Confidence: high · Verified: Google: Structured data introductionSizin için gerçekte ne yapar?
İki dürüst gerçek ve bir efsane:
- Arama sonucunuzun daha zengin görünmesini sağlayabilir. Tarif puanları, ürün fiyatları, SSS açılır listeleri ve etkinlik tarihleri, yapılandırılmış veriden gelen “zengin sonuçlardır”.
- Motorların (ve yapay zekânın) içeriğinizi anlamasına yardım eder. Sayfanızı bilinen şeylere — işletmenize, yazara, ürüne — bağlar.
- Sıralamanızı yükseltmez. Efsane budur. JSON-LD eklemek sıralama artışı değildir. Google bunu açıkça ve tekrar tekrar söyledi.
Önemli olan tek kural
Yalnızca sayfada gerçekten bulunan şeyleri işaretleyin. Ziyaretçilere puan gösterilmiyorsa JSON-LD’nizde 5 yıldızlı puan iddia etmeyin. Orada olmayan bir fiyatı açıklamayın. Yapılandırılmış veri görünür sayfayla eşleşmelidir — orada olmayan şeyleri anlatmak kurallara aykırıdır ve zengin sonuçlarınızın kaldırılmasına yol açabilir.
Kesin sürümü — @context / @type / @id söz dizimini, @graph kalıbını, işaretlemenizi AI tarayıcılarından gizleyen JavaScript enjeksiyonu tuzağını ve nasıl doğrulanacağını — mı istiyorsunuz? Advanced sekmesine geçin.
TL;DR — JSON-LD (JavaScript Object Notation for Linked Data), 2014 tarihli bir W3C Önerisidir — JSON üzerine kuruludur ancak onu yalnızca JSON değil bağlantılı veri yapan
@context’tir. Google, geniş ölçekte uygulanması ve bakımı en kolay olduğu için bunu önerir ve görünür HTML’ye hiç dokunmaz; doğru kullanıldığında Microdata ve RDFa da eşit derecede geçerlidir. Söz diziminin omurgası@context(çoğu SEO işaretlemesi için sözlük — schema.org, ancak spesifikasyon başka bağlamlara da izin verir),@type(varlık) ve@id’dir (varlıkları birbirine referanslamak için kullanışlı ama isteğe bağlı kararlı URI —@graph’ın temeli; kendisi de tek geçerli kalıp değildir).<head>veya<body>içine yerleştirebilirsiniz — Google ikisini de kabul eder. Googlebot JS’yi oluşturduğu için dinamik eklenmiş JSON-LD Google’da çalışır; test edildiği üzere GPTBot ve ClaudeBot dahil bazı AI tarayıcıları JS çalıştırmaz, ancak bu sağlayıcıya ve tarihe özgüdür — her AI tarayıcısı için varsaymak yerine doğrudan doğrulayın ve doğrulayamadığınızı sunucu tarafında oluşturun. Yapılandırılmış veri sıralama sinyali değildir — zengin sonuç uygunluğunu ve varlık anlaşılmasını sağlar ve sayfada görünür içeriği açıklamalıdır.
JSON-LD bir sözlük değil, biçimdir
Önce karışıklığın çoğunu gideren bir ayrım: JSON-LD biçimdir; schema.org ise sözlüktür. JSON-LD, işaretlemeyi nasıl yazdığınızdır; schema.org’un Article, Product ve Organization türleri ise ne söylediğinizdir. Zengin sonuçlar her ikisinin üzerine kurulan özellik katmanıdır. Bu sayfa biçim hakkındadır. (Yapay zekâ için sözlük konusu AI için Schema Markup sayfasındadır.)
JSON-LD bir W3C Önerisidir; ilk kez 2014’te yayımlanmıştır — SEO tarafından benimsenmesinden önce gelir ve özellikle arama için değil, web genelinde bağlantılı veri birlikte çalışabilirliği için tasarlanmıştır. @id gibi bir özelliğin var olmasının nedeni budur ve çoğu SEO rehberinin atladığı spesifikasyon düzeyi nokta şudur: JSON-LD yalnızca JSON değildir. JSON söz dizimi üzerine kuruludur ancak veriyi bağlantılı — web genelinde tanımlanabilir ve bağlanabilir — yapan @context bildirimidir. @context’i çıkarırsanız ayrıştırıcının yorumlayamayacağı veriye sahip olursunuz.
JSON-LD’nin schema.org’a bağlı olması da gerekmez. Spesifikasyon, @context’in yayımlanmış herhangi bir sözlüğe referans vermesine izin verir — kendi örnekleri schema.org dışı bağlamlara bağlanır. Bu nedenle JSON-LD “hangi biçim” sorusunun doğru yanıtıdır; schema.org ise “hangi sözlük” sorusunun, arama ve AI arama işaretlemesi için yaygın olan, yanıtlarından biridir. Bir sayfa JSON-LD’yi başka bir sözlükle geçerli biçimde kullanabilir; yalnızca artık schema.org işaretlemesi olmaz.
JSON-LD ve Microdata ve RDFa
Yapılandırılmış veriyi ifade etmenin üç yolu vardır ve Google üçünü de destekler:
| JSON-LD | Microdata | RDFa | |
|---|---|---|---|
| Nerede durur? | Ayrı bir <script> bloğunda | HTML’nizde satır içi itemprop özellikleri | HTML’nizde satır içi property özellikleri |
| Görünür HTML’ye dokunur mu? | Hayır | Evet | Evet |
| JS / etiket yöneticisiyle enjekte edilebilir mi? | Evet (temiz biçimde) | Zahmetli | Zahmetli |
| Google’ın yaklaşımı | Önerilen | Desteklenir | Desteklenir |
| Hataya açıklık | En düşük | Daha yüksek (işaretlemeyle iç içe) | Daha yüksek (işaretlemeyle iç içe) |
Google’ın önerisi açıktır ancak kapsamı dardır: “In general, Google recommends using JSON-LD for structured data if your site’s setup allows it, as it’s the easiest solution for website owners to implement and maintain at scale (in other words, less prone to user errors).”
Rakiplerin genellikle atladığı ve saklamaya değer nüans aynı Google sayfasından gelir: “All 3 formats are equally fine for Google, as long as the markup is valid and properly implemented per the feature’s documentation.” Yani öneri uygulama kolaylığı ve hata oranı hakkındadır; ayrıştırma hızı veya sıralama avantajı hakkında değil. Microdata kullanmak ceza değildir. JSON-LD pratikte yalnızca kazanır, çünkü yapılandırılmış veriyi tasarımcının yarın düzenleyebileceği işaretlemeyle iç içe sokmaz.
Söz dizimi: @context, @type, @id, özellikler, iç içelik
Açıklamalı bir Article bloğu:
<script type="application/ld+json">
{
"@context": "https://schema.org", // the vocabulary — the common value for SEO
"@type": "Article", // the entity type
"@id": "https://example.com/post#article", // a stable URI for this entity
"headline": "How JSON-LD Works", // a property (key/value)
"datePublished": "2026-06-26",
"author": { // a nested entity
"@type": "Person",
"name": "Patrick Stox",
"url": "https://patrickstox.com/"
}
}
</script>@context— anlamsal çerçeveyi (sözlüğü) kurar. schema.org SEO işaretlemesi için genellikle"https://schema.org"kullanılır; ancak bu bir kural değil, uzlaşıdır:@contextterimleri tanımlayıcılara eşler ve spesifikasyon başka sözlüklere işaret etmesine izin verir. Ardından gelen her özellik adının nasıl yorumlanacağını ayrıştırıcıya söyler. Veriyi bağlantılı yapan parça budur.@type— varlığı bildirir:Article,Product,Organization,BreadcrumbListvb. Bir schema.org türüne eşlenir. Uygulanabilir en spesifik türü kullanın — uyuyorsaNewsArticleyerineArticle.@id— kaynağı tanımlayan benzersiz URI’dir. Bir varlığa diğerinden referans vermenizi sağlayan mekanizmadır (aşağıdaki@graph’a bakın) ve çapraz referans vereceğiniz her şeye eklemeye değerdir; ancak her yerde zorunlu değildir. JSON-LD spesifikasyonu tanımlanmamış boş düğümlere izin verir; bu nedenle başka yerde referans vermeniz gerekmeyen varlıklarda@idbulunmayan geçerli JSON-LD olabilir.- Özellikler —
@context’teki sözlük terimlerini kullanan sıradan JSON anahtar/değer çiftleri. - İç içelik — alt varlıklar, iç içe JSON nesneleri (yukarıdaki
authornesnesi) veya nesne dizileri olarak ifade edilir.
@graph kalıbı (ölçeklenebilir yaklaşım)
Çoğu sayfanın birden fazla varlığa ihtiyacı vardır: bir Organization, bir WebSite, bir BreadcrumbList ve makalenin ya da WebPage’in kendisi. Saf yaklaşım, verileri tekrarlayan dört ayrı <script> bloğudur. Ölçeklenebilir alternatif, @id ile birbirine referans veren varlıklar dizisi olan @graph içeren tek bir bloktur. Ne JSON-LD spesifikasyonu ne de Google @graph’ı tek kalıp olarak zorunlu kılar — grafik ifade etmenin söz dizimidir ve başka geçerli düzenler de vardır (ayrı tür blokları, üst düzey @graph olmayan iç içe nesneler, hiç @id içermeyen boş düğümler) — ancak birden çok çapraz referanslı varlığın bulunduğu sitede her sayfada aynı Organization veya WebSite verisini tekrarlamaktan kaçınan kalıptır:
One Organization is referenced as publisher by the WebSite and Article. The WebPage belongs to the WebSite and is connected to the Article. Each entity is declared once, and the same stable ID string is reused for every reference.
© Patrick Stox LLC · CC BY 4.0 ·
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://example.com/#org",
"name": "Example Co",
"url": "https://example.com/"
},
{
"@type": "WebSite",
"@id": "https://example.com/#website",
"url": "https://example.com/",
"publisher": { "@id": "https://example.com/#org" } // reference, not a copy
},
{
"@type": "WebPage",
"@id": "https://example.com/post#webpage",
"isPartOf": { "@id": "https://example.com/#website" },
"breadcrumb": { "@id": "https://example.com/post#breadcrumb" }
}
]
}
</script>Organization’ı bir kez tanımlayın; adı, logosu ve URL’sini tekrarlamak yerine başka her yerde { "@id": "...#org" } ile ona işaret edin. Büyük CMS şema eklentileri çıktılarını böyle oluşturur ve @id’nin var olmasının nedeni budur. Bing de JSON-LD’nin iç içeliği için aynı noktayı belirtir: “makes defining links and relationships between data and entities… easy because it supports nested data.”
Nereye yerleştirilir: <head> veya <body>
Google ikisinin de çalıştığını doğrular — “You can put the JSON-LD data in the <head> or the <body> of the page.” <head> gelenekseldir ancak birçok CMS eklentisi onu <body>’nin sonuna enjekte eder ve bu da uygundur. Bing de sayfanın “header, body or foot” bölümünde durabileceğini kabul eder. Geçerli bir bloğu body’den head’e taşımakla zaman harcamayın; hiçbir şeyi değiştirmez. Evidence for this claim Google permits JSON-LD in either the head or body of an HTML document for supported structured-data features. Scope: Google Search JSON-LD guidance; markup must still match visible page content. Confidence: high · Verified: Google: Structured data introduction
JSON-LD’yi dinamik oluşturmak — ve AI tarayıcısı açığı
JSON-LD’yi JavaScript ile anında oluşturabilirsiniz; Google bunu yapmanın iki yolunu belgeliyor:
Evidence for this claim Dynamically generated structured data is acceptable to Google when it is rendered and complies with content and quality guidelines. Scope: Google Search JavaScript and structured-data guidance; crawlability and rendering remain prerequisites. Confidence: high · Verified: Google: Generate structured data with JavaScript- Google Tag Manager — JSON-LD içeren ve değerleri GTM değişkenlerinden alan Özel HTML etiketi. (Sayfa ile etiket arasındaki veriyi iki kez üretmekten kaçının.)
- Özel JavaScript — script öğesini programlı olarak oluşturun:
Bu, Googlebot için çalışır, çünkü Google sayfayı oluşturur: “Google Search can understand and process structured data that’s available in the DOM when it renders the page.” Şimdiye kadar her şey yolunda.
Çoğu rehberin dikkatinden kaçan noktayı dikkatli biçimde ifade edelim. GPTBot ve ClaudeBot dahil, yaygın olarak test edildiği üzere, bazı AI tarayıcıları JavaScript çalıştırmamıştır. JSON-LD’niz yalnızca istemci tarafı script çalıştıktan sonra varsa JS atlamalı bir tarayıcı onu göremez — Googlebot işaretlemeyi düzgün okusa bile o bot için görünmez; çünkü Google yapılandırılmış veriyi aramadan önce DOM’u oluşturduğunu belgeliyor.
Bu AI tarayıcısı davranışı hakkında iki dürüst uyarı var: Googlebot tarafını Google’ın kendi belgeleri kurar; AI tarayıcısı tarafı, herhangi birinin yayımladığı bir spesifikasyondan değil, tek tek sağlayıcılar hakkındaki test ve raporlardan gelir. Bu nedenle sağlayıcıya ve tarihe özgüdür — tarayıcının JavaScript desteği değişebilir ve ben her sağlayıcıyı doğrudan doğrulamadım. “AI tarayıcıları JS’yi atlar” ifadesini üzerine inşa edilecek evrensel bir kural olarak ele almayın; önem verdiğiniz tarayıcıyı kontrol etmek (veya kontrol edemiyorsanız varsayılan olarak sunucu tarafı oluşturma kullanmak) için bir neden olarak ele alın. Sunucu tarafından oluşturulmuş HTML’de yoksa ve tarayıcının JS çalıştırdığını doğrulamadıysanız göremediğini varsayın. AI arama görünürlüğü için, aksi doğrulanmadıkça JSON-LD’yi statik HTML’ye sunucu tarafında oluşturun. (Bu, yapılandırılmış veri açısından JavaScript oluşturma sorunudur — JavaScript SEO sayfasına bakın.)
E-ticaret için ikinci bir uyarı var: Google, dinamik oluşturulan Product işaretlemesinin “can make Shopping crawls less frequent and less reliable,” olabileceği konusunda uyarır; hızla değişen fiyat ve bulunabilirlik için bu gerçek bir sorundur. Ürünlerde, AI ne olursa olsun sunucu tarafı oluşturmayı tercih edin.
Politikalar (artık bunların yaptırımı var)
Google’ın yapılandırılmış veri yönergeleri kısa ve kritik öneme sahiptir:
- “Don’t mark up content that is not visible to readers of the page.”
- “Don’t mark up irrelevant or misleading content, such as fake reviews.”
- “Put the structured data on the page that it describes.”
- “Use the most specific applicable type and property names defined by schema.org.”
- Yapılandırılmış veri sayfalarınızı robots.txt veya noindex ile Googlebot’a engellemeyin.
Görünür içerik kuralı içselleştirmeniz gereken kuraldır. Sayfada gösterilmeyen içeriği açıklayan şema her zaman ihlaldi; “görünmez” şemaya yönelik uygulama sıkılaştı. Bing uyarıyı açıkça ifade eder: “even though the markup is not visible on your page, it is still read by the search engines, and putting spam data in the markup can hamper your presence.”
Yaygın JSON-LD hataları
- Görünür sayfayla eşleşmeyen işaretleme — politika açısından 1 numaralı sorun (ziyaretçinin görmediği bir puanın JSON-LD’de bulunması).
- Bozuk JSON — sondaki virgül, kaçışlanmamış tırnak veya tüm bloğu sessizce bozan Word akıllı tırnakları (
"yerine"). JSON-LD katıdır. - Yanlış özellik adları — schema.org’da bulunmayan özellikler uydurmak veya gerçek olanları yanlış yazmak; ayrıştırıcı bunları yok sayar.
- Spesifik tür varken genel tür kullanmak —
ThingveyaArticlegerektiğindeRecipeya daNewsArticlekullanmak. - Çelişen ad/logo içeren sayfalar arasında yinelenen ve tutarsız
Organizationblokları. - Hedeflediğiniz zengin sonuç için zorunlu özelliklerin eksik olması (her özellik kendi zorunlu alanlarını listeler).
- Her tarayıcının gördüğünü varsayarak JS-enjekte işaretleme — Google bunu oluşturur ama bazı AI tarayıcıları oluşturmamıştır; yukarıdaki açığı tarayıcı başına doğrulamak gerekir.
JSON-LD’yi doğrulamak
“JSON-LD’m geçerli mi?” başlığı altında dört farklı soru sorulur ve bunlar aynı şey değildir — birini geçmek diğerlerini geçirmez:
| Test | Kanıtladığı şey | Kanıtlamadığı şey |
|---|---|---|
| JSON ayrıştırılır (herhangi bir JSON lint aracı veya Rich Results Test’in ayrıştırma adımı) | Söz dizimi yasal JSON’dır — sondaki virgül, kaçışlanmamış tırnak veya akıllı tırnak bozulması yoktur | Her özellik adının gerçek schema.org sözlüğü olduğunu veya Google’ın bir şey göstereceğini |
| Schema.org Validator | Özellikler ve türler schema.org sözlüğünde vardır | Google’ın bu türü zengin sonuç olarak desteklediğini veya belirli bir özellik için zorunlu alanların bulunduğunu |
| Rich Results Test | İşaretleme, test ettiğiniz oluşturulmuş sayfada belirli bir desteklenen zengin sonuç türünün Google gereksinimlerini karşılar | Google’ın zengin sonucu gerçekten göstereceğini — uygunluk garanti değildir — veya diğer arama/AI sistemlerinin bunu aynı şekilde ayrıştırdığını |
| Google Search Console — Enhancements / zengin sonuç raporları | Google’ın canlı, taranmış sayfalarda gerçek hatalarla gerçekte ayrıştırdığı şey | Gerçek zamanlı durumu — raporlar yeniden taramanın gerisinden gelir |
- JavaScript ile oluşturulan sayfalarda yapıştırılmış kod yerine URL ile test edin. Rich Results Test’in kod girişi modu script’lerinizi çalıştırmaz veya canlı URL testinin yaptığı gibi göreli referansları çözmez — istemci tarafında enjekte edilen bir bloğun oluşturma sonrasında nasıl göründüğünü söyleyemez.
- Bing Webmaster Tools — Markup Validator — Bing, Ağustos 2018’den beri JSON-LD’yi doğrular.
- Bu testlerin hiçbiri JavaScript oluşturmayan tarayıcılar adına konuşmaz (yukarıdaki AI tarayıcısı uyarısı) — oluşturulmuş URL’yi test etmek Google’ın gördüğünü doğrular, JS atlamalı bir botun aldığını değil.
JSON-LD SEO’ya yardım eder mi?
Beklentileri dürüstçe belirleyin:
- Sıralama sinyali değildir. John Mueller yapılandırılmış verinin bir sitenin daha iyi sıralanmasını sağlamayacağını söyledi. Nokta.
- Zengin sonuç uygunluğu. Geliştirilmiş SERP özellikleri (yıldızlar, fiyatlar, SSS, ekmek kırıntıları) için sizi uygun kılan şeydir — uygunluktur, garanti değil.
- Dolaylı olarak CTR. Daha zengin görünen sonuçlar daha fazla tıklama kazanabilir; çoğu site için gerçek getiri budur.
- Varlık anlaşılması. Motorların sayfanızı bilinen varlıklara ve Bilgi Grafiği’ne bağlamasına yardım eder.
- AI araması. Fabrice Canel (Bing), 2025’te şema işaretlemesinin Microsoft’un LLM’lerinin içeriği anlamasına yardım ettiğini doğruladı — ancak AI için Schema Markup sayfasındaki kontrollü çalışma uyarısını unutmayın: bu, doğrudan alıntı kaldıracı değil, anlam ayrımı için altyapıdır.
Yani JSON-LD’yi zengin sonuç uygunluğu, varlık netliği ve AI/LLM anlayışı için uygulayın — sıralama hilesi olarak değil.
Bu makale structured data merkezinin parçasıdır. schema.org sözlüğünün yapay zekâya özgü yorumu için Schema Markup for AI sayfasına; dinamik enjeksiyonun arkasındaki oluşturma mekanikleri için JavaScript SEO sayfasına bakın.
AI özeti
Advanced sürümün kısaltılmış özeti:
- Nedir: JSON-LD (JavaScript Object Notation for Linked Data), bir sözlük değil, yapılandırılmış veri biçimidir —
<script type="application/ld+json">bloğudur. SEO tarafında genellikle schema.org sözlüğüyle eşleştirilir ancak@contextbaşka bir yere de işaret edebilir. 2014’ten beri W3C Önerisidir; JSON üzerine kuruludur ama onu düz JSON değil bağlantılı veri yapan@context’tir. - Google neden öneriyor: “the easiest solution… to implement and maintain at scale” ve görünür HTML’ye hiç dokunmuyor. Ancak doğru olduğunda üç biçimin tümü (JSON-LD, Microdata, RDFa) eşit derecede geçerlidir — avantaj ayrıştırma veya sıralama değil, hata oranıdır.
- Söz dizimi omurgası:
@context(çoğu SEO işaretlemesi için sözlük — schema.org; tek geçerli değer değildir) ·@type(varlık, en spesifik olanı kullanın) ·@id(çapraz referans için kullanışlı, isteğe bağlı kararlı URI; tanımlanmamış boş düğümler de geçerli JSON-LD’dir) · özellikler (anahtar/değer) · iç içelik (nesneler/diziler). @graphkalıbı:@idile çapraz referans verilen varlıklardan oluşan tek blok ve dizi —Organization’ı bir kez tanımlayıp her yerde referans verin. Çok varlıklı sayfalar için ölçeklenebilir yaklaşımdır; spesifikasyon veya Google zorunluluğu değildir, başka geçerli grafik düzenleri de vardır.- Yerleştirme:
<head>veya<body>— Google ikisini de kabul eder; geçerli blokları taşımayın. - Dinamik enjeksiyon + AI uyarısı: Googlebot JS’yi oluşturur, dolayısıyla enjekte edilmiş JSON-LD Google’da çalışır; test edildiği üzere GPTBot ve ClaudeBot dahil bazı AI tarayıcıları JS çalıştırmamıştır. Ancak bu sağlayıcıya ve tarihe özgüdür, evrensel kural değildir; tarayıcı başına doğrulayın ve doğrulayamadığınızı sunucu tarafında oluşturun. Dinamik Product işaretlemesi ayrıca Shopping taramalarının daha seyrek olmasına yol açabilir.
- Politikalar: yalnızca görünür içeriği işaretleyin; sayfayla eşleştirin; en spesifik türü kullanın; sayfayı tarayıcılara engellemeyin. “Görünmez” şema uygulaması sıkılaştı.
- Yaygın hatalar: eşleşmeyen/görünmez işaretleme, bozuk JSON (akıllı tırnaklar, sondaki virgüller), yanlış özellik adları, genel türler, zorunlu özelliklerin eksikliği.
- Doğrulama: birbirinin yerine geçmeyen dört ayrı kontrol (JSON söz dizimi, schema.org sözlüğü, Google zengin sonuç uygunluğu, canlı Search Console ayrıştırması) — Rich Results Test (URL ile, yapıştırılmış kodla değil), Schema.org Validator, GSC Enhancements ve Bing Markup Validator.
- SEO etkisi: sıralama sinyali değildir. Zengin sonuç uygunluğu, CTR, varlık anlaşılması ve LLM anlayışını destekler (Canel, Bing, 2025).
Resmî belgeler
Arama motorlarından ve spesifikasyondan birincil kaynak belgeleri.
- Yapılandırılmış veri işaretlemesinin nasıl çalıştığına giriş — JSON-LD önerisi, “3 biçimin tümü eşit derecede uygundur” nüansı ve
<head>/<body>yerleştirmesi. - Genel yapılandırılmış veri yönergeleri — politikalar: yalnızca görünür içerik, sayfayla eşleşme, en spesifik tür, tarayıcıları engellememe.
- JavaScript ile yapılandırılmış veri oluşturma — GTM ve özel JS enjeksiyonu yaklaşımları ve dinamik Product Shopping taraması uyarısı.
- Rich Results Test — uygunluğu doğrular (JS ile oluşturulan sayfalarda URL ile test edin).
Bing / Microsoft
- Sitenizi yapılandırılmış veriyle işaretleme — Bing JSON-LD’yi önerir, header/body/footer yerleşimini kabul eder ve geçersiz işaretleme konusunda uyarır.
- Bing Webmaster Tools’ta JSON-LD desteği tanıtılıyor (Ağustos 2018) — Bing’in JSON-LD doğrulamasını eklediği tarih.
Standartlar / sözlük
- JSON-LD 1.1 — W3C Önerisi — spesifikasyonun kendisi.
- json-ld.org — sade dille tanımıyla birlikte biçimin ana sayfası.
- Schema.org’a başlangıç — JSON-LD’nin ifade ettiği sözlük ve görünür içerik kuralı.
- Schema.org Validator — sözlüğe göre doğrular.
Kaynaktan alıntılar
Google, Bing ve spesifikasyondan kayda geçmiş açıklamalar. Her bağlantı, kaynak sayfanın metni gösterdiği yerdeki alıntılanan parçaya gider.
Google belgeleri — öneri ve nüans
- “In general, Google recommends using JSON-LD for structured data if your site’s setup allows it, as it’s the easiest solution for website owners to implement and maintain at scale (in other words, less prone to user errors).” Alıntıya git
- “All 3 formats are equally fine for Google, as long as the markup is valid and properly implemented per the feature’s documentation.” Alıntıya git
- “Google Search can understand and process structured data that’s available in the DOM when it renders the page.” Alıntıya git
Google belgeleri — politikalar
- “Don’t mark up content that is not visible to readers of the page.” Alıntıya git
- “Use the most specific applicable type and property names defined by schema.org.” Alıntıya git
John Mueller, Google — JSON-LD tercihi ve sıralama
- “We currently prefer JSON-LD markup. I think most of the new structured data that kind of come out are for JSON-LD first. So that is what we prefer.” — Google Webmaster Hangout, Mart 2019. Haber
- Sıralamalar hakkında: “Structured data won’t make your site rank better.” — 2025. (Search Engine Roundtable üzerinden aktarıldı; kelimesi kelimesine metni orijinal gönderiye göre doğrulayın.) Haber
Bing / Microsoft
- JSON-LD, “makes defining links and relationships between data and entities between the data present on your pages easy because it supports nested data.” — Bing Webmaster Tools belgeleri. Alıntıya git
- “Webmasters should be very alert as to not put invalid and incorrect information in the markup, as even though the markup is not visible on your page, it is still read by the search engines.” — Bing Webmaster Tools belgeleri. Alıntıya git
Fabrice Canel, Microsoft Bing — şema ve LLM’ler
Canel, SMX Munich’te (Mart 2025) şema işaretlemesinin Microsoft’un büyük dil modellerinin web içeriğini anlamasına yardım ettiğini doğruladı. (Haberlerde parafrazlanmıştır; herhangi bir ifadeyi nihai kabul etmeden önce konferans kaydına veya LinkedIn’e göre kelimesi kelimesine doğrulayın.) Haber
Spesifikasyon — json-ld.org
- “JSON-LD is a lightweight Linked Data format. It is easy for humans to read and write. It is based on the already successful JSON format and provides a way to help JSON data interoperate at Web-scale.” Alıntıya git
JSON-LD söz dizimi — hızlı başvuru
Sarmalayıcı
<script type="application/ld+json">
{ ...your markup... }
</script>Ayrılmış anahtar kelimeler
| Anahtar kelime | Ne yapar? | Tipik değer |
|---|---|---|
@context | Sözlüğü bildirir (zorunlu) | "https://schema.org" |
@type | Varlık türünü bildirir | "Article", "Product", "Organization" |
@id | Varlığı tanımlamak/referanslamak için kararlı URI | "https://example.com/#org" |
@graph | Tek blokta birden çok varlık dizisi | [ {…}, {…} ] |
Tek varlık
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Widget",
"offers": { "@type": "Offer", "price": "19.99", "priceCurrency": "USD" }
}İç içelik — alt varlık, iç içe bir nesnedir (veya nesne dizisidir):
"author": { "@type": "Person", "name": "Patrick Stox" }The @graph pattern — define once, reference by @id:
{
"@context": "https://schema.org",
"@graph": [
{ "@type": "Organization", "@id": "https://ex.com/#org", "name": "Ex Co" },
{ "@type": "WebSite", "publisher": { "@id": "https://ex.com/#org" } }
]
}Türe göre yaygın özellikler
Article/BlogPosting:headline,author,datePublished,image,publisherProduct:name,image,brand,offers(→price,priceCurrency,availability)Organization:name,url,logo,sameAs(sosyal/Wikidata URI’leri)BreadcrumbList:itemListElement→ListItem(position,name,item)FAQPage:mainEntity→Question→acceptedAnswer→Answer
Pratik kurallar
- Çoğu SEO işaretlemesinde
@contextdeğeri"https://schema.org"’dur — bu bir uzlaşıdır, spesifikasyon zorunluluğu değildir. Düz tırnak kullanın, akıllı tırnak kullanmayın. - Sondaki virgül olmaz — JSON katıdır.
- Kullanılabilir en spesifik
@type’ı kullanın. - Yalnızca sayfada görünür olanı işaretleyin.
<head>veya<body>içine yerleştirin — ikisi de geçerlidir.@idve@graphçapraz referans ve varlık düzenleme konusunda yardımcı olur ancak zorunlu değildir — boş düğümler ve başka düzenler de geçerlidir.- JavaScript çalıştırdığını doğrulamadığınız tarayıcılar için (testlerde GPTBot ve ClaudeBot dahil birçok AI tarayıcısı çalıştırmamıştır) sunucu tarafında oluşturun.
- Ayrı katmanlar olarak doğrulayın: Google uygunluğu için Rich Results Test (URL ile) + sözlük için Schema.org Validator — birinin geçmesi diğerinin geçtiği anlamına gelmez.
JSON-LD’yi doğrulama araçları
- Schema.org Validator — daha geniş sözlük kontrolü. Bir blok burada geçip Google’ın özelliğe özgü kurallarında başarısız olabilir.
- Google Rich Results Test — özellikle istemci tarafında enjekte edilen işaretleme için oluşturmanın önemli olduğu durumlarda dağıtılmış URL’yi test eder. Bu test schema.org’un her türünü değil, Google’ın desteklediği zengin sonuçları kapsar.
Kaçınılması gereken JSON-LD hataları
Ziyaretçilerin göremediği gerçekleri işaretlemek. JSON-LD’deki puan, fiyat, yazar veya başka bir iddia görünür sayfayla eşleşmelidir. Gizli veya yanıltıcı yapılandırılmış veri sayfanın zengin sonuç uygunluğuna mal olabilir. Bunun yerine: İşaretlemeyi görünür içerikle aynı doğru kaynaktan üretin.
Geçerli JSON’ı geçerli şema sanmak. Bir ayrıştırıcı, özellik adları schema.org’da bulunmayan kusursuz biçimde oluşturulmuş JSON’ı kabul edebilir. Bunun yerine: Hem JSON-LD sözlük kontrolünü hem de hedef özelliğin Google gereksinimlerini çalıştırın.
Akıllı tırnak veya sondaki virgül kullanmak. JSON katıdır; tipografik tırnaklar ve son özellikten sonra gelen virgül tüm bloğu geçersiz kılabilir. Bunun yerine: JSON dizelerini elle birleştirmek yerine veriyi serileştirin.
Spesifik tür varken genel tür seçmek. Sayfa açıkça Thing, Article veya Recipe iken Product veya geniş NewsArticle işaretlemesi kullanmak yararlı anlamı atar. Bunun yerine: uygulanabilir en spesifik schema.org türünü kullanın.
Çelişen ayrıntılarla varlıkları çoğaltmak. Farklı ad, logo veya URL’lere sahip birden çok Organization bloğu grafiği belirsizleştirir. Bunun yerine: varlığa tek bir kararlı @id verin, onu bir kez tanımlayın ve bu tanımlayıcıya başka yerlerden referans verin.
Schema.org geçerliliğinin Google zengin sonucunu garanti ettiğini varsaymak. Google türlerin bir alt kümesini destekler ve kendine özgü zorunlu özellikler ve içerik politikaları ekler. Bunun yerine: önce sözlüğü doğrulayın, sonra belirli Google özelliği için uygunluğu test edin.
JSON-LD’yi JavaScript’e enjekte edip her tarayıcının göreceğini varsaymak. Google istemci tarafı işaretlemeyi oluşturabilir ancak JS atlamalı AI tarayıcıları bunu hiç alamayabilir. Bunun yerine: bu tüketiciler önemliyse JSON-LD’yi sunucu tarafında oluşturun ve yalnızca yapıştırılmış kodu değil canlı URL’yi test edin.
JSON-LD dağıtımının etkili olduğunu kanıtlayın
Test 1 — Canlı sayfa geçerli ve sayfayla eşleşen JSON-LD içeriyor
- Test to run — Fetch the deployed URL with the Schema Markup Validator and compare the detected entities and values with the visible page.
- Expected result — The JSON parses, all properties belong to schema.org,
@idreferences resolve within the graph where intended, and claims such as names, prices, ratings, and dates match what users see. - Failure interpretation — Parser errors point to malformed JSON; vocabulary warnings point to misspelled or unsupported properties; mismatched values point to separate content and schema data sources drifting apart.
- Monitoring window — Immediate after deployment and cache clearance.
- Rollback trigger — Remove or revert the new block if it publishes false visible-content claims, breaks a previously valid graph, or cannot be parsed.
Test 2 — Hedef arama özelliği oluşturulmuş işaretlemeyi tanıyor
- Test to run — Run the deployed URL through Google’s Rich Results Test, then use the Rich-Result Eligibility Checker to inspect missing required and recommended fields by type.
- Expected result — Google detects the intended supported type without critical errors; any client-side-generated block appears in the rendered HTML.
- Failure interpretation — A Schema.org Validator pass paired with a Google failure usually means the type is not a supported Google feature, a Google-required field is missing, a content policy is unmet, or the renderer never received the block.
- Monitoring window — Immediate in both tests; Search Console changes wait for a recrawl.
- Rollback trigger — Roll back client-side injection if it makes previously visible structured data disappear from the rendered result, or remove unsupported feature claims from the launch until the required content is present.
Kendinizi test edin: JSON-LD
JSON-LD biçimi hakkında beş hızlı soru. Her biri için bir yanıt seçin, sonra kontrol edin.
Zaman ayırmaya değer kaynaklar
İlgili yazılarım
- Schema Markup: The Easy Way to Get Rich Results — yapılandırılmış veri, şema türleri ve JSON-LD üzerine özellik katmanı olan zengin sonuçlara dair Ahrefs rehberi.
- The Beginner’s Guide to Technical SEO — yapılandırılmış verinin daha geniş teknik çerçeveye oturduğu yer.
- JavaScript SEO Issues & Best Practices — oluşturma tarafı: JS ile enjekte edilen işaretlemenin JavaScript çalıştırmayan tarayıcılarda neden farklı davrandığı.
- Meet the New Web Crawlers — AI tarayıcıları (GPTBot, ClaudeBot ve arkadaşları) üzerine Cloudflare Radar analizim — JS ile enjekte edilen şemayı atlayan botlar.
Resmî
- Google’ın Yapılandırılmış Veri İşaretlemesinin Nasıl Çalıştığına Giriş — JSON-LD önerisi ve “3 biçimin tümü” nüansı, doğrudan kaynaktan.
- Google’ın JavaScript ile yapılandırılmış veri oluşturma — dinamik enjeksiyon yöntemleri ve Product uyarısı.
- JSON-LD 1.1 — W3C Recommendation ve json-ld.org — biçimin kendisi.
Sektörün diğer kaynaklarından
- Google’ın Tercih Ettiği Yapılandırılmış Veri — Search Engine Journal — Mueller’in “şu anda JSON-LD’yi tercih ediyoruz” yorumunun haberi.
- Microsoft Bing Copilot uses schema for its LLMs — Search Engine Land — Fabrice Canel’in şemanın Bing LLM’lerine yardımcı olduğuna dair SMX Munich 2025 doğrulaması.
- What Is JSON-LD Structured Data & Why Do You Need It? — Ignite Visibility — başlangıç seviyesinde sağlam bir anlatım.
- A Beginner’s Guide to JSON-LD Schema for SEOs — SALT.agency — SEO uzmanlarına yönelik pratik söz dizimi ve uygulama rehberi.
Değişiklik günlüğü
8 Ağu 2026 tarihinde güncellendi.
Editoryal özet ve kaydedilen değişiklik ayrıntıları.Değişiklik ayrıntıları
-
Ayrıntılı değişiklik notları şu anda İngilizce olarak mevcut.
Tam karşılaştırma kullanılamıyor — bu sürüm için önceki anlık görüntü arşivlenmemiş.
18 Tem 2026 tarihinde güncellendi.
Editoryal özet ve kaydedilen değişiklik ayrıntıları.Değişiklik ayrıntıları
-
Ayrıntılı değişiklik notları şu anda İngilizce olarak mevcut.
-
Ayrıntılı değişiklik notları şu anda İngilizce olarak mevcut.
-
Ayrıntılı değişiklik notları şu anda İngilizce olarak mevcut.
-
Ayrıntılı değişiklik notları şu anda İngilizce olarak mevcut.
Tam karşılaştırma kullanılamıyor — bu sürüm için önceki anlık görüntü arşivlenmemiş.
17 Tem 2026 tarihinde güncellendi.
Editoryal özet ve kaydedilen değişiklik ayrıntıları.Değişiklik ayrıntıları
-
Ayrıntılı değişiklik notları şu anda İngilizce olarak mevcut.
Tam karşılaştırma kullanılamıyor — bu sürüm için önceki anlık görüntü arşivlenmemiş.