GA4'te çok dilli site raporlaması: locale bazlı funnel analizi
GA4'ün Language boyutu tarayıcı dilini ölçer, site sürümünü değil. Locale funnel'ı için custom dimension kurulumu, Funnel Exploration ve raporlama pratikleri.
Yazan Roozbeh Nazari · CEO
Çok dilli bir sitede GA4'ün varsayılan raporları size tek bir havuz gösterir: tüm diller, tüm pazarlar, tek eğri. "Site iyi gidiyor" cümlesi bu havuzda kurulur ve tehlikelidir; Türkçe tarafın güçlü performansı, Arapça funnel'ın sessizce sızdırdığını aylarca gizleyebilir. Pazar bazında karar verebilmek için raporlamanın temel birimi oturum değil, oturumun hangi dil sürümünde geçtiğidir. Bu yazı, locale bazlı funnel analizini GA4'te uçtan uca kurmanın pratik adımlarını anlatıyor: hangi boyutla, hangi olaylarla, hangi raporlarla.
İlk ve en yaygın tuzakla başlayalım: GA4'teki hazır "Language" boyutu, sitenizin dil sürümünü değil kullanıcının tarayıcı dilini ölçer. Dubai'de İngilizce kurulu bir tarayıcıyla sitenizin /ar/ bölümünü gezen kullanıcı bu boyutta İngilizce görünür. İki bilgi de değerlidir ama farklı sorulara cevap verirler; tarayıcı dili kitlenizin dil profilini anlatır, site sürümü ise hangi deneyimin dönüştürdüğünü. Funnel analizi ikincisini ister ve GA4 bunu kendiliğinden bilmez; site locale'ini ölçüme kendiniz eklemek zorundasınız. İyi haber, bunun bir öğleden sonraya sığacak bir kurulum olması; kötü haber, kurulmadığı her ayın raporlarının geriye dönük düzeltilememesi, çünkü GA4 veriyi topladığı günkü boyutlarla saklar.
Bunun iki pratik yolu var. Birincisi content grouping: sayfa yolundaki dil önekinden (/tr/, /en/) türetilen bir content_group parametresini yapılandırmaya eklersiniz; İçerik grubu, sayfa raporlarında hazır bir boyut olarak belirir. Kurulumu birkaç satırdır ve sayfa odaklı analizler için yeterlidir. Sınırı şu: content group sayfa görüntüleme kavramına bağlıdır; form gönderimi, WhatsApp tıklaması gibi olay temelli adımları dilimlerken esnekliği düşer.
İkinci ve önerdiğimiz yol, her olaya eklenen event-scoped bir custom dimension: site_locale. Tag Manager'da URL yolundan ya da sayfanın html lang değerinden okunan bir değişken tanımlarsınız ve bu değişken sayfa görüntülemeden form gönderimine, tüm olaylara parametre olarak eklenir. Ardından Admin altındaki Custom definitions bölümünde site_locale'i kaydedersiniz; kaydedilmeyen parametre raporlarda görünmez, bu adım en sık unutulan halkadır. Standart mülklerde event-scoped custom dimension sayısı 50 ile sınırlıdır; bir hakkı kalıcı olarak locale'e ayırmak, çok dilli bir site için bu kotanın en isabetli kullanılan slotlarından biridir. Bu kurulumla funnel'ın her adımı, hangi olaydan geliyorsa gelsin, dil sürümüne göre dilimlenebilir hale gelir. GTM tarafında değişken için karmaşık bir şey gerekmez: sayfa yolunun ilk parçasını okuyan küçük bir custom JavaScript değişkeni ya da aynı işi yapan bir lookup table yeterlidir; önemli olan değerlerin her yerde aynı sözlükten gelmesidir.
Boyut hazır olunca sıra funnel'ın kendisine geliyor. Hizmet odaklı bir site için gerçekçi bir iskelet şöyle: oturum başlangıcı, hizmet sayfası görüntüleme, etkileşim niyeti (form_start ya da WhatsApp butonuna tıklama), gönderim (generate_lead). Bu adımların olay olarak tutarlı isimlendirilmesi ve dönüşüm sayılacakların GA4'te key event olarak işaretlenmesi gerekir. Sonra Explore bölümünde bir Funnel Exploration kurun: adımlar bu olaylar, breakdown boyutu site_locale. Adımlar arası geçen süreyi gösteren seçeneği de açın; pazarlar arasındaki karar hızı farkı, çoğu zaman dönüşüm oranı farkından daha öğreticidir. Adım tanımlarını locale'ler arasında birebir aynı tutmaya da özen gösterin; bir dilde form, diğerinde WhatsApp ağırlıklı bir akış varsa funnel şablonunu ortak paydada kurun, kanala özgü adımları ayrı bir görünümde inceleyin. Farklı tanımlarla kurulmuş iki funnel'ı yan yana koymak karşılaştırma değil, yanılsama üretir.
Bir incelik: kullanıcılar dil sürümleri arasında gezinir. İngilizce sayfaya inip Arapça sayfada form dolduran kullanıcı istisna değildir. Event-scoped site_locale tam da bu yüzden doğru tercihtir; her adımı gerçekleştiği sürümde kaydeder ve geçişleri görünür kılar. Bunun yanına bir de giriş noktası görünümü koyun: landing page boyutunu locale ile birlikte okuyarak hangi dilin trafik çektiğini görürsünüz. İki soruyu bilinçli ayırın: "hangi dil ziyaretçi getiriyor" bir pazarlama sorusudur, "hangi dil sürümü ikna ediyor" bir deneyim sorusudur; ikisini tek metrikte karıştıran raporlar iki soruya da yanlış cevap verir.
Locale bazlı analiz, veriyi böldüğü için küçük sayı gerçekleriyle yüzleşmeyi de gerektirir. Google Signals açık mülklerde raporlama eşikleri devreye girer ve küçük segmentlerde satırlar gizlenebilir; dar tarih aralığında Arapça funnel'ınız kısmen boş görünebilir. Çözüm pencereyi genişletmektir: günlük değil haftalık, gerekirse aylık bakın ve oranları tek gün üzerinden değil trend üzerinden okuyun. Pazarlar arası değer karşılaştırması yapıyorsanız currency parametresinin her pazarda doğru gönderildiğinden emin olun; GA4 değerleri mülkün raporlama para birimine çevirir, ama yanlış etiketlenmiş para birimini sizin yerinize düzeltmez.
Locale boyutu, ücretli tarafla birleştiğinde asıl gücünü gösterir. Kampanya adlandırmasında ve UTM disiplininde dil bilgisini standartlaştırın; böylece kaynak-ortam raporlarını site_locale ile çaprazladığınızda, hangi pazarın reklamının hangi dil sürümüne indiğini görürsünüz. Bu çapraz bakışın ilk yakaladığı hata neredeyse hep aynıdır: yanlış dile inen reklam trafiği. Arapça hedefli kampanyanın İngilizce sayfaya inmesi gibi eşleşme kazaları, funnel'ın en üstünde sessizce bütçe tüketir. Ayrıca site_locale ile filtrelenmiş GA4 audience'ları kurup remarketing listelerinizi pazar bazında ayırın; tek havuzdan yeniden pazarlama, kullanıcıya yanlış dilde reklam göstermenin en kısa yoludur.
Raporlamanın son halkası, bu analizi karar vericinin önüne düzenli koymaktır. Looker Studio'da tek sayfalık bir görünüm çoğu ekip için yeterli: satırlarda locale, sütunlarda funnel adımları, yanında adım geçiş oranları ve haftalık trend. GA4 içinde kalmak isteyenler için comparisons özelliği hızlı bir alternatif. Bir de erken uyarı katmanı önerin: bir locale'de gönderim olayları sıfıra düşerse bunun nedeni genellikle pazarlama değil, bozulan bir çeviri ya da patlayan bir form validasyonudur; GA4'ün custom insights özelliğiyle bu tür anomalilere uyarı kurmak, sorunu haftalık rapordan önce yakalatır. Rapor sayfasının üstüne veri tazeliğini ve son doğrulama tarihini de yazın; bakılmayan bir dashboard'un en büyük riski yanlış veri değil, kırıldığının fark edilmemesidir.
Kapanışta bir saha uyarısı: çok dilli ölçüm bir kez kurulan değil, sürekli doğrulanan bir sistemdir. Her deploy, GTM konteynerine dokunan her değişiklik ve her yeni dil sürümü, site_locale zincirini sessizce kırabilir; bunu ilk fark eden genellikle rapor değil, aylar sonra bütçe toplantısı olur. SEO Evaluate'in Analitik & Veri hizmetinde çok dilli ölçüm planını kurulumla bırakmıyor, düzenli doğrulama rutiniyle birlikte işletiyoruz. İlke basit: önce her pazarı ayrı gören bir ölçüm, sonra bütçe kararı. Havuz veriyle yönetilen çok dilli site, aslında yönetilmiyor demektir.