Türkiye'nin firma sahipleri topluluğu — üyelik ücretsiz
Örnek Firma İşletme Topluluğu
Görev

Ürün yapısal verisi: Product ve Offer için zorunlu alanlar, fiyat-stok tutarlılığı

Ürün sayfalarınızın yapısal verisini hangi alanlarla ve hangi kaynaktan üreteceğinize karar veriyorsunuz; sayfadaki fiyatla markup'taki fiyat aynı kaynaktan gelmeli.

Yayın: 07.09.2026 · Güncelleme: 08.09.2026 · Dayanak kontrolü: 07.09.2026

Ne tutar 0 TL - yazılımcı saati kadar Altyapı markup'ı kendi üretiyorsa maliyet yok. Üretmiyorsa yazılımcı işi; elle yazılmış markup tavsiye edilmez.
Ne kadar sürer Altyapı üretiyorsa 1 gün, yazılımcıyla 1-2 hafta

Bu adım neyi çözer

Google bir ürün sayfasını okuyabilir ama fiyatın hangi sayı, stokun hangi kelime, puanın hangi yıldız olduğunu tahmin etmek zorunda kalır. Ürün yapısal verisi bu tahmini ortadan kaldırır: sayfaya, Google'ın tanıdığı bir sözlükle (schema.org Product ve Offer) "bu ürünün adı bu, fiyatı bu, stok durumu bu" yazarsınız. Karşılığı, arama sonucunda fiyat, stok, puan ve kargo bilgisinin görünmesidir; Google buna "zengin sonuç" der.

Karar için üç girdi: ürün sayfanızda görünen fiyat ve stok bilgisinin nereden geldiği (altyapı mı, elle mi), ürünlerinizde GTIN olup olmadığı ve Merchant Center kullanıp kullanmadığınız. Üçüncüsü önemli, çünkü Merchant Center akışı ile sayfa yapısal verisi birbirini denetler.

Kime gerekli, kime değil

Kendi sitesinde fiyatla satan herkes için. Google iki ayrı deneyim tanımlar ve hangisine gireceğiniz sayfanızın türüne bağlıdır:

  • Ürün snippet'i. Ürünün doğrudan satın alınamadığı sayfalar için; puan, yorum ve fiyat gösterir. Şartı: name ve şu üçünden en az biri: review, aggregateRating, offers.
  • Merchant listing (satıcı listelemesi). Alıcının ürünü satın alabildiği sayfalar için; beden, kargo, iade gibi daha ayrıntılı bilgi taşır. Google'ın cümlesi net: yalnız alıcının ürünü satın alabildiği sayfalar bu deneyime uygundur, ürünü satan başka sitelere bağlantı veren sayfalar değil.

Yalnız pazaryerinde satıyorsanız yapısal veriyi pazaryeri yazar. Fiyatı olmayan "teklif alın" sayfaları merchant listing için uygun değildir: Offer.price sıfırdan büyük olmak zorundadır. Puan ya da yorumunuz da yoksa bu sayfalar için Product işaretlemesinin karşılığı yoktur; bunu bilerek atlayın.

Zorunlu ve önerilen özellikler

Merchant listing için Google'ın belgesindeki liste:

TürZorunluÖnerilen
Productname, image, offersdescription, sku, gtin (gtin8/12/13/14, isbn), mpn, brand.name, aggregateRating, review, color, size, material, pattern, category, hasCertification
Offerprice (sıfırdan büyük) ve priceCurrency (ISO 4217, üç harf)availability, itemCondition, priceValidUntil, shippingDetails, hasMerchantReturnPolicy, url

image için Google birden çok yüksek çözünürlüklü görsel önerir; 16:9, 4:3 ve 1:1 oranları belgede sayılır. description "kesinlikle önerilir" olarak işaretlidir.

availability için kabul edilen değerler: InStock, OutOfStock, SoldOut, BackOrder, PreOrder, PreSale, LimitedAvailability, Discontinued, InStoreOnly, OnlineOnly. Tek değer yazılır ve sayfadaki gerçek durumla aynı olmalıdır.

Ürün snippet'i için liste daha kısadır: Product.name zorunlu; review, aggregateRating ya da offers'tan en az biri; Offer.price zorunlu, priceCurrency önerilir.

Listeleri sayfanın altındaki kaynak bağlantısından doğrulayın; Google özellik ekliyor ve çıkarıyor. Bu sayfadaki "Dayanak kontrolü" tarihi, listenin en son ne zaman karşılaştırıldığını gösterir.

Hangi biçimde yazılır

Google üç biçim tanır: JSON-LD, Microdata ve RDFa. Önerdiği JSON-LD'dir; site kurulumunuz izin veriyorsa en kolay yol olduğunu yazar. JSON-LD, sayfanın <head> ya da <body> bölümüne konan bir <script> etiketidir; Google, JavaScript ile sonradan sayfaya eklenen JSON-LD'yi de okuyabildiğini belirtir.

Sizin için pratik sonucu şu: markup görünür HTML'e karışmaz, ürün sayfasının tasarımına dokunmadan eklenir ve çıkarılır. Altyapınız hangi biçimi üretiyorsa onu kullanın; iki biçimi aynı sayfada karıştırıp aynı ürünü iki kez tarif etmeyin.

Tek ürün, tek sayfa

Google'ın kuralı: ürün zengin sonuçları yalnız tek bir ürüne (ya da aynı ürünün varyantlarına) odaklanan sayfaları destekler. Kategori ve liste sayfaları uygun değildir. Kategori sayfasına on ürünün Product işaretlemesini koymak zengin sonuç getirmez.

Farklı para birimlerinde satıyorsanız her para birimi için ayrı adres gerekir.

Varyantlar için ayrı bir belge var: aynı ürünün renk ve beden seçenekleri ProductGroup altında variesBy, hasVariant ve productGroupID ile gruplanır. Tüm varyantlar tek sayfadaysa grup için tek bir kanonik adres olmalı (seçici parametresi olmayan adres); her varyant ayrı sayfadaysa bu şart aranmaz. İlk adımdaki varyant adres kararı ile burası birbirine bağlıdır: adres yapısını değiştirirseniz markup'ı da değiştirin.

Görünen ile yazılanın aynı olması

Bu adımın asıl kuralı budur ve iki yerden gelir.

Google'ın genel yapısal veri politikası: okuyucuya görünmeyen içeriği işaretlemeyin; sahte yorum gibi yanıltıcı içeriği işaretlemeyin; bilgiyi güncel tutun. İhlalin sonucu manuel işlem: sayfa zengin sonuç olarak görünme hakkını kaybeder. Google bunun web sıralamasını etkilemediğini de yazar; ama e-ticarette fiyatın sonuçta görünmemesi tıklamaya doğrudan yansır.

Merchant Center tarafı daha serttir: yapısal veri, müşteriye gösterilen değerlerle aynı olmalıdır. Müşteriye göre değişen fiyat (IP adresine, tarayıcıya göre) yasaktır. Yanlış veri, ürün onayının kaldırılmasına kadar gider.

Pratikte sorun şurada çıkar: kampanya başlar, sayfadaki fiyat değişir, yapısal veri eski fiyatı taşır. Ya da tam tersi. Altyapınız yapısal veriyi sayfadaki fiyatla aynı kaynaktan üretiyorsa bu sorun yoktur; elle yazılmış markup'ta kaçınılmazdır. Bu yüzden markup'ı elle yazmayın, altyapıdan üretilsin.

Merchant Center ile ilişki

Ürün akışının nasıl kurulduğu Merchant Center ürün akışı adımında anlatıldı; burada tekrar etmiyoruz. Bu adım için önemli olan ikisinin birbirini denetlemesidir.

Google'ın e-ticaret rehberi iki kanalı ayırır: sayfa yapısal verisi ile Merchant Center akışı. Alışveriş sekmesinde görünmek için Merchant Center zorunludur; arama sonuçları için zorunlu değildir ama ürünün anlaşılmasını güçlendirir. Google ikisini birlikte kullanmanın deneyimlere uygunluğu en üst düzeye çıkardığını yazar.

İkisi arasında tutarsızlık çıktığında Google'ın önerisi, Merchant Center'a site içeriğine göre otomatik güncelleme yetkisi vermektir. Otomatik ürün güncellemeleri sayfanızdaki yapısal veriyi okur ve price, sale_price, availability ve condition alanlarını düzeltir. Google bunun düzenli akış güncellemesinin yerine geçmediğini, ürünlerin küçük bir yüzdesindeki geçici sorunlar için tasarlandığını açıkça yazar; çıkarıcı sayfadan fiyat ya da stoku okuyamazsa ürün onaylanmaz.

Yani sayfa yapısal veriniz Merchant Center için de sigortadır: doğru markup, akış geciktiğinde reddi önler; yanlış markup reddi hızlandırır.

GTIN

gtin merchant listing için zorunlu değil, önerilendir; ama markalı üründe Google'ın ürünü kendi kataloğuyla eşleştirmesi bu numarayla olur. Elinizdeki EAN-13 barkodun kontrol hanesini barkod doğrulama aracıyla sınayın; tek hanesi hatalı bir gtin13, ürünü yanlış ürünle eşleştirir ya da markup'ı geçersiz kılar. Araç 12 haneden kontrol hanesini de hesaplar.

Kendi ürettiğiniz, barkodu olmayan ürünlerde gtin yazmayın; sku ve mpn ile yetinin. Uydurma GTIN, eksik GTIN'den kötüdür.

Nereden yapılır

Üç yol var ve hangisinin sizin olduğunu önce öğrenin. Altyapı zaten üretiyor olabilir: bir ürün sayfanızı Zengin Sonuçlar Testi'ne verin; Product öğesi çıkıyorsa iş, eksik alanları tamamlamaya iner. Altyapı üretmiyorsa yazılımcı işidir; şartname olarak bu sayfadaki tabloyu ve Google'ın belgesini verin, markup'ın ürün kaydından üretilmesini isteyin. Elle yazmak üçüncü yoldur ve tavsiye etmiyoruz; birkaç ürünlük bir sitede bile fiyat değişince markup geride kalır.

Doğrulama her durumda sizde: markup'ı kim yazmış olursa olsun, test sonucunu ve Search Console raporunu siz okuyun.

Nasıl test edilir

Google'ın Zengin Sonuçlar Testi (search.google.com/test/rich-results) bir adresi ya da kod parçasını alır ve Google'ın tanıdığı zengin sonuç türlerini geçerli/geçersiz olarak raporlar. Geçerli öğe: kritik sorunu olmayan ve zengin sonuç olarak görünebilecek öğe. Geçersiz öğe: en az bir kritik sorunu olan öğe.

Google'ın uyarısı olduğu gibi: sayfanızın burada gösterildiği gibi görüneceğini ya da gösterilen görünümlerden herhangi birinin sayfanıza uygulanacağını garanti etmez. Testi geçmek zengin sonuç almak demek değildir; yalnız engel olmadığını gösterir.

Sürekli izleme için Search Console'da Alışveriş bölümündeki iki rapor kullanılır: merchant listing ve ürün snippet'i raporları, sitenizdeki geçerli ve geçersiz öğeleri sayar. Bu raporların okunması bir sonraki adımda.

Altyapınızın ürettiği markup'ta hangi alanın eksik olduğunu, test çıktısını yapıştırarak Dijital Pazarlama Kanalları kategorisinde sorabilirsiniz: "Test shippingDetails eksik uyarısı veriyor; kargo ücretim şehre göre değişiyor, ne yazmalıyım?"

Sık yapılan hata

Kategori sayfasına Product işaretlemesi koymak. Google yalnız tek ürün sayfalarını destekler; kategori sayfasındaki markup zengin sonuç getirmez, sayfanın odağıyla ilgisiz sayılabilir.

Kampanya fiyatını sayfada değiştirip markup'ta bırakmak. Zengin sonuçta eski fiyat görünür; Merchant Center'da fiyat uyuşmazlığı reddi gelir.

Tükenen üründe InStock bırakmak. Sonuçta "stokta" yazar, alıcı gelir, sayfada "tükendi" görür. Görünen ile yazılan farklıdır; politika ihlalidir.

İçe aktarılmış ya da sahte puan işaretlemek. Başka siteden alınmış ya da sayfada görünmeyen yorumu aggregateRating olarak işaretlemek manuel işlem nedenidir.

Markup'ı elle yazıp unutmak. Altı ay sonra fiyat üç kez değişmiş, markup ilk gündeki gibidir.

Bu adım bitti mi?

  • Ürün sayfalarımda Product ve Offer işaretlemesi var; name, image, offers, price, priceCurrency eksiksiz.
  • availability değeri sayfadaki gerçek stok durumuyla aynı ve stok değiştiğinde otomatik değişiyor.
  • Markup sayfadaki fiyatla aynı kaynaktan üretiliyor; elle yazılmış markup yok.
  • Kategori sayfalarımda Product işaretlemesi yok.
  • Markalı ürünlerimde gtin13 var ve kontrol hanesini doğruladım; barkodsuz ürünlerde gtin yok.
  • Zengin Sonuçlar Testi'nde örnek bir ürün sayfam geçersiz öğe vermiyor.
  • Merchant Center kullanıyorsam otomatik ürün güncellemelerinin açık olup olmadığını biliyorum.

Sonraki adım

Sayfa yapısı, teknik zemin ve yapısal veri kuruldu. Son adım, bunların işe yarayıp yaramadığını Google'ın kendi ağzından okumak: Search Console.

Bu adımda hesabı yapın

Ücretsiz, üyelik istemez, verileriniz tarayıcıdan çıkmaz.

Kaynaklar

Google Search Central — Yapısal veri işaretlemesine giriş JSON-LD önerisi, yerleşim Erişim: 07.09.2026 (yeni sekmede açılır) Google Search Central — Product yapısal verisi Ürün snippet'i ile merchant listing ayrımı Erişim: 07.09.2026 (yeni sekmede açılır) Google Search Central — Merchant listing yapısal verisi Zorunlu/önerilen özellikler, availability Erişim: 07.09.2026 (yeni sekmede açılır) Google Search Central — Ürün snippet'i yapısal verisi Zorunlu/önerilen özellikler Erişim: 07.09.2026 (yeni sekmede açılır) Google Search Central — Ürün varyantı yapısal verisi ProductGroup, kanonik Erişim: 07.09.2026 (yeni sekmede açılır) Google Search Central — Yapısal veri genel ilkeleri Görünen içerik, manuel işlem Erişim: 07.09.2026 (yeni sekmede açılır) Google Search Central — Ürün verinizi Google ile paylaşma Yapısal veri ile Merchant Center ilişkisi Erişim: 07.09.2026 (yeni sekmede açılır) Merchant Center Yardım — Ürün açılış sayfalarında yapısal veri Erişim: 07.09.2026 (yeni sekmede açılır) Merchant Center Yardım — Otomatik ürün güncellemeleri price, sale_price, availability, condition Erişim: 07.09.2026 (yeni sekmede açılır) Search Console Yardım — Zengin Sonuçlar Testi Erişim: 07.09.2026 (yeni sekmede açılır) Search Console Yardım — Zengin sonuç durum raporları Alışveriş bölümü Erişim: 07.09.2026 (yeni sekmede açılır)

Bu sayfa bilgilendirme amaçlıdır, hukuki görüş değildir. Mevzuat değişir; işleminizden önce kaynağı doğrulayın ya da mali müşavirinize danışın.