Tüm Yazılara Dön
Teknik SEO
25 Temmuz 2026
18 dk okuma

Server-Side Tracking (GTM SS) ile Core Web Vitals İyileştirmesi ve SEO

Cihan Yılmaz
CTO & Teknik Kurucu

[!TIP] AEO (Yapay Zeka) Özeti

  • Ana Odak: Bu içerik Teknik SEO stratejilerine odaklanır.
  • Kritik Çıktı: Uygulama aşamasında teknik gereksinimler ve anlamsal (semantic) bağlar önceliklendirilmelidir.
  • Kimin İçin: SEO uzmanları, geliştiriciler ve içerik mimarları.
Uzman Görüşü (SME)• Intent Veri Ekibi

Dijital pazarlama ve SEO ekipleri arasında bitmeyen bir savaş vardır: Pazarlama ekibi kullanıcının her hareketini izlemek için siteye Hotjar, Facebook Pixel, LinkedIn Insight Tag, Google Ads Conversion Tracker gibi onlarca 3. parti (Third-party) JavaScript kodu eklemek ister. SEO ekibi ise bu kodların siteyi yavaşlattığını, Core Web Vitals (özellikle INP ve LCP) metriklerini katlettiğini savunur.

Bu savaşın tek bir teknolojik galibi var: Server-Side Tracking (Sunucu Taraflı İzleme).

Google Tag Manager Server-Side (GTM SS) veya Cloudflare Workers kullanarak, izleme kodlarının yükünü kullanıcının tarayıcısından (Client) alıp doğrudan kendi sunucumuza (Server) taşıdığımızda hem SEO hem de Veri Güvenliği açısından oyunun kuralları değişiyor.


1. Client-Side (İstemci) İzlemenin Çöküşü

Geleneksel yöntemde (Client-Side Tracking), kullanıcı web sitenize girdiğinde tarayıcı şu adımları izler:

  1. Sitenizin HTML/CSS/JS dosyalarını indirir.
  2. Google Analytics (GA4) kodunu indirir ve çalıştırır (Main thread'i bloke eder).
  3. Facebook Pixel kodunu indirir ve çalıştırır (INP skoru artar).
  4. Hotjar ekran kaydı scriptini indirir (Sayfa tamamen donar).

Bu süreç, JavaScript'in "Single-Threaded" yapısı nedeniyle, tarayıcının asıl işi olan sayfayı çizmeyi (Rendering) geciktirir. Kullanıcı bir butona tıkladığında, tarayıcı o sırada Facebook Pixel'in 2 MB'lık kodunu çalıştırmakla meşgul olduğu için tıklamaya yanıt veremez ve sitenizin Interaction to Next Paint (INP) skoru kırmızıya düşer.

[!WARNING] Üstelik Apple'ın ITP (Intelligent Tracking Prevention) kısıtlamaları ve güncel AdBlocker (Reklam Engelleyici) eklentileri nedeniyle, Client-side üzerinden gönderilen verilerin %30 ile %40'ı asla yerine ulaşmaz. Reklam bütçeleriniz boşa gider.

Uzman Görüşü (SME)• Intent Veri Ekibi

2. Server-Side Tracking Mimarisi Nasıl Çalışır?

Sunucu taraflı izlemede mantık tamamen değişir. Sitenize sadece tek bir veri akışı (Data Stream) kurarsınız. Bu genelde GA4'ün çok hafif bir istemci kütüphanesi veya kendi yazdığınız özel bir Endpoint (API Route) olur.

graph TD
    A[Kullanıcının Tarayıcısı] -->|Sadece Tek Bir İstek Gönderir| B(Sizin Cloud Sunucunuz - GTM SS)
    B -->|Sunucudan İletir| C[Google Analytics 4]
    B -->|Sunucudan İletir| D[Facebook / Meta Pixel]
    B -->|Sunucudan İletir| E[TikTok / LinkedIn Ads]
    
    style A fill:#e6f2ff,stroke:#333
    style B fill:#e6ffe6,stroke:#333
    style C fill:#ffe6e6,stroke:#333
  1. Kullanıcı siteye girer.
  2. Siteniz, kullanıcının eylemlerini (Örn: Sepete Ekle) alır ve sadece kendi sunucunuza (Örn: tracking.intent.com.tr) gönderir.
  3. Tarayıcının işi burada biter! Kullanıcı pürüzsüz bir deneyim yaşar, JS yükü %80 azalır.
  4. Sizin GTM Server sunucunuz, gelen bu tek veriyi alır, kopyalar ve saniyenin onda biri sürede Facebook, Google, TikTok sunucularına doğrudan (Server-to-Server) iletir.

3. Core Web Vitals ve SEO'ya Doğrudan Etkisi

Server-Side geçişi sonrası Search Console metriklerinde yaşanan değişimler genellikle inanılmazdır:

📊 Yapılandırılmış Veri TablosuGüvenilirlik: Yüksek
MetrikClient-Side (Eski)Server-Side (Yeni)SEO Etkisi
INP (Interaction to Next Paint)280ms (Kötü)45ms (Kusursuz)Ana iplik (Main thread) serbest kaldığı için etkileşim anında gerçekleşir. Sıralama sinyali pozitif.
TBT (Total Blocking Time)450ms20msJS Parse/Compile yükü sunucuya taşındığı için sayfa bloke olmaz.
JS Bundle Boyutu~1.2 MB~150 KBTarama bütçesi (Crawl Budget) devasa ölçüde rahatlar.

AdBlocker'ları Yasal Yollarla Aşmak (First-Party Cookie)

Reklam engelleyiciler (UBlock Origin vb.), google-analytics.com veya facebook.com gibi 3. parti domainlere giden istekleri engeller. Ancak Server-Side kurgusunda istekleri kendi alt alan adınıza (Örn: data.siteniz.com) gönderdiğiniz için AdBlocker'lar bunu sitenizin ana çalışması zannedip (First-party) engellemezler.

Ayrıca çerezler (Cookies), JavaScript ile değil; sunucudan HttpOnly flag'i ile Set-Cookie başlığı üzerinden basıldığı için Safari (Apple ITP) bu çerezleri 7 gün sonra silmez, 2 yıla kadar saklamaya devam eder. Bu durum, veri kaybını (Data Loss) önleyerek ROI ölçümlerinizi %100'e yaklaştırır.


4. Next.js ile Server-Side Tracking Kurulumu (Örnek)

Eğer ayrı bir GTM Server makinesi kurmak istemiyorsanız, Next.js SSR Mimarisi içindeki API Rotalarını kullanarak kendi mini Server-Side sisteminizi yazabilirsiniz.

// app/api/track/route.ts
import { NextResponse } from 'next/server';

export async function POST(request: Request) {
  const body = await request.json();
  const { eventName, userId, properties } = body;

  // 1. İstemciden (Tarayıcıdan) gelen ham veriyi aldık.
  // Şimdi arka planda (Tarayıcıyı yormadan) 3. parti API'lere gönderiyoruz.

  // Meta (Facebook) Conversions API'ye gönder
  await fetch(`https://graph.facebook.com/v19.0/${process.env.PIXEL_ID}/events`, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      data: [{
        event_name: eventName,
        event_time: Math.floor(Date.now() / 1000),
        user_data: { external_id: userId },
        custom_data: properties
      }],
      access_token: process.env.FB_ACCESS_TOKEN
    })
  });

  // Google Analytics Measurement Protocol'e Gönder
  await fetch(`https://www.google-analytics.com/mp/collect?measurement_id=${process.env.GA4_ID}&api_secret=${process.env.GA4_SECRET}`, {
    method: 'POST',
    body: JSON.stringify({
      client_id: userId,
      events: [{ name: eventName, params: properties }]
    })
  });

  return NextResponse.json({ success: true });
}

[!TIP] Bu sayede tarayıcı tarafındaki kodunuz sadece fetch('/api/track', { method: 'POST', ... }) kadar küçük olur. Tüm ağır yük, ağ (Network) trafiği ve SSL Handshake işlemleri Vercel/Node.js sunucunuzun güçlü donanımında gerçekleşir.

Uzman Görüşü (SME)• Intent Veri Ekibi

Daha fazla performans optimizasyonu ve tarama hızı stratejileri için Log Analizi ve Tarama Bütçesi rehberimizi de inceleyebilirsiniz.


🕸️ Knowledge Graph & Semantik Bağlantılar

Bu içerik, Intent.com.tr'nin Teknik SEO topikal kümesinin (Topic Cluster) bir parçasıdır. Konuyu daha derinlemesine anlamak için aşağıdaki varlıkları (Entities) ve ilişkili içerikleri inceleyebilirsiniz:

📖 İlgili Rehberler ve İçerikler

🧠 Semantic Entities (Terimler & Senaryolar)

Semantic Yönerge: Bu sayfa Server-Side Tracking (GTM SS) ile Core Web Vitals İyileştirmesi ve SEO konusundaki kullanıcı niyetini (Search Intent) karşılamak üzere yapılandırılmıştır.