Kendi sitenizin GA4’te trafik kaynağı olarak görünmesi, raporları sessizce bozar. Bir kampanya satış getirmiş gibi görünür, sonra bakarsınız dönüşüm “referral” altında kendi domaininize yazılmıştır.
Bu sorun çoğu zaman tek bir ayar eksikliğinden çıkmaz. GA4 self referral problemini düzeltmek için önce kaynağı bulmalı, sonra doğru ayarı doğru yerde yapmalısınız.
GA4 self referral nedir, raporda nasıl yakalanır?
Self referral, kullanıcının sizin sitenizden çıkıp yine sizin domaininizden gelmiş gibi görünmesidir. Sonuçta oturum bölünür, kaynak ataması sapar ve dönüşüm yolu kirlenir.
İlk kontrol noktası, Raporlar > Edinme > Trafik edinme ekranıdır. Burada “Session source / medium” ya da “Session source” boyutuna bakın. Kendi domaininiz, bir alt domaininiz veya ödeme dönüşünde görünen ara domainler üst sıralardaysa sorun vardır.

GA4’te bunun en sık nedenleri şunlardır: bazı açılış sayfalarında etiketin hiç çalışmaması, aynı sayfada hem GTM hem hardcoded gtag.js yüklenmesi, yönlendirme sonrası linker bilgisinin taşınmaması, consent banner yüzünden ilk hit’in kaçması ve üçüncü taraf checkout akışları.
Bir başka işaret de dönüşümlerin kanal değiştirerek görünmesidir. Mesela Google Ads ile gelen kullanıcı, ödeme dönüşünden sonra siteniz/referral olarak yeniden yazılır. Bu durumda ROAS, organik katkı ve kanal karşılaştırmaları yanlış görünür.
GA4 odaklı olmasa da Google’ın self-referral açıklaması sorunun kök nedenlerini hâlâ net anlatıyor.
Self referral ile referral exclusion aynı şey değil
Burada en sık karışan nokta, semptom ile çözüm aracının aynı sanılmasıdır. Self referral, raporda gördüğünüz sorundur. Referral exclusion, GA4 arayüzündeki “List unwanted referrals” ayarıdır.
Bu ayara şu yoldan ulaşabilirsiniz: Admin > Data streams > Web stream > Configure tag settings > List unwanted referrals.
Kısa karşılaştırma aşağıda:
| Durum | Doğru işlem | Neden |
|---|---|---|
| Kendi ana domaininiz referral görünüyor | Etiket kapsamını ve çift kurulumları düzeltin | Sorunun kökü uygulamadadır |
| Payment gateway domaini referral görünüyor, domain sizin değil | Unwanted referrals listesine ekleyin | Yeni oturum başlatmasını engellersiniz |
| www.site.com ile blog.site.com arasında geçiş var | Aynı Measurement ID kullanın, domain ayarını kontrol edin | Kullanıcıyı tek akışta tutarsınız |
| site.com ile brandstore.com ikisi de sizin | Cross-domain ölçüm kurun | Client ID ve oturum sürekliliği korunur |
Kendi domaininizi unwanted referrals listesine eklemek bazen raporu temizler, ama kırık etiket kurulumunu tek başına düzeltmez.
Bu yüzden referral exclusion, bir temizlik katmanıdır. Gerçek self referral varsa önce nedenini bulun, sonra exclusion ekleyin.
Domain yapılandırması ve cross-domain ayarı ne zaman gerekir?
2026 arayüzünde temel ayar yine web stream içindedir. Yol çoğu hesapta şu şekildedir: Admin > Data streams > ilgili Web stream > Configure tag settings > Configure your domains. Burada “Domain contains” kuralı ekleyip ana domaininizi yazabilirsiniz. Tek kök domain altındaki subdomain’ler için çoğu zaman bu yeterlidir.
Subdomain senaryosunda üç şeyi kontrol edin. Aynı GA4 Measurement ID kullanın. Tüm şablonlarda aynı Google tag çalışsın. Geçiş yapılan sayfalarda etiket eksik olmasın. www.site.com ile blog.site.com arasında referral görüyorsanız sorun çoğu zaman cross-domain eksikliği değil, tutarsız kurulumdur.
Farklı domain senaryosunda durum değişir. site.com’dan checkout.brandstore.com’a ya da brand.com’dan brandshop.com’a geçiyorsanız ve iki alan adı da sizin kontrolünüzdeyse cross-domain gerekir. Bu ayar, linker parametresini taşır ve kullanıcının yeni bir kaynakla başlamasını önler.
Ödeme sağlayıcıları ayrı düşünülmelidir. Iyzico, PayTR, Stripe Checkout veya benzeri bir dış domaine gidiyorsanız çoğu zaman tam cross-domain kuramazsınız, çünkü karşı tarafın etiketine siz karar vermezsiniz. Bu durumda ilgili ödeme domainlerini “List unwanted referrals” alanına ekleyin. Sonra satın alma olayının kendi teşekkür sayfanızda ölçüldüğünden emin olun.
Benzer senaryoları uygulamalı GA4 self-referral rehberinde de görebilirsiniz.
GTM ve gtag.js tarafında en sık hata noktaları

GTM kullanıyorsanız ilk bakacağınız yer, aynı sayfada kaç farklı Google tag çalıştığıdır. Tema içine eklenmiş gtag.js ile GTM içindeki Google tag birlikte çalışıyorsa oturum ve kaynak verisi kolayca bozulur.
Şu kontrol listesi iş görür:
- Tüm sayfalarda tek bir Google tag ya da tek bir GA4 kurulumu çalışsın.
- Aynı site ailesindeki tüm alanlarda aynı Measurement ID kullanılsın.
- Consent modu varsa ilk page_view gereksiz gecikmesin.
- Checkout’a giden linkler yönlendirme öncesi linker bilgisini taşıyabilsin.
- GTM Preview ve GA4 DebugView ile geçiş akışı test edilsin.
gtag.js tarafında da kural aynı. Ayrı şablonlarda farklı Measurement ID kullanmayın. Header’da bir sürüm, footer’da başka bir sürüm bırakmayın. Eğer farklı domainler sizin kontrolünüzdeyse Google tag ayarlarında tanımladığınız domain listesiyle tutarlı ilerleyin.
SPA kullanan sitelerde route değişimlerini de test edin. Bazı self referral vakaları, ilk açılışta değil sanal sayfa geçişlerinde ortaya çıkar.
Düzeltmeden sonra hemen karar vermeyin. Önce Realtime ve DebugView’da domain geçişini test edin. Ardından 24 ila 48 saat sonra Trafik edinme raporunda session source değerlerine bakın. Kendi domaininiz kaybolmuşsa sorun büyük ölçüde çözülmüştür.
Hızlı aksiyon planı
Önce sorunu saklamayın, kaynağını bulun. En çok işe yarayan yaklaşım, kendi domain referral’ını bir rapor problemi değil, kurulum problemi olarak görmektir.
- Trafik edinme raporunda hangi domainin referral verdiğini netleştirin.
- Tüm sayfalarda tek kurulum ve tek Measurement ID kullandığınızı doğrulayın.
- Sizin kontrolünüzdeki farklı domainler için cross-domain kurun, dış ödeme alanlarını unwanted referrals listesine ekleyin.
- Son olarak GTM Preview, DebugView ve gerçek test siparişiyle akışı baştan sona kontrol edin.
GA4 self referral sorunu çoğu zaman tek ayarla bitmez. Doğru sırayla yapılan birkaç küçük düzeltme, kampanya ve satış verisini yeniden güvenilir hale getirir.