Google Analytics 4 - Etkinlik Verilerinin Görselleştirilmesi

Etkinlik Tanımları ve Görselleştirme Biçimleri

Google Analytics 4 - Etkinlik Yönetimi başlıklı yazıda GA4 etkinlikleri ve bu etkinliklerle ilişkili parametrelere değinmiştim. Bu yazıda ise, örnek bir etkinliğin planlamasını yapıp, elde edilen verileri GA4 ve Looker Studio aracılığı ile nasıl görselleştirebileceğimize değineceğim.

AA

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.

GA4 bize etkinlikler ve etkinlikler özelinde çeşitli parametreleri iletme imkanı sunar. Ayrıca, var olan etkinliğe ait parametreleri kullanarak yeni etkinlikler oluşturabilir ve var olan etkinlikleri dönüşüm olarak da işaretleyebiliriz1. Aşağıdaki örnek senaryoda birkaç adımdan oluşan bir form yapısını temel alacağım.

Etkinliklerin Planlanması

Elimizde aşağıdaki örneklendiği hali ile farkı özelliklere sahip işlemlerin gerçekleştirildiği bir form olsun2. Bu formu görüntüleyen kullanıcıların hangi adımlarda form ile etkileşimi sonlandırdığını ve etkileşim sonucunda kaç adet formun gönderildiğini ölçmek istiyoruz.

GA4 - Event Organization
GA4 - Event Organization

Her durumda (durumlara A, B ve C diyelim), Form Submitted adımında kullanıcı kaydı oluşturuluyor. Kayıt işlemi başarılı bir şekilde gerçekleştirilmişse (benzer kayıt yoksa ve bilgiler geçerli ise) dönüşüm etiketi tetikleniyor ve kullanıcı Thank You sayfasına yönlendiriliyor1.

Ancak, Form Submitted aşamasında kullanıcı tarafından verilen bilgilere bağlı olarak ara adımlar kullanıcıya sunulabiliyor. Dolayısıyla, ilk dönüşümümüz (conversion) Form Submitted adımı, ikincil dönüşümler ise kullanıcının yönlendirildiği ara işlemler olarak ele alınmakta.

Bir akış şemasına indirgeyecek olursak;

flowchart LR A(Selections) -->|Next| B(Personal Information) B --> |Next| C(Questionnaire) C -->|Condition 1| D{Form Submitted} C -->|Condition 2| E(Image Upload) E --> D C -->|Condition 3| F[Payment] F --> G[Thank You] D --> G

Bu aşamada en yalın hali ile 2 farklı yol izlenebilir;

  • Her adım için ayrı bir etkinlik tanımlamak
  • Tek bir etkinlik adı altında parametreler ile adımları ayırmak

İlk yolu etkinlik temelinde işlemler yapılabilmesini mümkün kılar. Bu etkinliklerden bir veya daha fazlası (form gönderimleri, ödeme, vb.) ayrıca dönüşüm olarak işaretlenebilir. İkinci yolda ise, tek bir etkinlik adı tanımlı olacağı için bu etkinliği dönüşüm olarak tanımlamak mantıklı olmayacaktır. Bu durumda, GA4 üzerinden yeni bir etkinlik oluşturup etkinlik adı ve parametre ilişkili üzerinden yeni bir etkinlik yaratılmasını sağlayıp bu ve gerekli ise oluşturulacak diğer etkinlikleri dönüşüm olarak işaretleyebiliriz. İşlemlerin biraz karışık göründüğünü tahmin edebiliyorum; o halde ilgili işlemleri adım adım gerçekleştirelim.

Etkinliklerin Kontrolü

Kullanılacak veri kaynağına ve etkinliğin niteliğine bağlı olarak görselleştirme işleminin yürütülmesi bir zaman alabilir. Bu nedenle, BigQuery tarafında 48 saat, GA4 tarafında 24 saate kadar olası zaman gecikmelerini hesaba katarak ilerlemek mantıklı olacaktır.

GA4 - Events
GA4 - Events

GA4 tarafında, yukarıda bahsi geçen raporlar aracılığı ile etkinlik detaylarını görüntülemek oldukça kolay. BigQuery tarafında ise veri yoğunluğuna bağlı olarak SQL sorguları yazmamız gerekebilir. Aşağıda yer alan örnek SQL sorgularını inceleyebilirsiniz.

_Elbette domain.analytics_123456789.events_20211011 şeklindeki tablo yolunu kendi veri kaynağınıza göre düzenlemeyi unutmamalısınız._

SELECT event_name, COUNT(event_name) AS val_occurrence 
FROM `domain.analytics_123456789.events_20211011`
GROUP BY event_name
ORDER BY val_occurrence DESC
LIMIT 10;

İlgili SQL sorgusunun dönüşü aşağıdakine benzer şekilde listelenecektir.

Row event_name val_occurrence
1 page_view 984
2 session_start 965
3 user_engagement 763
4 first_visit 670
5 scroll 286
6 funnel 42
7 funnel_step_1 28
8 click 16
9 funnel_step_2 10
10 video_progress 8

Şimdi, sadece funnel içeren etkinlikleri listeleyelim.

SELECT event_name, COUNT(event_name) AS val_occurrence 
FROM `domain.analytics_123456789.events_20211011`
WHERE event_name LIKE '%funnel%'
GROUP BY event_name
ORDER BY val_occurrence DESC
LIMIT 10;

Örnek SQL sorgusu sonucunda şu şekilde bir dönüş aldığımızı varsayalım.

Row event_name val_occurrence
1 funnel 42
2 funnel_step_1 28
3 funnel_step_2 10
4 funnel_step_3 8
5 funnel_step_4 6
6 funnel_step_5 4
7 funnel_step_6 2

GA4 ve BigQuery bağlantısı arasındaki en temel farklılık, BigQuery tablosunun ilgili etkinliğin tetiklendiği zaman etiketlerini (timestamp) de barındırıyor olması3. Bu zaman etiketleri sayede etkinlikler arasında geçen zamanı hesaplamak ve buna bağlı olarak işlemler yapabilmek mümkün hale gelmekte. Elbette zaman etiketlerini parametre olarak da işleme alabilirsiniz. Bu tür detayları sürece göre değerlendirmek daha uygun olacaktır.

Örnek olarak aşağıdaki gibi bir SQL sorgusu kullanarak gelen verileri inceleyebilirsiniz.

SELECT event_date, event_timestamp, event_name
FROM `domain.analytics_123456789.events_20211011`
WHERE event_name LIKE '%funnel%'
LIMIT 5
Row event_date event_timestamp event_name
1 20211011 1633984748349537 funnel
2 20211011 1633984883567678 funnel
3 20211011 1633984883567678 funnel
4 20211011 1633984883567678 funnel
5 20211011 1633984883567678 funnel

Çoklu Etkinlik Kullanımı

İlk olarak, her adımı ayrı bir etkinlik olarak ele alalım.

gtag("event", "funnel_step_1");
//...

Adından, bir veya daha fazla etkinliği dönüşüm olarak işaretleyelim ve elde ettiğimiz etkinlik verilerini hem GA4 hem de GDS aracılığı ile görselleştirelim.

Etkinliklerimiz her adım için şu şekilde olsun;

Sıra Etkinlik adı Başlık Akış
1 funnel_step_1 Selections A,B,C
2 funnel_step_2 Personal Information A,B,C
3 funnel_step_3 Questionnaire A,B,C
4 funnel_step_4 Form Submitted A,B,C
5 funnel_step_5 Image Upload C
6 funnel_step_6 Payment A
7 funnel_step_7 Thank You A,B,C

Çoklu Etkinlik Kullanımında GA4 ve GDS Görselleştirme İşlemleri

GA4 ile birlikte, Explore altında funnel ve path gibi oldukça kullanışlı şablonlar tek tıklama ile kullanılabilir halde sunulmakta. Bu sayede kullanıcı özelinde web sitesi ve uygulamalardaki etkileşimleri kolay bir şekilde görüntüleyebilmekte, elde edilen verileri kitle tanımları içerisinde değerlendirebilmekteyiz. Bu yazı bağlamında, ilgili etkinlikleri Explore > Funnel exploration adımlarını izleyerek görselleştireceğim.

GDS tarafında ise tercihim bar chart olacak.

GA4: Raporlama - 1

Funnel exploration seçeneğinin tıklanmasının ardından temel metrikleri (metrics) ve boyutları (dimensions), device category kırılımını (breakdown) ve first open/visit, organic visitors, session start, vb. adımlarını (steps) içeren active user akışı karşımıza çıkacaktır.

GA4 - Funnel Exploration
GA4 - Funnel Exploration

Öncelikle ilgili adımları yeniden ele alalım. Bu amaçla, Steps başlığının yanında bulunan kalem simgesini tıklamamız yeterli olacaktır.

GA4 - Funnel Steps
GA4 - Funnel Steps

Edit funnel steps ekranında her adım için şu işlemlerin tekrarlanması gerekiyor; Add step > Add new condition > events > funnel_step_x>. Thank You adımı için page_view etkinliği seçilip parametre olarak teşekkür sayfasının path değeri belirtilebilir.

GA4 - Pageview Event
GA4 - Pageview Event

Kırılım (breakdown) olarak cihaz kategorisi (device category) ve benzeri bir seçim yapılabilir. Bu işlemlerin ardından funnel aşağıda örneklenen biçime benzer bir biçim alacaktır.

GA4 - Funnel Exploration - Steps
GA4 - Funnel Steps

Bu aşamadan sonra adımlar üzerinden yeni segmentler oluşturulabilir ve/veya var olan segmentler etkinlikler temelinde ele alınabilir.

GA4 - Step Segmentation
GA4 - Step Segmentation
GDS: Raporlama - 1

GDS tarafında, eğer etkinlikler planlı bir şekilde organize edilmişse tablo ve bar grafiğini oluşturmak için sadece filtre kullanmak yeterli olacaktır4.

Tablo ve/veya grafik için boyut (dimension) olarak Event name, metrik (metric) olarak ise Event count seçimleri yapıldığında en yalın hali ile Event name olarak funnel_step_x şeklinde belirttiğimiz etkinlikler tetiklenme sayılarına göre sıralanacaklardır. Şayet, ilgili etkinlikler için kendimiz başlık belirtmek istersek, bu durumda CASE fonksiyonundan faydalanmamız gerekir5. Yeni bir boyut oluşturarak (create field) bu işlemi gerçekleştirebiliriz. Aşağıdaki kod parçacığı işlem için yeterli olacaktır.

CASE
WHEN Event name='funnel_step_1' THEN 'Step 1'
WHEN Event name='funnel_step_2' THEN 'Step 2'
WHEN Event name='funnel_step_3' THEN 'Step 3'
WHEN Event name='funnel_step_4' THEN 'Step 4'
WHEN Event name='funnel_step_5' THEN 'Step 5'
WHEN Event name='funnel_step_6' THEN 'Step 6'
ELSE NULL
END

Bu işlemi grafik ve/veya rapor düzeyinde de gerçekleştirebilirsiniz.

GDS Funnel Visualization
GDS Funnel Visualization - Table & Bar Chart

Eğer tablo ve/veya grafikte null değerler var ise filtreler aracılığı ile bu değerleri hariç (exclude) tutabilirsiniz. funnel_step_ ile başlayan etkinlikler için ise yine filtre oluşturup bu etkinlik ismini temel alacak şekilde etkinlikleri sınırlandırabilirsiniz4.

CASE içerisinde page_view etkinliğini de kullanabilirsiniz ancak bu durum null değerini kontrol edememenize sebebiyet verecektir.

--...
WHEN Event name='page_view' AND REGEXP_CONTAINS(Page path,'success') THEN 'Thank You'
--...

Bu nedenle önerim ilgili değerleri (etkinlik adı ve parametre değerini kullanarak) ayrı bir etkinlik olarak tanımlamaktır.

Etkinlik ve Parametre Kullanımı

Bu adımda tek bir etkinlik altında parametreleri kullanacak, adından GA4 üzerinden dönüşüm olarak işaretlemek üzere etkinliklere müdahale edeceğiz. Yine bir üst başlıkta olduğu gibi elde ettiğimiz verileri GA4 ve GDS aracılığı ile görselleştireceğiz.

Özel Metrik ve Boyutlar

Bir etkinlik içerisinde iletilen parametreleri Configure > Custom definitions adımlarını izleyerek metrik veya boyut olarak tanımlayabiliriz. Bu aşamada, ilgili tanım için bir kapsam (scope) belirlememiz gerekir. Örneğin, kullanıcı özelliklerinden faydalanacağımız durumlarda kapsamı User, diğer durumlar için Event olarak tanımlayabiliriz.

GA4 - Event Modification
GA4 - Event Modification

Bu yazı bağlamında bir özel boyuta ihtiyacımız olduğu için Custom dimension seçeneği üzerinden ilerleyeceğiz. Dimension name ilgili boyutun raporlarda hangi ad ile görüntüleneceğini, Event parameter ise hangi parametre ile bu boyutun ilişkilendirileceğini belirtir. Etkinlik parametresi olarak step_name seçimini yaparak boyut tanımını kaydedebiliriz.

GA4 - Custom Dimension
GA4 - Custom Dimension

Görselleştirme işlemini tek bir etkinlik üzerinden yürüteceğimize göre adımlarla ilişkili parametreler netleştirmemiz uygun olacaktır.

Etkinliklerimiz her adım için şu şekilde olsun;

Sıra Etkinlik adı Parametre Akış
1 funnel Step_1 A,B,C
2 funnel Step_1 A,B,C
3 funnel Step_3 A,B,C
4 funnel Step_4 A,B,C
5 funnel Step_5 C
6 funnel Step_6 A
7 funnel Thank You A,B,C

Tabloda yer alan 7. adım bir üst başlıkta da bahsi geçtiği üzere sayfa görüntüleme işlemini ifade etmekte. Özellikle GDS sürecinde ilgili işlemin de ayrı bir etkinlik olarak tanımlanması faydalı olacaktır.

Tek Etkinlik Kullanımında GA4 ve GDS Görselleştirme İşlemleri

Tek etkinlik kullanımında etkinliğin log'lanmasını beklemeden Configure > Custom definitions adımlarını izleyerek özel boyut tanımı yapılabilir. Bu sayede ilgili parametre değerleri edinildiğinde rapor içerisinde kullanılabilir hale gelecektir.

gtag("event", "funnel", {
    step_name: "Step_1",
});
//...
GA4 - Realtime - Events & Parameters
GA4 - Realtime - Events & Parameters

Standart raporlar içerisinde parametreleri görebiliyor olmak bu parametrelerin Explore aracılığı ile görselleştirme sürecinde kullanılabilir olacakları anlamına gelmemekte.

GA4 - Explorations
GA4 - Explorations
GA4 - Funnel Steps - Event & Parameter
GA4 - Funnel Steps - Event & Parameter

Keşif sürecinde elde edilen veriler bir gün öncesine ait. Bu nedenle zaman dilimine bağlı olarak veriler gecikme ile uygulanabilmekte. Dolayısıyla, adımların oluşturulması sürecinde ilgili parametre değeri görüntülenmiyor ise beklemeniz (parametrenin doğru bir şekilde iletildiğinden emin iseniz) gerekecek.

GA4: Raporlama - 2

GA4 etkinlik verilerini tek etkinlik ve bu etkinliğe bağlı parametreler aracılığı ile yönetmek istediğimiz durumda, ilgili funnel içerisinde etkinliğin seçilmesinin ardından hemen yanında yer alan Add Parameter ile parametrelerin de eklenmesi gerekmekte.

GA4 - Funnel Steps - Event & Parameter
GA4 - Funnel Steps - Event & Parameter
GA4 - Funnel Steps - Event & Parameter
GA4 - Funnel Steps - Event & Parameter

İlgili alan tıklandığında log'lanan parametreler listelenecektir. Sadece (not set) görüntüleniyor ise, diğer etkinlikler henüz log'lanmamış olabilir. Bu durumda ilk olarak raporun verileri temel aldığı tarih aralığını, ardından etkinlik tanımını gözden geçirmekte fayda olacaktır.

GA4 - Funnel Visualization
GA4 - Funnel Visualization

Adımlar ilişkili parametreler ile sırası ile tanımlandığında üst alanda kullanıcıların da aşamalı olarak değerlerinin değiştiği görülecektir.

GDS: Raporlama - 2

Tek bir etkinlik tanımı kullanacağımız ve adımları step_name parametresi üzerinden böleceğimiz için CASE fonksiyonunu da buna uygun şekilde ele almak gerekiyor.

CASE
  WHEN Event name = 'funnel' AND step_name='Step_1' THEN 'Step 1'
  WHEN Event name = 'funnel' AND step_name='Step_2' THEN 'Step 2'
  WHEN Event name = 'funnel' AND step_name='Step_3' THEN 'Step 3'
  WHEN Event name = 'funnel' AND step_name='Step_4' THEN 'Step 4'
  WHEN Event name = 'funnel' AND step_name='Step_5' THEN 'Step 5'
  WHEN Event name = 'funnel' AND step_name='Step_6' THEN 'Step 6'
  ELSE NULL
END

Bu işlemi yine çoklu etkinlik kullanımında da önerdiğim üzere veri kaynağı / rapor düzeyinde gerçekleştirmek gerekli bir durumda filtreleme işleminin de daha kolay bir şekilde gerçekleştirilebilmesini sağlayacaktır. Ek olarak, Thank You adımına ait sayfa görüntüleme işleminin de yine page_view etkinliği yerine yeni bir etkinlik üzerinden tanımlanması daha uygun olacaktır.

Ardından GDS veri kaynağını güncellememiz gerekir.

Data Source - Refresh
GDS - Connection Change

Veri kaynağının güncellenmesi sürecinde var olan alanlar (fields) ile yeni alanlar listelenir. Görselde de görüldüğü üzere yeni bir boyut olarak tanımladığımız step_name yeni alanlar altında yer almakta.

Custom Dimension
Custom Dimension

Bu, ilgili alanın artık rapor içerisinde kullanılabileceği anlamına gelmektedir. O halde CASE fonksiyonunu yeni etkinlik ve parametrelere uygun olarak güncelleyebiliriz.

CASE fonksiyonunun güncellenmesinin ardından adımlar tablo ve bar chart üzerinden etkinlik sayılarına göre sıralanacaktır.

Örnek bir form akışını temel alarak planladığımız GA4 etkinlik yapısını hem GA4 hem de GDS aracılığı ile nasıl görselleştirebileceğimizi gördük. İlerleyen aşamalarda bu verileri segmentasyon ve kitle tanımları gibi süreçlerde nasıl kullanabileceğimize değinmeye çalışacağım.