Web sitelerinde analitik, reklam pikselleri ve diğer izleme kodlarını yönetmek geliştiriciler için zaman alıcı bir süreçtir. Her kod değişikliğinde teknik ekibe iş düşer, testler yapılır ve canlıya alınır. Google Tag Manager (GTM) bu süreci merkezi bir arayüzden yönetmeyi sağlayarak pazarlama ve analitik ekiplerinin bağımsız çalışmasına imkan tanır. Bu rehberde GTM kurulumundan ileri seviye etiket yönetimine, veri katmanından onay moduna kadar tüm detayları inceleyeceğiz.
Google Tag Manager Nedir?
Google Tag Manager, web sitelerine ve mobil uygulamalara kod parçacıkları (etiketler) eklemeyi kolaylaştıran ücretsiz bir etiket yönetim sistemidir. GTM sayesinde Google Analytics, Google Ads dönüşüm izleme, Facebook Pixel gibi üçüncü parti kodları tek bir arayüzden yönetebilirsiniz.
GTM Kullanmanın Avantajları
Geliştirici bağımsızlığı: Pazarlama ekibi yeni bir izleme kodu eklemek istediğinde geliştiriciye ihtiyaç duymaz.
Merkezi yönetim: Tüm etiketler tek bir yerden kontrol edilir. Hangi kodun çalıştığını, ne zaman tetiklendiğini görmek kolaydır.
Sürüm kontrolü: Her değişiklik kaydedilir. Sorun çıkarsa önceki sürüme dönebilirsiniz.
Test ortamı: Önizleme modu sayesinde etiketleri canlıya almadan test edebilirsiniz.
Site hızı: Etiketler asenkron yüklenir ve sayfa yüklemesini engellemez.
Hesap ve Konteyner Oluşturma
GTM yapısı iki seviyeden oluşur: Hesap ve Konteyner. Bir hesap altında birden fazla konteyner bulunabilir. Genellikle bir şirket için bir hesap, her web sitesi veya uygulama için ayrı konteyner oluşturulur.
Hesap Oluşturma
- tagmanager.google.com adresine gidin
- Google hesabınızla giriş yapın
- Hesap Oluştur butonuna tıklayın
- Hesap adını girin (şirket veya proje adı)
- Ülke seçin
Konteyner Oluşturma
- Konteyner adını girin (web sitesi adı)
- Hedef platformu seçin:
- Oluştur butonuna tıklayın
- Kullanım şartlarını kabul edin
Konteyner oluşturulduktan sonra GTM-XXXXXXX formatında benzersiz bir konteyner kimliği atanır.
GTM Kodunu Siteye Ekleme
Konteyner oluşturulduktan sonra iki kod parçacığı görüntülenir. Bu kodları sitenizin her sayfasına eklemeniz gerekir.
Birinci Kod Parçacığı (Head)
JavaScript içeren bu kod, sayfanın head bölümüne mümkün olduğunca yukarıya eklenmelidir:
<!-- 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 -->
İkinci Kod Parçacığı (Body)
Noscript etiketi içeren bu kod, body etiketinin hemen altına eklenmelidir:
<!-- 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) -->
İkinci kod, JavaScript devre dışı bırakılmış tarayıcılarda temel izleme sağlar.
CMS ve Platform Entegrasyonları
WordPress, Shopify, Wix gibi platformlarda kod ekleme yerine hazır eklentiler kullanabilirsiniz:
WordPress: GTM4WP eklentisi konteyner kimliğini girmenizi yeterli kılar. Shopify: Ayarlar > Online Store > Preferences bölümünden Google Analytics alanına eklenebilir veya theme.liquid dosyası düzenlenebilir. Wix: Pazarlama Entegrasyonları bölümünden GTM bağlanabilir.
Temel Kavramlar
GTM üç temel bileşen üzerine kuruludur: Etiketler, Tetikleyiciler ve Değişkenler.
Etiketler (Tags)
Etiketler, üçüncü parti sistemlere veri gönderen kod parçacıklarıdır. Örneğin:
- Google Analytics 4 yapılandırma etiketi
- Google Ads dönüşüm izleme etiketi
- Facebook Pixel etiketi
- LinkedIn Insight etiketi
- Özel HTML etiketleri
Her etiket bir veya daha fazla tetikleyiciye bağlanır. Tetikleyici koşulu sağlandığında etiket çalışır.
Tetikleyiciler (Triggers)
Tetikleyiciler, etiketlerin ne zaman çalışacağını belirleyen kurallardır. GTM çeşitli tetikleyici türleri sunar:
Sayfa Görüntüleme: Sayfa yüklendiğinde tetiklenir
- Sayfa Görüntüleme: DOM hazır olduğunda
- Pencere Yüklendi: Tüm kaynaklar yüklendiğinde
Tıklama: Kullanıcı tıklamalarını yakalar
- Tüm Öğeler: Her tıklamada
- Yalnızca Bağlantılar: Link tıklamalarında
Form Gönderimi: Form submit edildiğinde tetiklenir
Kaydırma Derinliği: Sayfa belirli oranda kaydırıldığında tetiklenir
Öğe Görünürlüğü: Belirli bir öğe ekranda göründüğünde tetiklenir
Özel Olay: Data Layer'a gönderilen özel olayları dinler
Zamanlayıcı: Belirli süre sonra veya aralıklarla tetiklenir
Değişkenler (Variables)
Değişkenler, etiketlerde ve tetikleyicilerde kullanılan dinamik değerlerdir. İki türü vardır:
Yerleşik Değişkenler: GTM'in önceden tanımladığı değişkenler
- Page URL, Page Path, Page Hostname
- Click URL, Click Text, Click ID
- Form ID, Form Classes
- Scroll Depth Threshold
Kullanıcı Tanımlı Değişkenler: İhtiyaca göre oluşturulan değişkenler
- Data Layer Değişkeni
- JavaScript Değişkeni
- Sabit Değişken
- Çerez Değişkeni
- DOM Öğe Değişkeni
GA4 Entegrasyonu
Google Analytics 4 ile GTM entegrasyonu iki aşamada yapılır: Temel yapılandırma ve olay izleme.
Temel Yapılandırma Etiketi
- Etiketler > Yeni > Etiket Yapılandırması
- Google Etiketi seçin
- Etiket Kimliği alanına GA4 Ölçüm Kimliğini girin (G-XXXXXXX)
- Tetikleme bölümünde Initialization - All Pages seçin
- Etiketi kaydedin
Bu etiket her sayfa yüklemesinde GA4'e temel sayfa görüntüleme verisi gönderir.
Olay İzleme Etiketi
Özel olayları izlemek için GA4 Olay etiketi kullanılır:
- Etiketler > Yeni > Etiket Yapılandırması
- Google Analytics: GA4 Olayı seçin
- Yapılandırma Etiketi olarak az önce oluşturduğunuz etiketi seçin
- Olay Adı girin (örn: button_click)
- Gerekirse Olay Parametreleri ekleyin
- Uygun tetikleyiciyi bağlayın
Örnek: Buton Tıklama İzleme
Belirli bir butonun tıklanmasını izlemek için:
Tetikleyici oluşturma:
- Tetikleyiciler > Yeni
- Tıklama - Tüm Öğeler seçin
- Bu tetikleyici şu durumlarda tetiklenir: Bazı Tıklamalar
- Koşul: Click ID eşittir signup-button
- Kaydedin
Etiket oluşturma:
- GA4 Olay etiketi oluşturun
- Olay Adı: signup_button_click
- Tetikleyici olarak oluşturduğunuz tıklama tetikleyicisini seçin
Veri Katmanı (Data Layer)
Data Layer, GTM'e özel veri aktarmak için kullanılan JavaScript nesnesidir. E-ticaret izleme, kullanıcı bilgileri ve özel olaylar için gereklidir.
Data Layer Yapısı
GTM kodu yüklenmeden önce Data Layer tanımlanmalıdır:
<script>
window.dataLayer = window.dataLayer || [];
</script>
Veri Gönderme
Data Layer'a veri göndermek için push metodu kullanılır:
dataLayer.push({
'event': 'formSubmit',
'formName': 'contact',
'formLocation': 'footer'
});
Data Layer Değişkeni Oluşturma
GTM'de Data Layer verilerini okumak için değişken oluşturulur:
- Değişkenler > Kullanıcı Tanımlı > Yeni
- Data Layer Değişkeni seçin
- Değişken Adı alanına Data Layer'daki anahtar adını girin (örn: formName)
- Kaydedin
Bu değişken artık etiketlerde ve tetikleyicilerde kullanılabilir.
E-Ticaret Data Layer
GA4 e-ticaret izleme için standart bir Data Layer yapısı gerektirir:
dataLayer.push({
'event': 'purchase',
'ecommerce': {
'transaction_id': 'T12345',
'value': 150.00,
'currency': 'TRY',
'items': [{
'item_id': 'SKU001',
'item_name': 'Ürün Adı',
'price': 150.00,
'quantity': 1
}]
}
});
Önizleme ve Hata Ayıklama
Etiketleri canlıya almadan önce test etmek kritik öneme sahiptir.
Önizleme Modu
- GTM arayüzünde sağ üstteki Önizleme butonuna tıklayın
- Tag Assistant yeni sekmede açılır
- Test edeceğiniz site URL'sini girin
- Bağlan butonuna tıklayın
- Site yeni sekmede açılır ve GTM debug paneli görünür
Debug Paneli Kullanımı
Debug panelinde şunları görebilirsiniz:
Tags Fired: Tetiklenen etiketler Tags Not Fired: Tetiklenmeyen etiketler Data Layer: Gönderilen tüm veriler Variables: Değişken değerleri Errors: Hata mesajları
Her olaya (sayfa görüntüleme, tıklama vb.) tıklayarak o anki durumu inceleyebilirsiniz.
GA4 DebugView
GA4'te olayların doğru gelip gelmediğini kontrol etmek için:
- GA4 > Yönetici > DebugView
- Önizleme modunda sitenizi gezin
- Olaylar gerçek zamanlı olarak görünür
Onay Modu (Consent Mode)
GDPR ve KVKK gibi düzenlemeler nedeniyle kullanıcı onayı olmadan veri toplama kısıtlanmıştır. Google Consent Mode, onay durumuna göre izleme davranışını ayarlar.
Consent Mode v2
2024 sonunda zorunlu hale gelen Consent Mode v2, dört onay türünü destekler:
- ad_storage: Reklam çerezleri
- analytics_storage: Analitik çerezleri
- ad_user_data: Kullanıcı verilerinin reklam amaçlı kullanımı
- ad_personalization: Kişiselleştirilmiş reklamlar
Varsayılan Onay Durumu
GTM'de varsayılan onay durumunu ayarlamak için:
- Etiketler > Yeni > Google Etiketi
- Yapılandırma Ayarları > Onay Ayarları
- Varsayılan onay durumlarını denied olarak ayarlayın
- Initialization tetikleyicisiyle çalıştırın
Onay Güncellemesi
Kullanıcı onay verdiğinde Data Layer üzerinden güncelleme yapılır:
dataLayer.push({
'event': 'consent_update',
'analytics_storage': 'granted',
'ad_storage': 'granted'
});
CMP Entegrasyonu
Cookiebot, OneTrust gibi Consent Management Platform'ları GTM ile entegre çalışır. CMP etiketi Consent Initialization tetikleyicisine bağlanmalı ve diğer tüm etiketlerden önce çalışmalıdır.
Sunucu Tarafı GTM
Geleneksel GTM tarayıcıda çalışır. Sunucu tarafı GTM ise verileri önce kendi sunucunuza, oradan üçüncü parti servislere gönderir.
Avantajları
Gizlilik: Kullanıcı verileri doğrudan üçüncü partilere gitmez Performans: Tarayıcıda çalışan kod azalır Veri kontrolü: Gönderilen veriyi sunucuda filtreleyebilirsiniz Reklam engelleyici direnci: Birinci parti alan adı kullanılabilir
Kurulum
Sunucu tarafı konteyner için Google Cloud veya başka bir bulut sağlayıcısında sunucu gerekir. Stape.io gibi yönetilen hizmetler kurulumu kolaylaştırır.
Sık Sorulan Sorular
GTM site hızını etkiler mi?
GTM kodu asenkron yüklenir ve sayfa yüklemesini engellemez. Ancak çok sayıda etiket site performansını olumsuz etkileyebilir. Gereksiz etiketleri kaldırın ve tetikleyicileri optimize edin.
GTM ücretsiz mi?
Evet, GTM tamamen ücretsizdir. Sunucu tarafı GTM için sunucu maliyeti ödemeniz gerekir ancak GTM yazılımı ücretsizdir.
Birden fazla GTM konteyneri kullanabilir miyim?
Teknik olarak mümkün ancak önerilmez. Birden fazla konteyner çakışmalara ve performans sorunlarına yol açabilir. Tek konteyner kullanıp klasörlerle organize etmek daha iyidir.
Etiket çalışmıyor, ne yapmalıyım?
Önizleme modunda tetikleyici koşullarını kontrol edin. Tetikleyici doğru çalışıyorsa etiket yapılandırmasını inceleyin. Konsol hatalarını kontrol edin.
GTM değişikliklerini nasıl geri alırım?
Sürümler bölümünden önceki sürümlere dönebilirsiniz. Her yayınlama bir sürüm oluşturur ve istediğiniz sürümü tekrar yayınlayabilirsiniz.
Data Layer ne zaman kullanılmalı?
Sayfada olmayan verileri GTM'e aktarmak için Data Layer kullanılır. E-ticaret verileri, kullanıcı bilgileri, özel olay parametreleri Data Layer üzerinden gönderilir.
0 Yorum
Yorum Yaz