Structured data, sayfanızın ne hakkında olduğunu arama motorlarına tahmin ettirmek yerine doğrudan söylemenizi sağlar. Türkçe kaynaklarda konu ya çok yüzeysel ya da gereksiz karmaşık anlatılıyor. Bu yazıda gerçekten işe yarayan tipleri, kopyalayıp kullanabileceğiniz örneklerle veriyorum.
Önce beklentiyi ayarlayalım
Schema doğrudan bir sıralama faktörü değildir. Yaptığı iki şey var:
- Zengin sonuç (rich result) uygunluğu: Yıldızlı değerlendirme, SSS açılır kutusu, tarif kartı gibi görsel öğeler. Sıralamanızı yükseltmez ama tıklama oranını ciddi biçimde artırır.
- Varlık (entity) netliği: Google'ın "bu sayfa şu kişi/kurum hakkında" diye kesin karar verebilmesi. İsim aramalarında ve AI tabanlı arama sonuçlarında belirleyici olan budur.
Format olarak JSON-LD kullanın. Microdata ve RDFa hâlâ destekleniyor
ama HTML'inize karışır; JSON-LD ise <head> içinde tek bir blokta durur
ve bakımı kolaydır.
Gerçekten işe yarayan tipler
Person — kişisel site için en kritik olan
Kendi adınızla aranmak istiyorsanız bu blok pazarlık konusu değil. sameAs
alanı özellikle önemli: sosyal profillerinizi listeleyerek Google'a "bu domain, o
LinkedIn profili ve o GitHub hesabı aynı kişi" dersiniz. Dağınık kimlik sinyallerini
tek varlıkta birleştiren şey budur.
{
"@context": "https://schema.org",
"@type": "Person",
"@id": "https://siteniz.com/#person",
"name": "Ad Soyad",
"url": "https://siteniz.com/",
"image": "https://siteniz.com/foto.jpg",
"jobTitle": "Web Tasarım & Yazılım",
"address": {
"@type": "PostalAddress",
"addressLocality": "İstanbul",
"addressCountry": "TR"
},
"sameAs": [
"https://github.com/kullanici",
"https://www.linkedin.com/in/kullanici/"
]
}
Organization / LocalBusiness — kurumsal siteler
Fiziksel bir adresten hizmet veriyorsanız LocalBusiness (veya daha özel
bir alt tipi) kullanın; çalışma saatleri, telefon ve coğrafi konum ekleyin. Sadece
çevrimiçi çalışıyorsanız düz Organization yeterlidir — olmayan bir
mağaza adresi uydurmayın, bu ters teper.
BlogPosting / Article
headline, datePublished, author ve
image alanlarını mutlaka doldurun. author alanını
@id ile Person bloğunuza bağlarsanız, her yazı yazarın otoritesini
besler — dağınık isim metinleri yerine tek bir varlık oluşur.
BreadcrumbList
Ucuz ve etkili. Arama sonuçlarında çıplak URL yerine gezinme yolu gösterilir, bu da tıklama oranını artırır. Uygulaması birkaç satır.
FAQPage — dikkatli kullanın
Bir dönem herkes her sayfaya SSS şeması koydu ve Google bu zengin sonucun gösterimini büyük ölçüde kısıtladı. Sayfada gerçekten soru-cevap varsa ekleyin; zengin sonuç için sahte SSS bölümü uydurmak artık işe yaramıyor.
Zaman kaybı olanlar
- Kendi ürününüze kendi verdiğiniz puan. Kendi kendine verilen
AggregateRatingGoogle tarafından yok sayılır, manuel işlem riski taşır. - Sayfada olmayan bilgiyi işaretlemek. Schema, sayfanın görünür içeriğiyle tutarlı olmalı. Uyumsuzluk yapısal veri cezası sebebidir.
- Her şeye WebPage eklemek. Ek bilgi taşımayan genel bloklar hiçbir şey kazandırmaz.
Türkçe siteler için üç pratik uyarı
- Karakter kodlaması. JSON-LD çıktısı UTF-8 olmalı; PHP ile üretiyorsanız
JSON_UNESCAPED_UNICODEbayrağını kullanın, yoksa "Öztürk" bozuk kaçış dizilerine dönüşür. - Dil bildirimi.
"inLanguage": "tr-TR"ekleyin. Küçük bir ayrıntı ama Türkçe sorgularda doğru eşleşmeye yardım eder. - Tarih formatı. Türkçe gösterimde
21.07.2026yazabilirsiniz ama schema içinde ISO 8601 zorunlu:2026-07-21.
Doğrulama
Yayına almadan önce iki araçla test edin: Google'ın Zengin Sonuç Testi (rich results test) ve Schema.org doğrulayıcısı. İlki "bu zengin sonuç alabilir mi" sorusunu, ikincisi "işaretlemem teknik olarak geçerli mi" sorusunu cevaplar. İkisi farklı şeylere bakar; ikisini de çalıştırın.
Yayına aldıktan sonra Search Console'daki "Gelişmeler" bölümünü takip edin — Google'ın işaretlemenizi nasıl okuduğunu orada görürsünüz. Bu, teslim öncesi kontrol listesinin 16. maddesinin devamı niteliğinde.