Server-Side GTM
1. Server-Side GTM Nedir ve Neden?
Geleneksel (web) GTM, kullanıcının tarayıcısında çalışır. Server-side GTM ise sizin kontrol ettiğiniz bir sunucuda çalışarak verileri toplayıp üçüncü taraf araçlara iletir.
a) Web vs Server-Side Karşılaştırma
| Özellik | Web GTM | Server-Side GTM |
|---|---|---|
| Çalışma ortamı | Kullanıcının tarayıcısı | Sizin sunucunuz (Cloud) |
| Ad blocker etkisi | Engellenebilir | Engellenemez |
| Sayfa hızı | Olumsuz etkileyebilir | Sayfa yükü azalır |
| Veri kontrolü | Tarayıcıda açık | Sunucuda kontrol edilir |
| Çerez süresi | ITP ile 7 gün | First-party: 2 yıla kadar |
| Maliyet | Ücretsiz | Cloud hosting maliyeti |
graph LR
USER["👤 Kullanıcı"] --> WEB_GTM["🌐 Web GTM\n(Tarayıcı)"]
WEB_GTM -->|"GA4 stream"| SS_GTM["🖥 Server-Side GTM\n(Cloud Sunucu)"]
SS_GTM -->|"GA4"| GA4["📊 GA4"]
SS_GTM -->|"CAPI"| META["📱 Meta"]
SS_GTM -->|"Ads API"| ADS["📢 Google Ads"]
SS_GTM -->|"Diğer"| OTHER["🔧 Üçüncü Taraflar"]
style WEB_GTM fill:#E8F6FC,stroke:#29ABE2
style SS_GTM fill:#DCFCE7,stroke:#22C55E
🎯 Benzetme: Web GTM, her müşterinin (kullanıcının) telefonundan bilgi gönderen bir uygulama gibidir — telefon ayarları, güvenlik duvarları engel olabilir. Server-side GTM ise mağazanın kendi güvenlik kamerasıdır — müşterinin telefonundan bağımsız çalışır ve her işlemi kaydeder.
2. Server Container Kurulumu
Server-side GTM, bir cloud sunucuda çalışan ayrı bir container gerektirir.
a) Google Cloud Platform (GCP) Kurulumu
- tagmanager.google.com'da "Server" tipinde yeni container oluşturun.
- Container ayarlarından "Automatically provision tagging server" seçin (GCP App Engine kullanır).
- Veya manuel olarak GCP Cloud Run üzerinde deploy edin (daha uygun maliyetli).
- Custom domain bağlayın (ör.
gtm.yourdomain.com) — first-party çerez için zorunlu.
b) Custom Domain Önemi
Server container'ı kendi subdomain'inizde çalıştırmak (gtm.yourdomain.com) sayesinde:
- Gönderilen veriler first-party olarak sınıflandırılır.
- Çerez ömrü ITP tarafından kısıtlanmaz (2 yıla kadar).
- Ad blocker'lar tarafından engellenme riski düşer.
💡 İpucu: GCP maliyetini kontrol altında tutmak için Cloud Run kullanın. App Engine'e göre daha uygun fiyatlıdır ve düşük trafikli sitelerde aylık 20-50 USD civarında kalır.
3. Server-Side GTM'nin Avantajları
a) Veri Kontrolü
- Sunucudan geçen tüm verileri filtreleyebilir, zenginleştirebilir veya maskeleyebilirsiniz.
- PII (kişisel tanımlayıcı bilgi) filtreleme yapabilirsiniz.
- Üçüncü taraflara gönderilen veriyi sınırlayabilirsiniz.
b) Sayfa Hızı İyileştirmesi
- Üçüncü taraf script'leri tarayıcıdan kaldırılır, sunucuda çalışır.
- Daha az JavaScript = daha hızlı sayfa yüklenme.
- Core Web Vitals skorları iyileşir.
c) First-Party Data Stratejisi
- Sunucu tarafından ayarlanan çerezler first-party olarak kabul edilir.
- ITP/ETP kısıtlamalarından etkilenmez.
- Daha uzun kullanıcı tanıma süresi.
4. GA4 Server-Side Implementasyonu
a) Akış
- Web GTM'de GA4 Configuration tag'inin transport URL'sini server container domain'inize yönlendirin.
- Server container'da GA4 Client oluşturun (verileri alır).
- GA4 tag oluşturun (verileri Google'a iletir).
sequenceDiagram
participant B as Tarayıcı (Web GTM)
participant S as Server Container
participant G as GA4
B->>S: GA4 event (transport_url ile)
S->>S: Client: Veriyi parse et
S->>S: Tag: Veriyi işle/zenginleştir
S->>G: GA4'e ilet
Note over S: Ek tag'ler de çalışabilir
(Meta CAPI, Ads, vb.)
(Meta CAPI, Ads, vb.)
5. Meta CAPI Server-Side Implementasyonu
a) GTM Server-Side ile CAPI
- Server container'da Meta Conversions API tag şablonunu Community Template Gallery'den ekleyin.
- Pixel ID ve Access Token bilgilerini girin.
- GA4 Client'tan gelen verileri Meta CAPI formatına dönüştürün.
- Event mapping yapın (GA4 purchase → Meta Purchase).
⚠️ Uyarı: Server-side CAPI kurulumunda
fbp ve fbc çerez değerlerini sunucuya iletmeyi unutmayın. Bu değerler olmadan EMQ skoru düşer. Web GTM'de bu çerezleri okuyan değişkenler oluşturup GA4 event parametresi olarak gönderin.
