GA4, aynı kök domain altındaki subdomain’leri otomatik olarak takip eder: blog.site.com ve magaza.site.com üzerinde aynı Google etiketi varsa tek kullanıcı ve tek oturum olarak görünür. Farklı domainler içinse cross-domain tracking gerekir: tüm domainleri Yönetici → Veri akışları → Etiket ayarlarını yapılandırın → Alanlarınızı yapılandırın bölümüne eklersiniz, Google etiketi de kullanıcının kimliğini _gl parametresiyle domainler arasında taşır.
Bu rehberde iki kurulumu da adım adım (GA4 yönetici paneli, Google Tag Manager ve gtag.js) anlatıyor, nasıl test edileceğini, _gl parametresinin SEO ve kullanıcı deneyimine etkisini ve en sık sorunların çözümünü gösteriyoruz: sıfırlanan oturumlar, self-referral ve ödeme sayfaları.
Cross-Domain ve Subdomain Tracking Arasındaki Fark
Subdomain tracking, aynı kök domain altındaki alt alan adlarında (www.site.com, blog.site.com, magaza.site.com) kullanıcıyı takip etmektir. Google etiketi _ga çerezini varsayılan olarak kök domaine (site.com) yazar; böylece tüm subdomain’ler aynı istemci kimliğini okur. Ek ayar gerekmez.
Cross-domain tracking, farklı domainler arasında (magaza.com ve odeme-magaza.com gibi) kullanıcıyı takip etmektir. Çerezler domainler arasında paylaşılamadığı için ayar yapılmazsa ikinci domain yeni bir istemci kimliği oluşturur: tek ziyaret iki kullanıcı, iki oturum ve kendi sitenizden gelen bir yönlendirme olarak görünür.
- Takip: SubdomainOtomatikÖrnek: blog.site.com → magaza.site.comNe gerektirir: Aynı kök domain altında kalan alt alan adları; GA4 bunu otomatik olarak yapar
- Takip: Cross-domainManuelÖrnek: alisveris.com → odeme.comNe gerektirir: Farklı kök domainler arasındaki kullanıcı hareketleri; özel ayarlar gerektirir
| Takip | Örnek | Ne gerektirir | Kurulum |
|---|---|---|---|
| Subdomain | blog.site.com → magaza.site.com | Aynı kök domain altında kalan alt alan adları; GA4 bunu otomatik olarak yapar | Otomatik |
| Cross-domain | alisveris.com → odeme.com | Farklı kök domainler arasındaki kullanıcı hareketleri; özel ayarlar gerektirir | Manuel |
Tipik cross-domain senaryoları: kendi domaininde çalışan bir ödeme sayfası veya rezervasyon motoru, aynı satış hunisini paylaşan ülke domainleri (site.de, site.fr) ya da farklı domainlerdeki tanıtım sitesi ve uygulama.
Başlamadan Önce: Tek Mülk, Tek Web Akışı
- Domain haritası çıkarın: Kullanıcının geçtiği tüm domain ve subdomain’leri listeleyin; dönüşümün nerede gerçekleştiğini (ödeme, rezervasyon, kayıt) işaretleyin.
- Tek GA4 mülkü kullanın: Aynı kullanıcı yolculuğuna ait tüm domainler tek mülkte olmalı. Ayrı mülkler yalnızca ayrı işletmeler için anlamlıdır; mülkler arası yolculuk birleştirilemez.
- Tek web veri akışı kullanın: Her domain veya subdomain için ayrı akış açmayın. Aynı site için tek mülkte birden fazla web akışı veriyi böler ve çiftler.
- Aynı Ölçüm Kimliğini kullanın: Tüm domainlerin tüm sayfalarında gtag.js veya Google Tag Manager’daki Google etiketi üzerinden aynı G-XXXXXXXXXX kimliği çalışmalı.
GA4 ile Subdomain Tracking Nasıl Yapılır?
Çoğu durumda tüm subdomain’lerde aynı Google etiketi varsa GA4’te subdomain takibi zaten çalışıyordur. Kontrol listesi:
- Ödeme, blog, yardım merkezi ve landing page araçları dahil tüm subdomain’lere aynı Ölçüm Kimliğini kurun.
- Etiket ayarlarında cookie_domain değerini değiştirmeyin; varsayılan (auto) çerezi kök domaine yazar.
- Subdomain’leri “Alanlarınızı yapılandırın” listesine eklemeniz gerekmez. Kök domaini eklemenin zararı yoktur.
- Bir subdomain başka bir platformda çalışıyorsa (örneğin HubSpot landing page veya hazır e-ticaret altyapısı), aynı etiketi oraya da kurun.
blog.site.com, www.site.com’a yönlendirme olarak görünüyorsa genellikle bir sayfada etiket eksiktir ya da farklı Ölçüm Kimliği kullanılıyordur. Önce etiketi düzeltin; yönlendirmeyi gizlemek açığı kapatmaz.
Raporlarda sayfanın hangi subdomain’e ait olduğunu görmek için Ana makine adı (Hostname) boyutunu ekleyin; örneğin Keşfet’te veya Sayfalar ve ekranlar raporunda ikincil boyut olarak.
GA4 ile Cross-Domain Tracking Nasıl Yapılır?
Cross-domain tracking, GA4 yönetici panelinde bir kez yapılandırılır ve hem gtag.js hem Google Tag Manager için çalışır. Google adımları çapraz alan ölçümü yardım makalesinde anlatıyor.
- Tüm domainlerde aynı Google etiketinin (aynı Ölçüm Kimliği) kurulu olduğundan emin olun.
- GA4’te Yönetici → Veri toplama ve değiştirme → Veri akışları yolunu izleyip web akışınızı açın.
- Etiket ayarlarını yapılandırın → Alanlarınızı yapılandırın seçeneğine tıklayın.
- Her domaini bir eşleme türüyle ekleyin (örneğin “Şununla biter” magaza.com ve “Şununla biter” odeme-magaza.com) ve kaydedin.
- Kurulumu test edin (aşağıdaki test bölümü). Değişikliklerin uygulanması kısa bir süre alabilir.
Bundan sonra Google etiketi, listelenen domainlere giden link ve formlara otomatik olarak _gl parametresini ekler; hedef domain bu parametreyi okuyarak aynı istemci kimliğini ve oturumu sürdürür.
Google Tag Manager ile Cross-Domain Tracking
GTM’de GA4, Google etiketi (eski adıyla “GA4 Yapılandırma” etiketi) üzerinden çalışır. Domainler GA4 panelinde listelendikten sonra Google etiketi bu ayarı otomatik okur; GTM’de ayrıca linker alanı eklemeniz gerekmez. “Fields to Set” bölümüne linker yazmayı anlatan eski rehberler, bu panel ayarı yokken kullanılan yöntemi anlatır.
- Ölçüm Kimliğinizi içeren Google etiketinin, domainlerinizde kullanılan her container’da Tüm Sayfalar’da tetiklendiğinden emin olun.
- İki domain farklı GTM container’ları kullanıyorsa ikisi de aynı Ölçüm Kimliğiyle Google etiketini yüklemelidir.
- Domain listesini yukarıdaki gibi GA4 panelinde yapılandırın, ardından GTM Önizleme (Tag Assistant) ile test edin.
gtag.js Koduyla Cross-Domain Tracking
Domain listesini kodda tutmak istiyorsanız veya panel ayarını kullanamıyorsanız linker’ı doğrudan gtag.js’te tanımlayabilirsiniz. Aynı kodu tüm domainlere ekleyin:
<!-- Google tag (gtag.js): her domainde aynı Ölçüm Kimliği -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX', {
linker: {
domains: ['magaza.com', 'checkout-magaza.com']
}
});
</script>- G-XXXXXXXXXX yerine kendi Ölçüm Kimliğinizi yazın.
- Tüm domainleri, her domainde aynı domains dizisinde listeleyin.
- Panel ayarı ya da kod: ikisinden birini kullanın; ikisini birden kullanıyorsanız listeleri aynı tutun.
Cross-Domain ve Subdomain Takibi Nasıl Test Edilir?
- Tag Assistant: tagassistant.google.com’u (veya GTM Önizleme’yi) açın, A domaininde başlayıp B domainine giden bir linke tıklayın. B domainindeki URL’de _gl görünmeli ve Google etiketi iki domainde de tetiklenmeli.
- İstemci kimliği kontrolü: Tarayıcının geliştirici araçlarında (Application → Cookies) iki domaindeki _ga çerezini karşılaştırın. GA1.1.’den sonraki sayı aynı olmalı.
- DebugView: GA4 Yönetici → DebugView’de iki domainden gelen page_view olayları tek cihaz altında, tek oturumda görünmeli.
- Yönlendirme kontrolü: Birkaç gün sonra Trafik edinimi raporunu oturum kaynağına göre inceleyin. Kendi domainleriniz yönlendirme kaynağı olarak görünmemeli.
Gerçek zamanlı raporlar veriyi toplu gösterir; iki sayfa görüntülemenin aynı oturuma ait olup olmadığını göstermez. DebugView ve istemci kimliği kontrolü gösterir.
_gl Parametresi Nedir? SEO ve Kullanıcı Deneyimi
Kullanıcı listelenen bir domainden diğerine tıkladığında Google etiketi URL’ye bir linker parametresi ekler:
https://odeme-magaza.com/sepet?_gl=1*1abc2de*_ga*MTIzNDU2Nzg5LjE3MDAwMDAwMDA.*_ga_XXXXXXXXXX*MTcwMDAwMDAwMC4xLjEuMTcwMDAwMDA1MC4wBu parametre istemci kimliğini ve oturum bilgisini taşır. Değeri yalnızca kısa bir süre (yaklaşık iki dakika) geçerlidir; bu yüzden eski bir _gl değeri içeren kopyalanmış veya yer imine eklenmiş URL oturumları birleştirmez.
_gl SEO’ya Zarar Verir mi?
Normal kullanımda hayır. _gl yalnızca kullanıcıların kendi domainleriniz arasında tıkladığı linklere eklenir; arama motorları bu URL’leri nadiren keşfeder. Her sayfada kendine işaret eden bir canonical etiketi olsun; böylece parametreli her sürüm temiz URL’yi gösterir:
<link rel="canonical" href="https://odeme-magaza.com/sepet" />_gl içeren URL’leri robots.txt ile engellemeyin: engellenen URL taranamaz, arama motoru canonical etiketini de göremez. Bazı rehberlerde hâlâ geçen Search Console URL Parametreleri aracını Google 2022’de kaldırdı.
_gl ve Kullanıcı Deneyimi
Parametre URL’leri uzatır ve paylaşmayı zorlaştırır. JavaScript ile kaldıracaksanız bunu yalnızca Google etiketi yüklenip parametreyi okuduktan sonra yapın; aksi hâlde domainler arası bağlantı kopar. Çoğu durumda en güvenli seçenek parametreyi bırakmaktır.
Pratik bir sorun: bazı form ve CRM araçları sayfanın tam URL’sini bir alana kaydeder ve uzun bir _gl değeri alanın sınırını aşabilir (“fields exceed maximum length: _gl” gibi hatalar). URL’yi query string olmadan veya yalnızca gerekli parametrelerle kaydedin.
GA4 Cross-Domain Takip Hataları ve Çözümleri
Domain Değişince Oturum Sıfırlanıyor
- Bir domain “Alanlarınızı yapılandırın” listesinde yok ya da eşleme türü onu kapsamıyor (www ve www’suz sürüm).
- Domainler arasındaki bir yönlendirme query string’i siliyor ve _gl hiç ulaşmıyor. Yönlendirmelerde parametreleri koruyun.
- Geçiş link veya form yerine JavaScript ile yapılıyor (window.location, bir buton olayı); etiket bu geçişe parametre ekleyemez. Gerçek bir link kullanın ya da linker’ı elle ekleyin.
- Kullanıcı bir domainde çerezleri reddetmiş. Consent Mode ile _ga çerezi oluşmaz, taşınacak istemci kimliği de olmaz.
GA4 Raporlarında Self-Referral
Kendi domainleriniz yönlendirme kaynağı olarak görünüyorsa, her domainin “Alanlarınızı yapılandırın” listesinde olduğunu ve her sayfada etiket bulunduğunu kontrol edin. Listelenen domainler otomatik olarak dahili sayılır; ayrıca istenmeyen yönlendirmeler listesine eklemeniz gerekmez.
Üçüncü Taraf Ödeme Sayfaları (PayPal, Stripe, iyzico)
Kullanıcı ödeme sağlayıcısına gidip geri döndüğünde, hariç tutmadığınız sürece dönüş ziyareti o sağlayıcıya atfedilir. Etiket ayarlarını yapılandırın → Daha fazla göster → İstenmeyen yönlendirmeleri listeleyin bölümüne sağlayıcının domainlerini ekleyin. Ödeme sayfasına etiket koyamıyorsanız satın almayı kendi onay sayfanızda veya sunucu tarafında ölçün.
Eksik veya Yanlış Veri
Tag Assistant’ta etiketin her sayfada tetiklendiğini, tüm domainlerin aynı Ölçüm Kimliğini kullandığını ve çerez onay bannerının etiketten önce yüklendiğini kontrol edin. İkinci, eski bir etiket (örneğin koda gömülü gtag.js ile birlikte GTM) çift sayfa görüntüleme gönderebilir.
Gizlilik ve Onay: KVKK ve GDPR
Cross-domain tracking domainleriniz arasında takma adlı bir tanımlayıcı taşır; bu yüzden GA4’ün geri kalanıyla aynı onay kurallarına tabidir. Kullanıcıdan açık rıza alınmadan analitik çerezleri çalıştırmamak için bir onay yönetim platformu ve Google Consent Mode v2 kullanın; Google, AEA’daki kullanıcılar için reklam kişiselleştirme ve ölçüm özelliklerinde Consent Mode’u zorunlu tutuyor. GA4 IP adreslerini kaydetmez veya saklamaz; veri saklama süresini Yönetici → Veri toplama ve değiştirme → Veri saklama bölümünden ayarlayabilirsiniz.
GA4 Cross-Domain Kurulum Kontrol Listesi
- Kontrol Adımı: GA4 izleme kodları ve GTM etiketleriAylık
- Kontrol Adımı: Cross-domain ve subdomain geçişleri3 ayda bir
- Kontrol Adımı: Self-referral hataları3 ayda bir
- Kontrol Adımı: Dönüşüm ve olay takibiAylık
- Kontrol Adımı: Veri doğruluğu testleri (DebugView & Real-Time)Aylık
| Kontrol Adımı | Önerilen Kontrol Süresi |
|---|---|
| GA4 izleme kodları ve GTM etiketleri | Aylık |
| Cross-domain ve subdomain geçişleri | 3 ayda bir |
| Self-referral hataları | 3 ayda bir |
| Dönüşüm ve olay takibi | Aylık |
| Veri doğruluğu testleri (DebugView & Real-Time) | Aylık |
Sonuç
Her yerde aynı etiket olduğunda subdomain’ler kendiliğinden doğru takip edilir. Farklı domainler için bir panel ayarı ve bir test yeterlidir: domainleri listeleyin, _gl’nin ulaştığını ve istemci kimliğinin eşleştiğini kontrol edin, ödeme sağlayıcılarını hariç tutun. Bunlar doğru olduğunda huni, atıf ve dönüşüm verileriniz birkaç kopuk parça yerine tek bir kullanıcı yolculuğunu anlatır.
GA4 Cross-Domain Tracking: Sıkça Sorulan Sorular
GA4 subdomain’leri otomatik takip eder mi?
Evet. Tüm subdomain’ler aynı Ölçüm Kimliğini kullanıyorsa ve çerez domaini değiştirilmediyse GA4, _ga çerezini kök domaine yazar ve tüm subdomain’leri tek site olarak görür. Cross-domain ayarı gerekmez.
Birden fazla domainde kullanıcıları takip etmek için önce ne kurulmalı?
Tüm domainlere aynı Google etiketi (aynı Ölçüm Kimliği) kurulmalıdır. Ardından web veri akışında “Alanlarınızı yapılandırın” bölümüne domainleri ekleyerek çapraz alan ölçümünü yapılandırırsınız.
Aynı takip kodu farklı domainlere kurulursa ne olur?
Her domain kendi birinci taraf çerezini oluşturur; aynı kişi her domainde farklı bir istemci kimliği alır. Cross-domain tracking yapılandırılana kadar tek ziyaret iki kullanıcı ve iki oturum sayılır, ikinci domain de ilkini yönlendirme kaynağı olarak gösterir.
Google Tag Manager’da linker ayarı yapmam gerekir mi?
Hayır. GTM’deki Google etiketi, GA4 panelinde yapılandırdığınız domain listesini otomatik uygular. GTM’de linker alanı tanımlamak eski bir yöntemdir; kullanıyorsanız listeyi panel ayarıyla aynı tutun.
URL’mdeki _gl parametresi nedir?
_gl, GA4’ün linker parametresidir. Google etiketi bunu listelenen domainler arasındaki linklere ekler; hedef domain aynı istemci kimliğini ve oturumu sürdürür. Kısa süre geçerlidir ve sayfalarda canonical etiketi varsa SEO’yu etkilemez.
Birden fazla domain için tek GA4 mülkü mü, birden fazla mı?
Domainler aynı kullanıcı yolculuğunun parçasıysa (site ve ödeme sayfası gibi) tek mülk ve tek web akışı kullanın. Ayrı mülkleri yalnızca kullanıcılarını siteler arasında izlemeniz gerekmeyen ayrı işletmeler için kullanın.
Kendi domainlerim neden yönlendirme olarak görünüyor?
Genellikle bir domain “Alanlarınızı yapılandırın” listesinde eksiktir, bazı sayfalarda etiket yoktur veya bir yönlendirme _gl parametresini siliyordur. Önce kurulumu düzeltin; kendi domainlerinizi istenmeyen yönlendirmelere eklemek yalnızca belirtiyi gizler.
- GA4
- Google Analytics
- Google Tag Manager
