GOOGLE TAG MANAGER
DİJİTAL SİNİR SİSTEMİ
⚠️ Uyarı: Amatörler İçin Değil
Şu an sitende onlarca farklı JavaScript kodu birbirini eziyor, siteni yavaşlatıyor ve verilerini eksik sayıyor. Biliyorum.
Bu rehberin en sonunda, sadece Kıdemli Developerların bildiği ve GTM'i bir "Veri Silahına" çeviren o LOOKUP TABLE stratejisini açıklayacağım. Oraya gelene kadar temelleri sağlam atman şart.
Google Tag Manager Nedir?
Dürüst olalım: Her reklam platformu (Facebook, Google Ads, Linkedin, Tiktok) senden sitene bir kod parçası eklemeni istiyor. Her seferinde yazılımcını arayıp "Abi şu Pixel kodunu Header'a gömer misin?" demekten yorulmadın mı? O kodlar biriktikçe siten bir çöplüğe dönüyor.
GTM, web siten ile pazarlama araçların arasındaki Gümrük Kapısıdır. Sen tüm kodları (tagleri) GTM'e verirsin, GTM sitene tek bir satır kodla bağlanır. "Siteye kod ekle" devri bitti. "Konteyner'ı yönet" devri başladı.
"Veriyi kontrol edemeyen, bütçesini çöpe atar. GTM senin kontrol panelindir."
Spagetti Kod Yapısı
- ❌ Her kampanya için yazılımcıya Ticket açmak.
- ❌ Kodların head/body alanında çakışması.
- ❌ Sitenin açılış hızının (LCP) ölmesi.
- ❌ Hangi kodun çalıştığını asla bilememek.
Merkezi İstihbarat
- ✅ Sıfır Yazılımcı Bağımlılığı: Kodu kendin yayınla.
- ✅ Versiyon Kontrolü: Hata yaparsan 1 tıkla geri al.
- ✅ Debug Modu: Kod çalışıyor mu diye canlı izle.
- ✅ Asenkron Yükleme: Site hızını etkilemez.
Bunları Bilmen Lazım
Savaş alanındaki mühimmatların. GTM arayüzünü açtığında "bu ne?" diye bakma.
Web sitendeki kutu
Ne yapacak? (Kod)
Ne zaman çalışacak?
Dinamik Veri
Uygulamalı Workshop
Adım adım veri imparatorluğu kurulumu.
Hesap ve Konteyner Oluşturma
Google Tag Manager'a (tagmanager.google.com) Google hesabınla gir. "Create Account" de. Şirket ismini gir. Ülke seç. Container Name kısmına site adresini yaz (örn: www.sitem.com). Hedef platform olarak WEB seç.
Snippet Kodlarını Yerleştirme
Sana iki parça kod verecek.
1. Kod: <head> etiketinin en üstüne (mümkün olduğunca yukarı).
2. Kod: <body> etiketinin hemen açılışından sonraya.
Bunu bir kez yapacaksın, bir daha kodlara dokunmayacaksın.
GA4 Konfigürasyon Etiketi
İlk iş Analytics'i bağlamak. "Tags" > "New" > "Tag Configuration" tıkla. "Google Analytics" seçeneğini seç. Ardından "Google Tag" seç.
Tag ID kısmına GA4 ölçüm kimliğini (G-XXXXXXXX) yapıştır.
Tetikleyici (Trigger) Atama
Etiketi oluşturduk ama ne zaman çalışacak? Aşağıdaki "Triggering" kutusuna tıkla. Varsayılan olarak gelen "All Pages" (Tüm Sayfalar) seçeneğini seç. Çünkü Analytics tüm sayfalarda çalışmalı.
Önizleme (Preview) Modu
Yayına almadan önce test etmelisin. Sağ üstteki "Preview" butonuna bas. Site adresini gir. Yeni bir pencerede siten açılacak ve sağ altta "Tag Assistant Connected" yazacak.
Hata Ayıklama (Debugging)
Tag Assistant penceresinde "Tags Fired" (Ateşlenen Etiketler) kısmına bak. "Google Tag - GA4" etiketini orada görmen lazım. Görüyorsan başardın. Görmüyorsan Trigger hatası vardır.
Yayınlama (Publish)
Test başarılıysa sağ üstteki mavi "Submit" butonuna bas. "Version Name" kısmına ne yaptığını yaz (Örn: GA4 Kuruldu). Ve "Publish" diyerek dünyaya duyur.
Custom HTML Ekleme (Facebook Pixel)
Facebook Pixel veya LinkedIn Insight Tag gibi araçlar için hazır şablon yoksa "Custom HTML" etiketini seç. Sana verilen JS kodunu yapıştır. Trigger yine "All Pages".
!function(f,b,e,v,n,t,s)...
fbq('init', '123123');
fbq('track', 'PageView');
</script>
Tıklama Takibi (Click Trigger)
Variables menüsünden "Click" ile ilgili tüm kutucukları işaretle. Sonra yeni bir Trigger oluştur. Tipi "Click - All Elements" olsun. Şart olarak "Click Text" > "contains" > "WhatsApp" seç. Artık WhatsApp butonuna basanları sayabilirsin.
Click Text contains "WhatsApp"
Sürüm Geri Alma (Rollback)
Bir şeyi bozdun mu? Panik yok. "Versions" sekmesine git. Çalışan eski bir versiyonun yanındaki üç noktaya tıkla ve "Set as Latest Version" veya "Publish" de. Anında eski haline döner.
Avantajlar ve Dikkat Edilecek Noktalar
GTM, pazarlama ekiplerinin hızını artırır ve yayına çıkmadan önce güvenli test yapmalarını sağlar. Bununla birlikte, yanlış kural tanımları ya da disiplinli bir dataLayer olmaması raporlarda karmaşaya yol açabilir. Aşağıdaki başlıklarda güçlü yönleri ve dikkat edilmesi gereken noktaları net ifadelerle görebilirsiniz.
- Hız kazanırsınız: Etiket ekleme, kaldırma ve koşul güncellemelerini dakikalar içinde yapabilir; geliştirme sırasına girmeden ilerleyebilirsiniz.
- Yayını güvenle kontrol edersiniz: Preview & Debug modunda sorunları yayın öncesinde görebilir ve hataları hızlıca düzeltebilirsiniz.
- Değişiklikleri izleyebilirsiniz: Versiyonlama sayesinde neyin değiştiğini takip edebilir ve gerekirse önceki bir sürüme geri dönebilirsiniz.
- Koşullara göre tetikleme yapabilirsiniz: URL, buton tıklaması, form gönderimi ya da kaydırma yüzdesi gibi koşulları kullanarak etiketlerin ne zaman çalışacağını net biçimde kontrol edebilirsiniz.
- Tek panelde düzen sağlarsınız: Farklı araçlara ait etiketleri bir ekranda yönetebilir ve ekip içi görünürlüğü artırabilirsiniz.
- Geniş kurallar veri şişirebilir: Çok geniş bir tetikleyici tanımlarsanız etiketi gereksiz sayfalarda çalıştırabilir ve raporlarda gürültü üretebilirsiniz.
- dataLayer disiplini zorunludur: Düzenli tanımlar ve bir veri sözlüğü oluşturmazsanız, olay adları ve alanlar karışarak analizlerinizi zorlaştırabilir.
- Fazla etiket performansı etkileyebilir: Gereksiz ya da tekrarlı etiketler sayfa yükünü artırabilir; bu nedenle inceleyerek temizlik yapmanız gerekir.
- Rıza olmadan tetikleme risklidir: Kullanıcı rızası alınmadan çalışan etiketler yasal risk doğurabilir; bu yüzden rıza (consent) tetikleyicilerini doğru kurgulamanız gerekir.
Kurulum Kontrol Listesi (Önizleme)
GTM’yi Adım Adım Kuruyoruz (WordPress Odaklı)
Bu bölümde hesabı açmaktan başlayıp WordPress’e eklemeye, ilk GA4 etiketini oluşturmaya ve yayına güvenle almaya kadar olan süreci adım adım ilerleteceğiz. Anlatım başlangıç seviyesine uygundur; her adımda “neden böyle yapıyoruz?” sorusuna da kısa cevap veriyoruz.
1) Hesap & Konteyner Oluşturma
GTM hesabını aç
Hesap adı olarak şirket adını kullanabilir ve ülke seçimini yapabilirsin. Ardından bir konteyner oluştur ve “Web” platformunu seç.
Konteyner kodunu al
GTM sana iki parça kod verir. Üst kısım <head> içine; yedekleme amaçlı bölüm ise <body> tag’inin hemen altına eklenmelidir. Bu ayrım, etiketlerin en erken noktada yüklenebilmesini sağlar.
2) Kodu Siteye Yerleştirme (Platforma Göre)
WordPress’te en pratik yol, temayı bozmadan kodu yönetecek bir eklenti kullanmaktır. Aşağıdaki yöntemle iki parçalı GTM kodunu doğru alanlara yerleştirebilirsin.
- “Header & Footer” veya “Site Kit by Google” gibi güvenilir bir eklentiyi kur ve etkinleştir.
- Aşağıdaki head ve body kodlarını ilgili alanlara yapıştır.
- Değişiklikleri kaydet ve siteni ön yüzde açarak kaynak kodda GTM snippet’ını gör.
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXXXXX');</script>
<!-- End Google Tag Manager --><!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-XXXXXXX" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) -->
Shopify’da theme.liquid dosyasında <head> ve <body> bölgelerine GTM kodlarını yerleştirebilirsin. Checkout için Plus olmayan mağazalarda sınırlamalar bulunduğunu unutma.
Özel yazılımda <head> ve <body> çıkışına erişimin varsa iki parçayı doğrudan şablona ekleyebilir ve ortam bazlı (dev/stage/prod) yapılandırma sağlayabilirsin.
3) İlk Etiket: GA4 Yapılandırma (Config)
Başlangıç için en güvenli adım, GA4 yapılandırma etiketini tüm sayfalarda çalıştırmaktır. Bu etiket, sayfa görüntüleme gibi temel verileri GA4’e gönderir ve izleme altyapısının sağlıklı olduğunu doğrulamanı sağlar.
- GTM panelinde Tags → New seç ve “Google Analytics: GA4 Configuration” tipini seç.
- GA4 ölçüm kimliğini (G-XXXXXXXX) gir.
- Tetikleyici olarak All Pages yerine “Initialization - All Pages” veya normal “All Pages” seçebilirsin. Başlangıç için “All Pages” yeterlidir.
- Kaydet ve önizlemede doğrula.
“All Pages” neden bazen riskli görünür?
Geniş tetikleyiciler, etiketi istemediğin sayfalarda da çalıştırabilir. Başlangıçta temel ölçüm için uygundur; ancak özel dönüşümlerde URL veya öğe bazlı filtrelerle kapsamı daraltman daha sağlıklı sonuç verir.
4) Tetikleyiciler: URL, Buton, Form
Tetikleyiciler, etiketlerin ne zaman çalışacağını belirler. Aşağıdaki örnekler en sık kullanılan temel senaryoları kapsar ve başlangıçta net bir kontrol sağlar.
URL Bazlı
“Teşekkürler” sayfası gibi belirli URL’lerde dönüşümü işaretlemek istersen “Page View → Some Pages → Page URL contains /tesekkurler” şeklinde koşul tanımlayabilirsin.
Buton Tıklaması
“Teklif Al” butonu için “Click – All Elements” olayını dinleyip Click Text veya CSS Selector ile filtreleyebilirsin. Böylece yalnızca ilgili buton tıklanınca etiketi tetikleyebilirsin.
Form Gönderimi
Form eklentine göre “Form Submission” tetikleyicisi ya da dataLayer eventi kullanabilirsin. Form ID’si veya URL ile filtre yapman, diğer formları etkilemeden ölçüm yapmanı sağlar.
Scroll / Video
Scroll derinliği ile ilgileniyorsan “Scroll Depth” tetikleyicisini yüzde değerleriyle ayarlayabilir; videolarda ise YouTube tetikleyicisini kullanarak başlatma/durdurma gibi olayları izleyebilirsin.
5) Preview & Publish: Yayın Öncesi Güvenlik
Yayınlamadan önce hataları görmek ve verinin doğru aktığını kontrol etmek için Preview & Debug modunu kullanmalısın. Bu mod, hangi etiketin nerede ve hangi koşulda tetiklendiğini açıkça gösterir.
- Preview butonuna tıkla ve siteni açarak etiket akışını incele.
- Variables panelinde Click Text, Page URL gibi değişkenlerin değerlerini doğrula.
- Her şey yolundaysa Submit → Publish ile sürümü yayınla ve versiyon notu düş.
Doğrulama sırasında neye bakmalıyım?
Etiketin tetiklendiği olayın doğru koşullarda çalıştığını; veride beklenen alanların dolu olduğunu ve “fire” sıralamasında çakışma olmadığını kontrol etmelisin.
Data Layer Oluşturucu
Yazılımcına "bunu siteye ekle" diyeceğin kodu senin yerine ben yazıyorum. Event adını ve parametreleri gir.
dataLayer.push({
'event': 'generate_lead',
'currency': 'TRY'
});Sır Tutabilir Misin? 🤫
"Sektörde herkes her Pixel için ayrı bir Tag oluşturur. 50 tane Pixel varsa 50 tane Tag olur. Bu aptallıktır. GTM'in gerçek gücü LOOKUP TABLE değişkenindedir. Tek bir Tag ile 50 farklı Pixel'i yönetebilirsin."
// TEK TAG TEORİSİ
Variable Type: Lookup Table
Input Variable: {{Page Path}}
// Girdi -> Çıktı Eşleşmesi
Input: "/tesekkurler" -> Output: "Pixel_ID_1"
Input: "/sepet" -> Output: "Pixel_ID_2"
Input: "/blog" -> Output: "Pixel_ID_3"
// Sonuç:
50 Farklı Tag yerine, ID kısmına sadece {{Lookup Table}} yazarsın.
GTM, sayfaya göre ID'yi kendi değiştirir.
Merak Edilenler (FAQ)
GTM kullanırsam site hızım düşer mi? ↓
Hayır, aksine artar. GTM "asenkron" çalışır. Yani sitenin görsel yüklenmesini engellemeden arka planda kodları çalıştırır. Ayrıca kodları temizlediğin için siten rahat nefes alır.
GTM kullanmak için yazılımcı olmalı mıyım? ↓
Hayır. GTM pazarlamacılar için yapılmıştır. Ancak "Data Layer" gibi konularda ileri seviyeye geçmek için temel HTML/JS mantığını anlaman (bu rehberdeki gibi) seni öne geçirir.
Eski kodlarımı (Analytics vb.) siteden silmeli miyim? ↓
KESİNLİKLE EVET. GTM üzerinden GA4 kurup, sitede de hardcoded GA4 kodu bırakırsan veriler iki kez sayılır (Double Counting). GTM'e taşıdığın her şeyi sitenin kaynak kodundan sildir.
Sahne Sende
Okumak yetmez. Şimdi git ve GTM hesabını aç, o spagetti kodları temizle.
🚀 Veri Takibin Hatalı mı?
GTM kurulumun yanlışsa reklam bütçen çöp oluyor demektir. Conversion API, Server-Side Tagging ve kusursuz veri akışı için profesyonel destek al. Hataları sıfıra indirelim.
Gökhan Vatancı ile Hızlıca Görüşün
Freelance SEO Uzmanı
- Ocak 12, 2026
- Yorum Yok