Google Analytics ve GTM Domain Yönetimi

Cross-domain ve Subdomain Yapılandırma ve Raporlama İşlemleri

Google Analytics ve Google Tag Manager tarafında alan adı (domain) yönetimine dair daha önce Universal Analytics için Web Alanları Arası İzleme ve Google Analytics Çoklu Domain İşlemleri yazılarını paylaşmıştım.

AA

Geçen zaman içerisinde pekçok değişiklik yaşandı. Bunlardan ilki çok tazesiyle (aslında App + Web adıyla bildiğimiz) GA4'ün resmi olaran duyurulmasıydı. Çok zamandır beta olarak deneme imkanımız olan araç artık Google Analyics üzerinden de yükseltme seçeneği ile birlikte sunulmaya başlandı. Hizmet verdiğim müşteriler (uygulama ve web'i bir arada yönetmeye çalışan) tarafında da süreç planlamaya başladık. Diğer bir konu da, entegrasyonların artık web-uygulama yönetiminin içerisine iyiden iyiye girmiş olması. Artık kapsamlı içerik yönetim sistemleri yerine pek çok durum için uygun servisler bir arada kullanılabilmekte.

Örneğin, web sitenizi Webflow üzerinden oluşturup uygulamanızı bir subdomain (alt alan adı) ile web sitenizle ilişkilendirebiliyor, formlarınızı Typeform gibi form-anket araçları üzerinden yönetebiliyor, varış sayfalarınızı Unbounce üzerinden yönetebiliyorsunuz. Elbette tüm bu süreçte farklı alan adları (cross-domain) ve alt alan adları (subdomain) arasında geçişler yaşanabiliyor. Bu durumda, reklam performansı ve web site trafiği ile ilgili çeşitli sorunlar yaşanması da mümkün hale gelebiliyor.

Daha önce yayınladığım yazılarda ga (analytics.js) kütüphanesini de açıklama içerisine dahil etmiştim. Bu yazıda doğrudan Global Site Etiketi (gtag), UA/GA4 sürümleri ve Google Tag Manager ayarlarından ve raporlama işlemlerinden bahsedeceğim.

Öncelikle, düzenlemelerin nedenlerini tam olarak anlayabilmek adına konunun biraz temeline inelim.

Google Analytics Raporları ve Alan Adı Yönetimi

Google Analytics kurulumu gerçekleştirdiğinizde sizden bir alan adı girmeniz istenir. Bu mülk oluşturma işleminin temelini ifade eder. Özetle, her alan adı tanımı bir Google Analytics tanımlayıcısına (Property Id) (UA-1234567-89, 123456789 vb.) sahip bir mülktür.

Behavior > Site Content > All Pages raporu altında listelenen Page tanımları bu alan adı altındaki sayfalardır. Unutmadan ekleyeyim, alan adı Hostname, sayfalar ise Request URI ile tanımlıdır.

Google Analytics, kullanıcılar tarafından başlatılan oturumları (session) izlemek amacıyla her bir isabet alındığında bir istemci kimliği değeri (client ID) toplar (bkz. Audience > User Explorer) ve bu değerler oturumun gerçekleştirildiği cihazda çerez (cookie) olarak saklanır1. Bu cookie içerisindeki benzersiz müşteri kimliği ile bir kullanıcının yeni bir kullanıcı (new visitor) mı yoksa geri gelen bir kullanıcı (returning visitor) mu olduğunu belirlenir. Aynı mülke eşleşen bir istemci kimliğine sahip bir isabet zaten gönderilmişse, bir kullanıcı geri dönmüş (bkz. Audience > Behavior > New vs Returning) olarak kabul edilir. Çerezler alan adı ile ilişkili olduğu için farklı alanlar tarafından erişilemezler.

Müşteri yolculuğunun tamamını daha etkili bir şekilde ölçülebilmesi için oturumların birden çok alanda ilişkilendirilebilmesi gerekir. İlişkilendirme için istemci kimliği değeri bir alandan diğerine aktarılmalıdır. Google Analytics site bağlama ile izleme kodu, kaynak web alanınıdaki bağlantıya kullanıcı kimliği, bağlayıcı parametresi, geçerli zaman damgası ve tarayıcı meta verilerini içeren bir parametre ekler.

Bağlayıcı parametresi şuna benzer; _ga=1.199239214.1624002396.1440697407

Bu parametre Google Analytics'in istemci kimliği ile alan adları arasında oturumları ilişkilendirmesini sağlar. Bu sayede, hedef web alanı ya da alanları istemci kimliğini kullanabilir ve aynı kullanıcıya sahip farklı alan adlarındaki oturumları birleştirebilir. Web alanları arası izleme birden fazla üst düzey alan adı arasında gerçekleştirecekse her alan için Google Analytics izleme kodunda değişiklik yapılması gerekir.

Bir kullanıcı yolculuğu ilk alanınızdan (birincil/kaynak) ikinci alanınıza (hedef) geçtiğinde, Google Analytics bunu ilk alanınız tarafından ikinci alanınıza yönlendirilen kullanıcı (referral) olarak yorumlar ve Analytics yeni bir oturum oluşturur. Kullanıcı etkileşimlerini birden çok alanda tek bir oturum olarak değerlendirmek için alanlarının yönlendirme hariç tutma listesine (Property > Tracking Info > Referral Exclusion List) eklenmesi gerekir2.

Örneğin, kurumsal sitenizi görüntüleyen (birincil alan) bir kullanıcının ürünlerinizin yer aldığı bir başka siteye (ikincil alan) gittiğini ve ardından kurumsal sitenize döndüğünü varsayalım. İkincil alan olarak kullanılan web adresi yönlendiren alan olarak hariç tutulmaz ise birincil alana her bir geliş için bir adet olmak üzere iki oturum sayılır. Ancak, ikincil alana gelen yönlendirmeleri hariç tutarsanız, birincil alana yapılan ikinci ziyaret yeni bir oturumu tetiklemez ve yalnızca bir oturum sayılır.

Web alanları arası izlemeyi (site bağlama) ile birlikte yönlendirme hariç tutma işlevini kullandığımızda, bir kullanıcı tek bir oturumda birden çok alan ile etkileşim kursa dahi birden çok oturumun tetiklenmemiş olur2.

Analytics mülkü ilk defa oluşturulduğunda, web alanı yönlendirme hariç tutma listesine otomatik olarak eklenir. Dolayısıyla, birden çok alt alanı izleyen bir web mülkünüz varsa kendine yaptığı yönlendirmeler görülmeyecektir.

Alan adınızın hariç tutma listesine eklenmediği ya da silindiği durumda (Örn. alanadi.com) bir kullanıcı sitenizdeki bir alt web alanından diğerine geçerse (app.alanadi.com), Analytics bunu bir ana makine adından yapılan yönlendirme olarak görür ve yeni bir oturum başlatır. Sonuç olarak, raporlarda yapay olarak artırılmış oturum sayısı verileri oluşacaktır.

Yönlendirme hariç tutma listesi, İÇERİR (contains) eşlemesini kullanır. Örneğin, example.com adresini girerseniz sales.example.com adresinden gelen trafik de example.com alan adını içerdiği için hariç tutulur2.

Birincil (Kaynak) Alan

Birincil alan Google Analytics mülkünün ilişkili olduğu alan adını ifade eder.

İkincil (Hedef) Alan

Birincil alandan trafiğin geleceği ve başka Google Analytics mülkü ile ilişkili alan adını ifade eder.

Her iki alan da esasında trafiğin geldiği ya da gideceği senaryoya göre birincil ve ikincildir. Dolayısıyla, alan adları ile ilişkilendirme işlemi buna yönelik gerçekleştirilmelidir. Bu ilişkilendirme işlemi site bağlama (site linking) olarak ifade edilmektedir3. Hemen bir kod üzerinden örneklendireyim.

GTAG ve Site Bağlama

Hedef etki alanında, linker parametresi içerisinde bir domains değeri belirtildiğinde gtag.js URL'deki bağlayıcı parametrelerini kontrol eder. Bağlayıcı parametresi bulunursa ve geçerliyse, gtag.js istemci kimliğini parametreden ayıklar ve depolar. gtag.js ile etki alanları arası ölçümün etkinleştirilmesi (site bağlama), bağlayıcı parametresinin sayfadaki bağlantı ve formlardaki URL'lere otomatik ve manuel olarak eklenmesine olanak tanır4.

Hemen örneklendirme sürecine bakalım. Birincil sitemizde de ikincil (ve varsa diğer) sitemizde de kendilerine ait Google Analytics snippet'in yer aldığını varsayalım. Bu durumda her iki snippet içerisine de alan adları ile ilişkiyi sağlayacak eklemeler yapmamız gerekir.

Son bir hatırlatma, site bağlayıcı parametresi 2 dakika kullanım süresine sahiptir. Bu zaman aşıldıktan sonra ilişkilendirme gerçekleştirilemez. Aynı şekilde, bağlayıcı parametresi zamanı dolacağı için manuel olarak da bu parametreyi kullanamazsınız. Ek olarak, ilgili parametre bağlantı ile click etkinliği ile ilişkilendirilir. Yani, sayfanın kaynak koduna baktığınızda URL'ler içerisinde bağlayıcı parametresini göremezsiniz.

Özel İçerik

Web analitiği, kod kurulumları, servis incelemeleri, örnekler ve video anlatımlarını takip etmek, içeriklerle ilgili destek almak ister misin?