YeniProduct Score, 4T Segmentation, Price War ve Broken Size yayında.Yenilikleri gör
Feedance
Makale

Google Feed'inize cost_of_goods_sold Eklemek: COGS Dışa Aktarımından Marj Kademelerine Uygulama Rehberi

cost_of_goods_sold'u Google ürün feed'ine eklemek, sepet verisi ID'lerini eşleştirmek ve brüt kârı marj kademelerine dönüştürmek için adım adım rehber.

Cagdas PolatCagdas Polat
8 dk okuma

Performance Max raporlarının çoğu size ciro ve ROAS'ı gösterir. Brüt kârı gösterenler azdır, çünkü Google bunu ancak feed'inizdeki her ürün bir maliyet taşıdığında hesaplayabilir. Google bu maliyetin yaklaşık olabileceğini belirtir: kendi kurulum rehberi, kesin rakamlarınız yoksa COGS'u ürün fiyatının %80'i olarak tahmin etmeyi önerir. Bu rehber, bir yerlerde maliyet sütunu bulunan (ERP dışa aktarımı, tedarikçi fiyat listesi) ve bunu Merchant Center feed'inin içine almak isteyen feed yöneticileri ile ücretli medya liderleri için hazırlandı. Sonunda doğru biçimlendirilmiş bir cost_of_goods_sold özniteliğine, buna uyan bir dönüşüm etiketine ve özel etiket kademelerine dönüştürebileceğiniz ilk marj raporuna sahip olacaksınız.

cost_of_goods_sold ne yapar, ne yapmaz

cost_of_goods_sold, brüt kâr raporlamasını destekleyen bir Merchant Center özniteliğidir. Google brüt kârı ciro eksi COGS olarak tanımlar. Öznitelik hangi ürünlerin onaylanacağını, nasıl sıralanacağını veya ne kadar teklif vereceğinizi değiştirmez. Yalnızca Google Ads'e, satılan her ürün için zaten kaydettiği cirodan düşeceği bir maliyet verir.

Çoğu satıcı için isteğe bağlıdır. Google bunu yalnızca otomatik indirimler ve dinamik promosyonlar için zorunlu olarak listeler. Diğer herkes için bir raporlama iyileştirmesidir ve raporlama ancak dönüşüm etiketi ürün düzeyinde sepet verisi de gönderirse çalışır.

Öznitelik bir teklif ayarı değildir ve Feedance teklifleri yönetmez. Bu veri size hangi ürünlerin ve kampanyaların para kazandırdığına dair güvenilir bir görünüm sunar; böylece başka yerlerde vereceğiniz yapı ve bütçe kararları ciroya değil kâra dayanır.

Adım 1: Her ürünün maliyetinin nereden geleceğine karar verin

Google kesin değerleri, ortalamaları ve tahminleri kabul eder; dolayısıyla ilk karar, sürdürmeye yetecek kadar güvendiğiniz kaynağın hangisi olduğudur. Aşağıda seçenekleri, ilk aydan sonra ne sıklıkla doğru kaldıklarına göre sıraladık.

Maliyet kaynağıDoğrulukBakım yüküNe zaman kullanılır
ERP veya envanter sistemi dışa aktarımı, SKU bazındaYüksekOtomatikleştirildiğinde düşükMaliyetler zaten varyant bazında saklanıyorsa
SKU üzerinden birleştirilen tedarikçi fiyat listesiOrta ile yüksek arasıOrta; listeler sezona göre değişirERP yok ama temiz bir tedarikçi dosyası var
Kategori ortalaması (örneğin bir kategori için 0,62 x fiyat)OrtaDüşükMarjlar bir kategori içinde homojense
Fiyatın sabit yüzdesi (Google'ın örneği: %80)DüşükYokBu hafta ilk raporu almanız gerekiyor ve sonra iyileştireceksiniz

Sabit yüzde, tam olarak ciroyla birlikte hareket eden bir brüt kâr üretir; bu yüzden bir ürünün satış başına diğerinden daha fazla kazandığını size asla göstermez. Onu raporlamayı açmak için kullanın, marj kararları vermek için değil.

Adım 2: Özniteliği tam olarak biçimlendirin

Google'ın cost_of_goods_sold belirtimi, bir sayı artı ISO 4217 para birimi kodudur; tekrarlanmaz ve ondalık ayırıcı olarak nokta kullanılır. Bu kurallardan birinin ihlali ürünlerin raporlama için uygun olmamasına yol açabilir ve eksik veri üretir.

Sekmeyle ayrılmış bir feed'de değer şöyle görünür:

412.50 TRY

XML'de:

<g:cost_of_goods_sold>412.50 TRY</g:cost_of_goods_sold>

COGS için, dönüşüm etiketinizin raporladığı fiyatla aynı para birimini kullanın. Google, döviz kurlarından kaynaklanan tutarsızlıkları önlemek için bunu önerir. Türk lirası ile satış yapıp tedarikçisi euro ile fatura kesen satıcıların, dışa aktarımdan önce maliyeti feed içinde, düzenli olarak güncellenen bir kurla liraya çevirmesi gerekir.

Maliyet sütunlarında en sık gördüğümüz biçimlendirme hataları ve her birinin etkisi şunlardır:

Kaynak değerSorunDüzeltilmiş değer
412,50 TRYVirgüllü ondalık ayırıcı, Türkçe yerel ayarlı dışa aktarımlarda yaygın412.50 TRY
412.50Para birimi kodu yok412.50 TRY
TL 412.50ISO 4217 kodu değil, sıra yanlış412.50 TRY
1,412.50 TRYSayının içinde binlik ayırıcı1412.50 TRY
0.00 TRYBoş maliyet sıfır olarak dışa aktarılmış, bu %100 marj gibi okunurO ürün için özniteliği hiç eklemeyin

Son satır bir Google kuralı değil, bir değerlendirme meselesidir. Sıfır maliyet geçerli bir sayıdır; Google onu kabul eder ve o ürünün brüt kârını şişirir. Maliyet bilinmiyorsa özniteliği çıkarıyoruz.

Adım 3: Değeri Merchant Center'a iletin

Google COGS verisini sağlamak için üç yol listeler: ürün feed'iniz, Content API (ve halefi Merchant API) veya ek feed. Maliyet verisi ürün kataloğundan farklı bir sistemden geliyorsa ek feed yolu genellikle en güvenlisidir, çünkü ana feed'e dokunmadan iki sütunlu bir dosya (id ve cost_of_goods_sold) gönderebilirsiniz.

Feed'leri bir platformla yönetiyorsanız karşılığı, kaynağı yeniden yazmadan öznitelik ekleyen bir katmandır. Feedance'ta ek feed'ler bunun için vardır; tahmin kullanıyorsanız feed kuralları da fiyattan kategori ortalaması maliyeti hesaplayabilir. Bu özel kullanım için yayımlanmış bir müşteri örneğimiz yok; bu yüzden işleyişi o özellik sayfalarında anlatıldığı şekliyle değerlendirin.

Adım 4: Sepet verisinin feed ID'lerinizle eşleştiğini kontrol edin

Maliyet, ancak Google satılan bir ürünü bir feed ürünüyle eşleştirebildiğinde kullanılır. Google'ın yardım sayfası, dönüşüm etiketinin items dizisindeki ürün ID'lerinin Merchant Center feed'indeki id özniteliğiyle birebir eşleşmesi gerektiğini ve yalnızca Google Ads hesabına bağlı bir Merchant Center hesabındaki ürünlerin işlendiğini belirtir. Uygun dönüşümler, Google etiketi veya Google Tag Manager kullanan, teklif verilebilir satın alma dönüşümleri olmalıdır.

Veri beklemeye başlamadan önce bu kontrol listesini uygulayın:

  1. Merchant Center hesabı, satın alma dönüşümüne sahip Google Ads hesabına bağlıdır.
  2. Satın alma etiketi, her satır kalemi için ID, fiyat ve adet içeren bir items dizisi gönderir.
  3. Etiketteki ID, büyük/küçük harf ve varyant eki dahil, feed'deki id ile aynı dizedir. Etiketiniz ana SKU'yu gönderiyor, feed'iniz ise varyant ID'lerini kullanıyorsa hiçbir şey eşleşmez.
  4. Etiketteki fiyat, COGS değerleriyle aynı para birimini kullanır.
  5. Dönüşüm eyleminin tanılamalarında eşleşmeyen ID uyarısı yoktur. Google, uyuşmazlıkları bulmak için bu tanılama bölümünü işaret eder.

Ürün ID uyuşmazlıkları, bir COGS kurulumunda sayılar yerine tire görünmesinin en yaygın nedenidir. Google, COGS özniteliği yoksa raporlarda COGS ve brüt kâr değerlerinin boş veya tire olarak göründüğünü belirtir.

Adım 5: İlk raporu okuyun ve finans rakamlarınızla karşılaştırın

Google Ads sonuçları brüt kâr, brüt kâr marjı, satılan malın maliyeti, ciro ve satılan birim olarak sunar. Performance Max için Google Ads API bu metrikleri metrics.gross_profit_micros, metrics.gross_profit_margin ve metrics.cost_of_goods_sold_micros olarak belgeler; bunlar asset_group_product_group_view, campaign, customer ve shopping_performance_view içinde kullanılabilir.

API belgelerindeki iki uyarı, ilk sayıları nasıl okuyacağınızı etkiler. Sepet verisi metrikleri, ilgili ürünler için tüm dönüşümler kaydedilene kadar kullanılamaz; bu yüzden ilk günler eksik görünecektir. Ayrıca 15 Haziran 2026'dan itibaren shopping_performance_view, yalnızca Display Ağı'nı değil tüm Performance Max ağlarının verilerini içerir; dolayısıyla bu veri eklendiğinde metrikler bir kez yükselebilir. Öncesi ve sonrasını karşılaştırıyorsanız, bu tek seferlik sıçramayı feed değişikliğinizin etkisi saymayın.

Bir mantık kontrolüyle doğrulayın: bir hafta seçin, Google Ads'in sepet verisine atfettiği cirodan finans ekibinizin aynı ürünler için maliyetini çıkarın ve karşılaştırın. COGS'unuz bir ortalamaysa fark beklenir. Sıfır olmasını beklemeyin.

Adım 6: Brüt kârı marj kademelerine dönüştürün

Ürün bazında brüt kâr marjı görünür hale geldiğinde, ürünleri birkaç kademede gruplayın ve kademeyi bir özel etikete yazın. Google, her biri en fazla 100 karakter olan custom_label_0 ile custom_label_4 arasını, öznitelik başına ürün başına bir değerle ve etiket başına en fazla 1.000 benzersiz değerle destekler. Üç ila beş kademe yeterlidir.

Örnek bir şema (sayılar örnektir, kıyaslama değeri değildir):

Feed fiyatı üzerinden brüt marjcustom_label_1 değeriTipik kullanım
%20'nin altımargin_lowAyrı liste grubu; ROAS'a değil tıklama başına kâra göre değerlendirin
%20 ile %40 arasımargin_midVarsayılan grup
%40'ın üzerimargin_highDaha fazla bütçe için aday
COGS yokmargin_unknownİnceleme listesi; veriyi düzeltin

Kademe, price ve cost_of_goods_sold değerlerinden feed tarafında yapılan bir hesaplamadır; bu yüzden bir feed kuralı, feed her yeniden oluşturulduğunda bunu otomatik olarak yazabilir. Performance Max liste grupları için özel etiketler, ürün tipi ve ürün ID'si konulu önceki yazımız, bir liste grubu ağacının parçalanmadan kaç etiket boyutunu taşıyabileceğini ele alıyor. Değişikliğin işe yarayıp yaramadığını kontrol etmek isterseniz, bir feed değişikliğini ROAS'a karşı ölçme yöntemimiz olduğu gibi geçerlidir.

Adım 7: Maliyet sütununu canlı tutun

Maliyet, fiyattan daha hızlı eskir. Ona bir sahip ve bir güncelleme sıklığı atayın. Her tedarikçi fiyat değişikliğinden, marjınızı etkileyen her kur hareketinden ve her sezondan sonra yeniden dışa aktarın. Maliyeti fiyatını aşan bir ürün, bir rapora ulaşmadan önce kendi kontrolünüzde negatif marj göstermelidir.

Bunun yetersiz kaldığı noktalar

COGS raporlaması, satılan ürünlerdeki brüt kârı ölçer. Kargo sübvansiyonlarını, iadeleri, ödeme komisyonlarını veya reklam harcamasını içermez; dolayısıyla bir ürün sağlıklı bir brüt marj gösterip yine de para kaybettirebilir. Google'ın kendi SA360 belgeleri, vergi, kargo ve reklam maliyetlerinden önceki toptan maliyet örneğini verir ve bu kapsamı doğrular.

Ayrıca sepet verisinin doğru uygulanmasına bağlıdır ve satın almanın Google'ın atfedebildiği bir dönüşüm olmasını gerektirir. Bu metriklerde yalnızca sepet verisiyle dönüşüm olarak raporlanan satın almalar görünebilir.

Ortalamalar varyansı gizler. Bir kategori %15 marjlı bir aksesuarı %55 marjlı bir ana ürünle karıştırıyorsa, kategori ortalaması ikisini de yanlış raporlar.

Rakipler de bunu kapsıyor. DataFeedWatch, brüt kâr raporlaması için feed'e satılan malın maliyetini ekleme üzerine bir rehber yayımlıyor; ürün kârlılığı etrafında konumlanan ROI Hunter gibi platformlar ise asıl ihtiyacınız kâr mantığıysa size daha uygun olabilir (bkz. karşılaştırmamız). Feedance veriyi hazırlar; bu veriden teklif veya bütçe belirlemez.

SSS

Google Shopping için cost_of_goods_sold zorunlu mu?

Hayır. Google bunu isteğe bağlı kabul eder; zorunlu olduğu yerler otomatik indirimler ve dinamik promosyonlardır. Olmadan da reklamlarınız normal çalışır, ancak COGS ve brüt kâr metrikleri boş görünür.

Maliyetin kesin olması gerekiyor mu?

Hayır. Google, verinin raporlama için olduğunu ve kesin olması gerekmediğini söyler. Maliyet ürüne göre değişiyorsa bir ortalama veya fiyatın %80'i gibi kaba bir tahmin girebilirsiniz.

Müşteriler maliyeti görebilir mi?

Google bu özniteliği, dönüşümler sepet verisiyle raporlandığında kullanılan bir raporlama girdisi olarak tanımlar. Belgeleri bunu reklam içeriği olarak sunmaz, ancak her yüzeyi test etmedik; bu yüzden kendi hesabınızda doğrulayın.

Raporlarım neden brüt kâr için tire gösteriyor?

Genellikle ya öznitelik eksiktir ya da dönüşüm etiketindeki ID'ler feed'deki id ile eşleşmiyordur. Önce dönüşüm eyleminin tanılamalarında eşleşmeyen ID'leri kontrol edin.

Hangi para birimini kullanmalıyım?

Dönüşüm etiketinizin raporladığı fiyatın para birimini. Google, döviz kuru tutarsızlıklarını önlemek için bunların eşleşmesini önerir.

Performance Max ile çalışır mı?

Evet. Google Ads API, sepet verisiyle dönüşümlerin uygulandığı Performance Max kampanyaları için brüt kâr ve brüt kâr marjı dahil sepet verisi metriklerini belgeler.

Ana feed'i düzenlemek istemiyorsam nereye eklemeliyim?

Ek feed'i veya Content ya da Merchant API'yi kullanın. Google bunları ana feed'in yanında kabul edilen iletim yöntemleri olarak listeler.

Bu, özel etiketlerden nasıl farklı?

Maliyet özniteliği Google'ın kâr raporlamasını besler. Özel etiket ise kampanya yapısı için tanımladığınız bir segmenttir. Birincisini marjı hesaplamak, ikincisini ona göre harekete geçmek için kullanırsınız.

Maliyet sütununu eklemeden önce feed'inizi kontrol edin

Maliyet sütunu, ancak feed'in geri kalanı sağlamsa işe yarar. Marj kademelerini üzerine kurmadan önce eksik ve hatalı biçimlendirilmiş öznitelikleri bulmak için feed'inizi ücretsiz ürün feed'i denetim aracından geçirin.

Kaynaklar

Feed'inize ikinci bir göz mü istiyorsunuz? Bir sonraki gönderiminizden önce feed'inizi sizinle birlikte inceler, eksikleri gösteririz.
Ücretsiz denetim yaptırın
Cagdas Polat
Yazan
Cagdas Polat

Feedance'ın kurucu ortağıdır; bilgisayar mühendisliği ve pazarlama alanındaki geçmişini analitik içgörüler üretmek için kullanır. Verileri uygulanabilir stratejilere dönüştürmeye odaklanarak markaların dijital dünyada kayda değer bir büyüme elde etmesine yardımcı olmaya kendini adamıştır.

LinkedIn

Hangi ürünlerin
kazandırdığını görün.

Feed'inizi ve GA4'ü bağlayın. Product Score, 4T, Price War ve Broken Size'ı kendi kataloğunuzda gösterelim.