- Product snippets ile Merchant listings raporlarının farklı gereksinimlerini ayırın.
- Product, Offer, price, priceCurrency ve availability alanlarını gerçek sayfa verisiyle eşleştirin.
- Varyant, GTIN, SKU, görsel ve yorum alanlarında sık yapılan hataları kontrol edin.
- Rich Results Test, URL Denetimi ve Search Console raporlarını birlikte kullanın.
Ürün yapılandırılmış veri hatası nasıl düzeltilir?
Önce Search Console’daki hata mesajının hangi raporda göründüğünü belirleyin. “Ürün snippet’leri” ve “Satıcı listelemeleri” raporları aynı Product verisini incelese de aynı şartları kullanmaz. Ardından etkilenen URL’yi Zengin Sonuçlar Testi’nde çalıştırın, Google’ın okuduğu JSON-LD bloğunu açın ve hata verilen alanı ürün sayfasındaki gerçek değerle karşılaştırın.
Google’ın resmî Product yapılandırılmış veri rehberi, ürün bilgisinin fiyat, stok, yorum, kargo ve diğer özelliklerle zengin sonuçlarda kullanılabileceğini açıklar. Ancak yapılandırılmış veri eklemek belirli bir görünüm veya sıralama garantisi vermez.
Product snippets ile Merchant listings raporu arasındaki fark
Search Console’da ürünlerle ilgili iki ayrı geliştirme raporu görülebilir. Ürün snippet raporu, ürün incelemesi veya ürün bilgisi içeren daha geniş sayfa türlerini kapsar. Merchant listings raporu ise müşterinin ürünü satın alabileceği sayfalardaki Offer verisini daha ayrıntılı inceler.
| Rapor | Temel amaç | Sık kontrol edilen alanlar |
|---|---|---|
| Ürün snippet’leri | Arama sonucunda ürün bilgisi veya puanı gösterebilmek | Product adı, görsel, yorum, puan ve teklif bilgileri |
| Satıcı listelemeleri | Satın alınabilir ürün ve ticari teklif bilgilerini anlamak | Offer, price, priceCurrency, availability, shipping ve iade bilgileri |
Bir sayfa Merchant listings raporunda hata verirken Product snippets raporunda geçerli olabilir. Bu nedenle yanlış rapora bakarak “schema çalışıyor” sonucuna varılmamalıdır.
Product ve Offer yapısı nasıl kurulmalıdır?
Ürünün adı, açıklaması, görseli, marka ve ürün kodları Product nesnesinde; fiyat, para birimi, stok ve satıcı bilgisi Offer nesnesinde tutulur. Satın alınabilir tek ürün sayfasında genellikle bir Product altında Offer bulunur.
@type: Productürünün kendisini tanımlar.namesayfadaki gerçek ürün adıyla eşleşir.imagetaranabilir ve ürünü gösteren görsel URL’sidir.skuişletmenin kendi ürün veya varyant kodudur.brandgerçek ürün markasını belirtir.offerssatış fiyatı ve stok teklifini içerir.
Kategori sayfasında onlarca ürünü tek Product nesnesinde birleştirmek doğru değildir. Her ürünün kendi detay sayfasında kendi verisi bulunmalıdır.
Hata ile uyarı arasındaki fark nedir?
Kırmızı hata, sayfanın ilgili zengin sonuç özelliği için uygun olmasını engelleyebilir. Sarı uyarı ise veri geçerli olsa da önerilen bir alanın bulunmadığını gösterir. Bütün uyarılar aynı önemde değildir; ürün için gerçekten mevcut olan bilgi gönderilmelidir.
Fiyat, para birimi ve stok hataları
Fiyat sayısal biçimde, noktalı ondalık ayırıcıyla ve para birimi ayrı alanda gönderilmelidir. price: "1.299,90 TL" yerine price: "1299.90" ve priceCurrency: "TRY" kullanılır.
Stok bilgisi schema.org URL değeriyle belirtilir. Yaygın değerler https://schema.org/InStock, OutOfStock, PreOrder ve BackOrder biçimindedir.
- JSON-LD fiyatını veri tabanındaki güncel satış fiyatından üretin.
- Kampanya varsa normal fiyat ve kampanyalı fiyat mantığını sayfayla eşleştirin.
- Seçili varyant değiştiğinde JSON-LD ve görünür fiyatın farklı kalmasını engelleyin.
- Üye girişi olmadan görülemeyen fiyatı herkese açık fiyat gibi işaretlemeyin.
- Stoksuz ürünü
InStockolarak göndermeyin.
SKU, GTIN, MPN ve marka nasıl kullanılmalıdır?
SKU işletmenin kendi ürün kodudur. GTIN ise EAN, UPC veya ISBN gibi küresel ürün numarasıdır. Üretici tarafından atanmış GTIN varsa doğru uzunluk ve değerle gönderilmelidir. GTIN olmayan özel üretim ürüne uydurma barkod yazılmamalıdır.
| Alan | Anlamı | Yaygın hata |
|---|---|---|
| sku | İşletmenin kendi ürün/varyant kodu | Aynı SKU’nun farklı varyantlarda kullanılması |
| gtin | EAN, UPC, ISBN gibi küresel ürün numarası | Baştaki sıfırın silinmesi veya uydurma değer |
| mpn | Üreticinin parça/model numarası | İç ürün kodunun MPN sanılması |
| brand | Ürünün gerçek markası | Satıcının firma adının ürün markası olarak yazılması |
Renk ve beden varyantlarında yapılandırılmış veri
Renk, beden, malzeme veya kapasite gibi varyantlarda sayfanın URL ve seçim davranışı önemlidir. Her varyantın ayrı URL’si varsa o URL’nin fiyat, stok, SKU ve GTIN bilgisi seçilen varyanta ait olmalıdır.
Google, varyant grubunu açıklamak için ProductGroup, variesBy, hasVariant ve productGroupID yapısını destekler. Ancak önce temel Product ve Offer verisinin doğru çalışması sağlanmalıdır.
- Her varyanta benzersiz SKU verin.
- Varsa her varyantın kendi GTIN’ini kullanın.
- Canonical URL’nin yanlışlıkla başka renk veya bedene gitmediğini kontrol edin.
- Stok ve fiyatı ana üründen değil seçili varyanttan alın.
- URL açıldığında işaretlenen varyantın gerçekten seçili olmasını sağlayın.
AggregateRating ve Review hataları
Yorum ve puan alanları yalnızca sitede kullanıcıya gösterilen gerçek yorumlardan üretilmelidir. Ürün sayfasında görünmeyen puanı JSON-LD’ye eklemek, işletmenin kendi tanıtım metnini müşteri yorumu olarak işaretlemek veya bütün mağaza puanını her ürüne kopyalamak doğru değildir.
ratingValue ortalama puanı, reviewCount veya ratingCount ise gerçek değerlendirme sayısını göstermelidir. Sıfır yorumlu ürüne örnek puan eklenmemelidir.
Doğru Product ve Offer JSON-LD örneği
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Örnek Ürün",
"image": [
"https://www.example.com/img/ornek-urun.webp"
],
"description": "Ürünün gerçek açıklaması",
"sku": "URN-001-M",
"gtin13": "8691234567890",
"brand": {
"@type": "Brand",
"name": "Örnek Marka"
},
"offers": {
"@type": "Offer",
"url": "https://www.example.com/urun/ornek-urun",
"priceCurrency": "TRY",
"price": "1299.90",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition"
}
}
</script>
Örnekteki değerler sabit metin olarak kopyalanmamalı; her ürünün gerçek kayıtlarından dinamik olarak üretilmelidir.
Yaygın neden–çözüm tablosu
| Hata | Muhtemel neden | Çözüm |
|---|---|---|
| Eksik offers | Product var ancak satış teklifi yok | Satın alınabilir ürüne gerçek Offer ekleyin |
| Eksik priceCurrency | Fiyat gönderilmiş, para birimi gönderilmemiş | ISO para birimi kodu kullanın |
| Geçersiz availability | Serbest metin veya yanlış URL | Desteklenen schema.org stok URL’sini kullanın |
| Fiyat eşleşmiyor | Önbellek, varyant veya kampanya farkı | JSON-LD ve görünür fiyatı aynı kaynaktan üretin |
| Yinelenen alan | Birden fazla eklenti aynı Product bloğunu basıyor | Tek yetkili yapılandırılmış veri üreticisi belirleyin |
| Geçersiz JSON | Virgül, tırnak veya HTML kaçış hatası | Sunucu çıktısını JSON doğrulamasından geçirin |
Adım adım test süreci
- Etkilenen ürün URL’sini Search Console raporundan alın.
- Sayfayı gizli sekmede açıp görünür fiyat ve stoğu kaydedin.
- Zengin Sonuçlar Testi’nde URL testi çalıştırın.
- Algılanan Product ve Offer nesnelerini tek tek açın.
- Hata verilen alanın ham HTML veya oluşturulmuş DOM içindeki değerini kontrol edin.
- Merchant Center kullanılıyorsa feed değerleriyle karşılaştırın.
- Düzeltmeden sonra canlı URL testini yeniden çalıştırın.
- Search Console’da doğrulamayı başlatın ve yeniden taramayı bekleyin.
Ne zaman teknik destek gerekir?
Sayfada iki veya daha fazla Product nesnesi oluşuyorsa, varyant değişiminde JSON-LD güncellenmiyorsa, fiyat önbellekten eski geliyorsa veya aynı hata yüzlerce üründe tekrarlanıyorsa şablon ve ürün veri kaynağı birlikte incelenmelidir. Tek tek ürün düzenlemek yerine merkezi schema üretim kodu düzeltilmelidir.
Sık sorulan sorular
Yapılandırılmış veri hatası sayfanın indekslenmesini engeller mi?
Yapılandırılmış veri hatası çoğunlukla ilgili zengin sonuç uygunluğunu etkiler. Sayfanın indekslenmesi; taranabilirlik, içerik, canonical ve diğer indeksleme sinyallerine de bağlıdır.
Bütün uyarıları kapatmak zorunlu mu?
Hayır. Ancak ürün için mevcut ve doğru olan önerilen alanların eklenmesi Google’ın ürünü daha iyi anlamasına yardımcı olabilir.
JSON-LD mi Microdata mı kullanılmalı?
Google desteklenen biçimleri okuyabilir; JSON-LD genellikle şablondan yönetilmesi ve hata ayıklanması daha kolay bir yaklaşımdır.
Ürün yapılandırılmış veri hatalarını merkezi olarak düzeltin
Product, Offer, fiyat, stok, varyant ve Merchant Center verilerinizi aynı kaynaktan üreten sürdürülebilir bir ürün SEO yapısı oluşturalım.
SEO ve Yapılandırılmış Veri Çalışmasını İnceleyin
İyi yazılım budur