GTM - Ecommerce Satın Alma Adımları Etkinliği
Google Analytics Enhanced Ecommerce İşlemleri
Promosyon (promoView ve promoClick) ve ürün (impressions, productClick, detail, addToCart, removeFromCart) işlemlerinin ardından artık ödeme adımları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.
Ödeme sürecini sepetin görüntülenip “Ödeme İşlemlerini Tamamla” şeklinde belirtilen butonun / bağlantının tıklanmasıyla başlatırız ve bu süreçte ödeme biçimi (kredi kartı, havale, kapıda ödeme vb.), teslimat adresi, fatura adresi, teslimat biçimi (kargo, şubeden teslim, indirme vb.) ve ödemenin gerçekleştirilmesi gibi adımlar (Step1, Step2,…, Step5) yer alır ve ödemenin gerçekleştirilmesiyle (onay / teşekkür sayfası) son bulur.
Enhanced Ecommerce “checkout” Etkinliği
checkout
sepetin görüntülenmesinden (elbette promosyonlar, ürün listesi, ödeme yöntemi ve adres bilgileri de adımlar dahilinde değerlendirilerek) ödemenin gerçekleştirilmesine kadar geçen sürecin (funnel) ve elbette bu süreçte gerçekleşen ürün etkileşimlerinin (removeFromCart) Google Analytics > Dönüşümler > E-ticaret > Satış Performansı ve Ödeme Davranışı raporlarına yansımasını sağlayan veri katmanı olarak oldukça geniş bir bağlamda raporlarda yer bulmakta.
detail
ile ilgili katman detayları UA için şu şekildedir:
window.dataLayer = window.dataLayer || [];
// UA
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'currencyCode': '[para-birimi]', // Para Birimi (Örn. TRY, USD, EUR) / Tip: string (opsiyonel)
'checkout': {
'actionField': {'step': 1, 'option': 'Visa'},
'products': [{
'id': '[benzersiz-urun-id]', // Benzersiz Ürün ID'si / Tip: string (gerekli)
'name': '[urun-adi]', // Ürün Adı / Tip: string (gerekli)
'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]' // Ürün Adedi / Tip: numeric (opsiyonel)
}]
}
}
});
Şimdi bu içeriğin GA4 tarafında nasıl ele alındığına bakalım.
window.dataLayer = window.dataLayer || [];
// GA4
dataLayer.push({
'event': 'begin_checkout',
'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)
}]
}
});
Normal şartlarda ödeme ve kargo bilgileri ayrı sayfalarda (örn. /payment ve /shipping) ziyaretçilerden edinilir. Ancak, günümüzde alışveriş deneyimini geliştirmek için (checkout-funnel) accordion yapılar, tab’ler ve işbirlikleri çerçevesinde (ödeme yöntemleri, cüzdanlar vb.) bu yapılar tek sayfa üzerinden yönetilebilmekte.
Bu nedenle checkout
veri katmanını kullanırken bu geçişleri de hesaba katmak gerekmekte. Yukarıdaki örneği sepet içeriğini barındıracak şekilde hem UA hem de GA4 için bir örnekle gösterelim:
// UA
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'products': [{
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1
}]
}
}
});
// GA4
dataLayer.push({
'event': 'begin_checkout',
'ecommerce': {
'items': [{
'item_name': 'Donut Friday Scented T-Shirt',
'item_id': '67890',
'price': '33.75',
'item_brand': 'Google',
'item_category': 'Apparel',
'item_category_2': 'Mens',
'item_category_3': 'Shirts',
'item_category_4': 'Tshirts',
'item_variant': 'Black',
'item_list_name': 'Search Results',
'item_list_id': 'SR123',
'index': 1,
'quantity': '1'
}]
}
});
UA için oluşturulan kod checkout
etkinliğine sahip. GA4 ise etkinliği begin_checkout
olarak tanımlı. UA tarafında alanlar (step) funnel’in doğru bir şekilde oluşturulabilmesi için Google Analytics > Hesap > Mülk > Görünüm > E-ticaret Ayarları > E-ticaret Kurulumu > Dönüşüm Hunisi Adımları ile birlikte yönetilmeli. Bu düzenleme ile ilgili Google Analytics Hedefler ve Funnel İşlemleri başlıklı yazıma da göz atabilirsiniz.
Sepet içeriğinde herhangi bir bilgi edinmiyor ve sadece ürün listesini iletiyorsak option tanımlamamıza gerek kalmayacaktır. Dönüşüm hunisine maksimum 5 adım ekleyebileceğimizi unutmamalı, dönüşüm sürecini bu sınır dahilinde yönetmelisiniz. GA4 tarafında option tanımları haricen oluşturulabilir.
// UA
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'actionField': {
'step': 1
},
'products': [{
'name': 'Triblend Android T-Shirt',
'id': '12345',
'price': '15.25',
'brand': 'Google',
'category': 'Apparel',
'variant': 'Gray',
'quantity': 1
}]
}
}
});
Şayet ilk adımı ödeme biçiminin seçimiyle başatmak istersek option olarak tercih edilen ödeme yöntemini iletebiliriz.
// UA
dataLayer.push({
'ecommerce': {
'checkout': {
'actionField': {
'step': 1,
'option': 'Visa'
}
}
}
});
Adım2 için kargo tanımlamasını iletelim, ürün içeriğinin yanı sıra promoView ile içeriği genişletelim ve veri katmanımızı checkout
etkinliğiyle ilişkilendirelim.
// UA
dataLayer.push({
'event': 'checkout',
'ecommerce': {
'checkout': {
'actionField': {
'step': 2,
'option': 'FedEx'
},
'products': [{
'id': '7w9e0',
'name': 'Newage T-Shirt',
'price': '31.00',
'brand': 'Masons',
'category': 'T-Shirts',
'variant': 'blue',
'dimension1': 'M',
'dimension2': 'pre-order',
'dimension3': 'guest',
'quantity': 1
}]
},
'promoView': {
'promotions': [{
'id': 'bts',
'name': 'Back To School',
'creative': 'checkout',
'position': 'right sidebar'
}]
}
}
});
Bu adımlar dahilinde sepeti görüntüleyip ödeme adımlarına geçiş yapan kullanıcıların sürecin hangi aşamasında süreçten çıktıklarını ölçümleyebilir, dönüşüm yolunu optimize edebilir ve kullanıcıları yarım bıraktıkları ödeme sürecini tamamlamak üzere çeşitli tekliflerle yeniden pazarlama ve bültenler kullanarak tekrar dönüşüm sürecine dahil edebiliriz.
Geliştirilmiş e-ticarete dair dikkat edilmesi gereken diğer detaylar ve ilgili olaylar için Enhanced Ecommerce, Google Analytics Hedefler ve Funnel İşlemleri, Google Tag Manager dataLayer ve E-Ticaret Etkinlikleri, Google Analytics E-Ticaret Raporları ve Etkinlik Kurulumları, Google Analytics / GTM UA1 ve GA42 yardım sayfalarını inceleyebilirsiniz.