Bu rehberde ele alınan temel konular
  • 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.

RaporTemel amaçSık kontrol edilen alanlar
Ürün snippet’leriArama sonucunda ürün bilgisi veya puanı gösterebilmekProduct adı, görsel, yorum, puan ve teklif bilgileri
Satıcı listelemeleriSatın alınabilir ürün ve ticari teklif bilgilerini anlamakOffer, 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.
  • name sayfadaki gerçek ürün adıyla eşleşir.
  • image taranabilir ve ürünü gösteren görsel URL’sidir.
  • sku işletmenin kendi ürün veya varyant kodudur.
  • brand gerçek ürün markasını belirtir.
  • offers satış 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.

Yanlış uygulama Uyarıyı kapatmak amacıyla var olmayan GTIN, sahte yorum puanı, rastgele marka veya gerçekte sunulmayan kargo bilgisi eklemeyin. Yapılandırılmış veri görünür içerikle ve gerçek ürünle uyumlu olmalıdır.

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ü InStock olarak 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.

AlanAnlamıYaygın hata
skuİşletmenin kendi ürün/varyant koduAynı SKU’nun farklı varyantlarda kullanılması
gtinEAN, 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

HataMuhtemel nedenÇözüm
Eksik offersProduct var ancak satış teklifi yokSatın alınabilir ürüne gerçek Offer ekleyin
Eksik priceCurrencyFiyat gönderilmiş, para birimi gönderilmemişISO para birimi kodu kullanın
Geçersiz availabilitySerbest metin veya yanlış URLDesteklenen 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 alanBirden fazla eklenti aynı Product bloğunu basıyorTek yetkili yapılandırılmış veri üreticisi belirleyin
Geçersiz JSONVirgül, tırnak veya HTML kaçış hatasıSunucu çıktısını JSON doğrulamasından geçirin

Adım adım test süreci

  1. Etkilenen ürün URL’sini Search Console raporundan alın.
  2. Sayfayı gizli sekmede açıp görünür fiyat ve stoğu kaydedin.
  3. Zengin Sonuçlar Testi’nde URL testi çalıştırın.
  4. Algılanan Product ve Offer nesnelerini tek tek açın.
  5. Hata verilen alanın ham HTML veya oluşturulmuş DOM içindeki değerini kontrol edin.
  6. Merchant Center kullanılıyorsa feed değerleriyle karşılaştırın.
  7. Düzeltmeden sonra canlı URL testini yeniden çalıştırın.
  8. 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