GTM - Ecommerce Sepete Ürün Ekleme Etkinliği
Google Analytics Enhanced Ecommerce İşlemleri
Geliştirilmiş e-ticaret yapıları içerisinden ürün listeleme ve promosyon etkinliklerini (promoView, promoClick) tamamladık.
Artık ziyaretçilerimizin listelenen ürünleri sepetlerine attıkları addToCart
olayına geçebiliriz.
Temmuz 2023 itibariyle Universal Analytics (UA) yerini Google Analytics 4 (GA4) mülk biçimine bırakıyor. Bu tarihten sonra UA mülkleri yeni verileri işleyemeyecekler. Tahminen yıl sonu gibi de artık erişilmez hale gelecekler. Mülk biçimleri arasındaki farklılıklar ve diğer işlemler için Universal Analytics (UA) Yerine Google Analytics 4 (GA4) başlıklı yazımı okuyabilir ve teknik destek talebinde bulunabilirsiniz.
Enhanced Ecommerce “addToCart” Etkinliği
addToCart
olayı içeriğinde üzerinde işlem gerçekleştirilen ürüne ait id, name, price, brand, category, variant, position ve quantity içeriklerini barındıran bir geliştirilmiş e-ticaret olayıdır. Bu olayla ilgil metrikler sepet görüntüleme öncesinde ürünlerin sepete eklenme oranları ile satışa dönüş oranlarını değerlendirebilmemizi, kullanıcıları ürünler temelinde yeniden hedefleyebilmemizi, ürünlerle ilgili (ürün özelliği, ürün sayfası vb.) optimizasyonlar gerçekleştirebilmemizi mümkün kılar.
İlgili verileri Google Analytics > Hesap > Görünüm > Dönüşümler > E-ticaret > Ürün Performansı bölümü altından özet olarak görüntülemek mümkün. Birinci Boyut’un Ürün Adı olduğu Özet raporunda (ayrıca Ürün, Ürün SKU’su, Ürün Kategorisi, Ürün Markası ve Alışveriş Aşaması da kullanılabilir) İkinci Boyut için diğer ürün özelliklerini (Varyant, Marka, Kategori vb.), Metrik olarak ise Ürün Geliri‘nin yanı sıra Alışveriş Sepetine Ürün Ekleme Sayısı gibi olaylar da tercih edilebilir. Ürün özet görünümü aşağıdaki metrikleri içerir1:
- Satış Performansı
- Ayrı ayrı ürün satışlarından elde edilen gelir (Ürün Geliri)
- Benzersiz satın alma işlemi sayısı
- Ürün miktarı (satılan ürün birim sayısı)
- Ortalama fiyat (ürün başı ortalama gelir)
- Ortalama miktar (ürün adedi üzerinden elde edilen ortalama değeri)
- Ürün geri ödeme tutarı (iade edilen tutar)
- Alışveriş Davranışı
- Alışveriş sepeti-ayrıntı oranı (ürün detay sayfası görüntüleme sayısı başına eklenen ürün sayısı)
- Satın alma-ayrıntı oranı (ürün detay sayfası görüntüleme sayısı başına satın alınan ürün sayısı)
Alışveriş Davranışı görünümü aşağıdaki metrikleri içerir:
- Satış Performansı
- Ürün listesi görüntüleme sayısı
- Ürün ayrıntı sayfası görüntüleme sayısı
- Sepete ürün ekleme sayısı
- Sepetten ürün çıkarma sayısı
- Ürün ödeme sayısı
- Benzersiz satın alma işlemi sayısı
- Alışveriş Davranışı
- Alışveriş sepeti-ayrıntı oranı (ürün detay sayfası görüntüleme sayısı başına eklenen ürün sayısı)
- Satın alma-ayrıntı oranı (ürün detay sayfası görüntüleme sayısı başına satın alınan ürün sayısı)
Yukarıdaki performans değerlendirmelerinde elbette diğer olaylar da ilişkili olarak değerlendirilmektedir. Örneğin checkout
ya da detail
olaylarının kurulmadığı ya da eksik veya yanlış kurulduğu durumlarda bu metrikler kullanılamayabilir. UA için tanımlanmış addToCart
nesne içeriği şu şekildedir:
window.dataLayer = window.dataLayer || [];
// UA
dataLayer.push({
'event': 'addToCart',
'ecommerce': {
'currencyCode': '[para-birimi]', // Para Birimi (Örn. TRY, USD, EUR) / Tip: string (opsiyonel)
'add': {
'products': [{
'id': '[benzersiz-urun-id]', // Benzersiz Ürün ID'si / Tip: string (gerekli / zorunlu)
'name': '[urun-adi]', // Ürün Adı / Tip: string (gerekli / zorunlu)
'price': '[urun-fiyati]', // Ürün Fiyatı / Tip: numeric (gerekli)
'brand': '[urun-markasi]', // Ürün Markası / Tip: string (opsiyonel)
'category': '[urun-kategorisi]', // Ürün Kategorisi / Tip: string (opsiyonel)
'variant': '[urun-ozelligi]', // Ürün Özelliği (örneğin renk, desen vb.) / Tip: string (opsiyonel)
'quantity': '[urun-adedi]' // Sepete Gönderilen Ürün Adedi / Tip: numeric (opsiyonel)
}]
}
}
});
GA4 için ise kullanılması gereken nesne içeriğimiz şu şekilde:
window.dataLayer = window.dataLayer || [];
// GA4
dataLayer.push({
'event': 'add_to_cart',
'ecommerce': {
'items': [{
'item_name': '[urun-adi]', // Ürün Adı / Tip: string (gerekli / zorunlu)
'item_id': '[benzersiz-urun-id]', // Benzersiz Ürün ID'si / Tip: string (gerekli / zorunlu)
'price': '[urun-fiyati]', // Ürün Fiyatı / Tip: numeric
'item_brand': '[urun-markasi]', // Ürün Markası / Tip: string (opsiyonel)
'item_category': '[urun-kategorisi]', // Ürün Kategorisi / Tip: string (opsiyonel)
'item_category_2': '[urun-kategorisi-2]', // Ürün Kategorisi (Alt Kategori) / Tip: string (opsiyonel)
'item_category_3': '[urun-kategorisi-3]', // Ürün Kategorisi (Alt Kategori) / Tip: string (opsiyonel)
'item_category_4': '[urun-kategorisi-4]', // Ürün Kategorisi (Alt Kategori) / Tip: string (opsiyonel)
'item_variant': '[urun-ozelligi]', // Ürün Özelliği (örneğin renk, desen vb.) / Tip: string (opsiyonel)
'item_list_name': '[urunun-yer-aldigi-liste-adi]', // Ürünün Yer Aldığı Liste Adı / Tip: string (opsiyonel)
'item_list_id': '[urunun-yer-aldigi-benzersiz-liste-id]', // Ürünün Yer Aldığı Liste ID'si / Tip: numeric (opsiyonel)
'index': '[urunun-yer-aldigi-liste-sirasi]', // Ürünün Yer Aldığı Liste Sırası / Tip: numeric (opsiyonel)
'quantity': '[urun-adedi]' // Sepete Gönderilen Ürün Adedi / Tip: numeric (opsiyonel)
}]
}
});
Görüldüğü üzere veri katmanı değerleri impressions ile oldukça benzer bir yapıdadır. id
, name
ve price
alanlarımız zorunlu alanlardır.
O halde, UA için bir sepete ürün ekleme örneği oluşturalım2.
// UA
dataLayer.push({
'event': 'addToCart',
'ecommerce': {
'currencyCode': 'TRY',
'add': {
'products': [{
'id': '9bdd2',
'name': 'Compton T-Shirt',
'price': '44.00',
'brand': 'Compton',
'category': 'T-Shirts',
'variant': 'red',
'dimension1': 'M',
'quantity': 1
}]
}
}
});
Aynı örneği bir de GA4 için düzenlenmiş olarak ele alalım3.
// GA4
dataLayer.push({
'event': 'add_to_cart',
'ecommerce': {
'items': [{
'item_name': 'Compton T-Shirt',
'item_id': '9bdd2',
'price': '44.00',
'item_brand': 'Compton',
'item_category': 'Apparel',
'item_category_2': 'Mens',
'item_category_3': 'Shirts',
'item_category_4': 'Tshirts',
'item_variant': 'red',
'item_list_name': 'Search Results',
'item_list_id': 'SR123',
'index': 1,
'quantity': 1,
'dimension1': 'M',
}]
}
});
İlgili işlemi click
ile tetiklenmekte. Ayrıca çoklu ürün (productFieldObjects) ile aynı anda farklı ürünlerin de sepete eklenmesini sağlayabilir ve veri katmamını event ('event': 'addToCart')
ile ilişkilendirebiliriz.
// UA
dataLayer.push({
'event': 'addToCart',
'ecommerce': {
'currencyCode': 'TRY',
'add': {
'actionField': {'list': 'related products'},
'products': [{
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1
}, {
'name': 'Compton T-Shirt',
'id': '9bdd2',
'price': '44.00',
'brand': 'Compton',
'category': 'T-Shirts',
'variant': 'Black',
'quantity': 1,
'dimension1': 'Large'
}]
}
}
});
// GA4
dataLayer.push({
'event': 'add_to_cart',
'ecommerce': {
'items': [{
'item_name': 'Triblend Android T-Shirt',
'item_id': '12345',
'price': '15.25',
'item_brand': 'Google',
'item_category': 'Apparel',
'item_category_2': 'Mens',
'item_category_3': 'Shirts',
'item_category_4': 'Tshirts',
'item_variant': 'Gray',
'item_list_name': 'Search Results',
'item_list_id': 'SR123',
'index': 1,
'quantity': 1
}, {
'item_name': 'Compton T-Shirt',
'item_id': '9bdd2',
'price': '44.00',
'item_brand': 'Compton',
'item_category': 'Apparel',
'item_category_2': 'Mens',
'item_category_3': 'Shirts',
'item_category_4': 'Tshirts',
'item_variant': 'red',
'item_list_name': 'Search Results',
'item_list_id': 'SR123',
'index': 1,
'quantity': 1,
'dimension1': 'Large',
}]
}
});
Yukarıdaki örnekte ayrıca dimension1
ve list
tanımlamalarına yer verdim. Dimension (boyut) tanımlayarak sepete eklenen ürüne dair daha detaylı bilgi de aktarabilir ve ürünlerin renk, biçim, boyut ve benzeri değerlendirmelerini satış performanslarıyla karşılaştırabilirsiniz. List ile de ürünlerin hangi liste üzerinden sepete eklendiklerini görüntüleyebilir ve liste performanslarını, listelerin ürün satışlarına olan etkilerini değerlendirebilirsiniz.