Google Analytics tarafındaki Global Site Tag güncellemesinden ve Google Tag Manager‘ın merkezileştirilmesinden bahsetmiştim. İlerleyen süreç içerisinde GTM tarafında daha yapısal değişiklikler olacağını hesaba katarsak analytics.js ve ecommerce.js yapılandırmalarının doğrudan GTM’e kaydırılması benim tavsiyem olacaktır. Hala ga.js ve ec.js kullanıldığını da hesaba katarsak sürekli düzenlemeler yapmak ve geliştirme çalışmalarıyla uğraşmak yerine daha işlevsel bir yapı üzerinden ilerlemek daha uygun bir strateji olur.

Elbette süreç ifade ettiğim kadar elverişli olmayabilir. Örneğin, danışmanlığını yaptığım e-ticaret girişimlerinden bir kaçı hazır e-ticaret paketlerini kullanıyorlar ve bu yapılar (özellikle yerel uygulamalar) süreci oldukça geriden takip ediyorlar ve bu nedenle sunulan yapıya uygun şekilde hareket etmek gerekiyor. Bu nedenle, Global Site Tag (gtag.js) Etkinlik İşlemleri başlıklı bu yazıda Global Site Tag (gtag.js) etkinlik ve e-commerce kurulumlarıyla ilgili değişikliklerdne, analytics.js ve ecommerce.js geçişinde takip edeceğiniz kurallardan bahsedeceğim.

Global Site Tag (gtag.js) Etkinlik İşlemleri

Global Site Etiketi (gtag.js) Nedir? başlıklı yazıda Google Adwords ve Google Analytics‘in config parametresiyle tanımlanabileceğinden (global snippet) bahsetmiştim. Detaylar için ilgili yazıya göz gezdirebilirsiniz. Global Site Tag (gtag.js) event (etkinlik) işlemlerinde de yine bu yapı çerçevesinde hareket edilmekte. Bu sayede, birden fazla site (subdomain olmak zorunda değil) ve birden fazla Google Analytics ve Adwords mülkünü tek bir satırda ve ayrı cookie tanımlamaları üzerinden tanımlamak kolaylaştırılmış durumda.

gtag('config', 'GA_TRACKING_ID', { 'send_page_view': false });
gtag('config', 'GA_TRACKING_ID_2');
gtag('config', 'GA_TRACKING_ID_3');

Örneğin, yukarıdaki kod belirttiğiniz Google Analytics mülkü (GA_TRACKING_ID)’nün page_view takip etmemesini, tanımlanan diğer mülklerin (GA_TRACKING_ID2, GA_TRACKING_ID3) ise sorunsuz şekilde sayfa etkinliklerini almasını sağlayacaktır.

Bu kullanım gruplama özelliğini de beraberinde getirmekte. Örneğin yukarıdaki tanımlama mülkleri default grubu altında işleyecektir. Açık bir şekilde tanımlama yapmak istersek kullanımı şu şekilde olacaktır:

gtag('config', 'GA_TRACKING_ID_1', {'groups': 'default'});
gtag('config', 'GA_TRACKING_ID_2', {'groups': 'default'});

Yukarıdaki mülkler default grubu içerisinde tanımlanmaktalar. “groups” kullanıcı tarafından atandığında ise kullanımı şu şekilde olur:

gtag('config', 'GA_TRACKING_ID_1', {'groups': 'access'});
gtag('config', 'GA_TRACKING_ID_2', {'groups': 'access'});

Belirttiğimiz mülk ID’leri access grubu altında tanımlanmıştır. Group tanımlaması event işlemlerinde istenilen verilerin belirtilen gruplara ve bu gruplar altınaki mülk ID’lerine iletilmesini sağlamaktadır.

gtag('event', 'event_name', {
  'send_to': 'access',
  'parameter_1': 'value_1',
  'parameter_2': 'value_2',
  // ...
});

Örneğin, bu etkinlik access grubu ile etkileşime geçecektir. send_to kullanıcı tanımlı bir grup ile belirtilmemişse etkinlikler default gruba iletilecektir. Birden fazla grupla etkileşime geçilecek etkinlik ifadelerinde kullanım şu şekilde olacaktır.

gtag('event', 'event_name', {
  'send_to': ['group_name_1', 'group_name_2', ... ],
  'parameter_1': 'value_1',
  'parameter_2': 'value_2',
  // ...
});

Etkinlik anatomisi içerisindeki parametrelerimiz:

  • Kategori (event_category)
  • Olay (event_action)
  • Etiket (event_label, kullanımı tavsiye edilir)
  • Değer (value, opsiyonel)

analytics.js etkinliklerinde kullandığımız yapı şu şekilde:

ga('send', 'event', [eventCategory], [eventAction], [eventLabel], [eventValue], [fieldsObject]);
ga('send', {
  hitType: 'event',
  eventCategory: 'Videolar',
  eventAction: 'play',
  eventLabel: 'Kış Kampanyası'
});

gtag.js etkinliklerinde yine etkinlik anatomisi başlıklarına uygun olarak yapılandırma ön tanımlı kategoriler (ecommerce, engagement), etkinlikler ve parametrelerle birlikte kullanılabilmekte. Örneğin, “login” etkinliği engagement kategorisi bağlamında method etkinlik etiketiyle işleyecektir.

gtag('event', 'login');

veya doğrudan anatomi ifadeleriyle:

gtag('event', 'login', {
  'event_category': 'engagement',
  'event_label': 'Google'
});

Düzenlenebilir (custom) yapı ise, yani önerilen parametreler tercih edilmeyecekse şu şekilde:

gtag('event', 'event_name', {
  // etkinlik parametreleri
  'parameter_1': 'value_1',
  'parameter_2': 'value_2',
  // ...
});

Peki, grup bağlamında login etkinliğini farklı gruplarla iletişime geçecek şekilde uygulamak istersek:

gtag('event', 'login', {
  'send_to': ['default', 'group_1', 'group_2'],
  'method': 'Google'
});

Gruplama, global snippet, mülk temelli etkinlik işlemleri ve önerilen etkinlikler gtag.js özelliklerinden sadece bir kaçı. Örneklerle birlikte değineceğim bir sonraki yazının konusu sayfa etkinlikleri.

Leave a Reply