Formunuz çalışıyor, başvurular e-postanıza düşüyor, ama GA4 (Google Analytics 4) raporunda form gönderimi yok ya da sayı tutmuyor. Bu çok yaygın bir durumdur ve çoğu zaman formun nasıl çalıştığıyla ilgilidir. Bu rehberde nedeni bulmayı, sizin formunuza uyan yöntemi seçmeyi ve kurulumu test etmeyi adım adım anlatıyoruz.

GA4’ün kendi form ölçümü neden yetmez?

GA4’ün gelişmiş ölçüm özelliğinde “Form etkileşimleri” adlı bir seçenek vardır. Açıksa iki olay toplar: form_start (kişi forma ilk kez dokundu) ve form_submit (form gönderildi). Bu ayar veri akışı ayarlarındadır ve hesabınızda açık ya da kapalı olabilir.

Kâğıt üzerinde kolay görünür, ama pratikte çoğu sitede güvenilir değildir:

  • Denemeyi sayar, başarıyı değil. Gönder düğmesine basıldığında tetiklenebilir. Zorunlu alan boş olduğu için form gitmese bile olay oluşabilir.
  • AJAX formları kaçırır. Sayfa yenilenmeden gönderilen formlar (modern temaların ve form eklentilerinin çoğu) tarayıcının standart gönderim olayını üretmeyebilir. GA4 de bu durumda hiçbir şey görmez.
  • Başka alan adındaki formları göremez. Typeform, HubSpot ya da Google Forms gibi bir hizmetten iframe ile (sayfaya gömülü ayrı bir pencere olarak) yüklenen formlar sizin sitenizin parçası değildir.
  • Her formu karıştırır. Arama kutusu, bülten aboneliği ve iletişim formu aynı form_submit olayına düşer.

Bu yüzden form gönderimini ölçmek için kendi olayınızı kurmanızı öneririz. Google’ın potansiyel müşteri için önerdiği olay adı generate_lead’dir. Bu yazının geri kalanında bu adı kullanıyoruz.

Formunuz için hangi yöntem uygun?

Dört yöntem vardır. Hangisinin size uyduğu, formun gönderimden sonra ne yaptığına bağlıdır.

YöntemNe zaman uygun?GüvenilirlikDikkat
Teşekkür sayfasıForm gönderilince ayrı bir sayfaya (ör. /tesekkurler) yönlendiriyorsaOrtaSayfa doğrudan açılırsa ya da yenilenirse fazladan sayar
GTM form gönderim tetikleyicisiKlasik, sayfayı yenileyerek gönderilen HTML formlarındaOrtaAJAX formlarda çoğu zaman çalışmaz; doğrulama hatasında da tetiklenebilir
Başarı mesajı görünürlüğüAJAX formu “Teşekkürler” mesajı gösteriyorsaOrta-iyiMesajın metni ya da yeri değişirse bozulur
dataLayer pushGeliştiriciye ya da form koduna erişiminiz varsaEn iyiKodu yazan kişiyle birlikte kurulmalı

Teşekkür sayfası en kolay yöntemdir. GTM’de (Google Etiket Yöneticisi) sayfa yolu /tesekkurler olan bir sayfa görüntüleme tetikleyicisi kurarsınız. Sayfanın arama motorlarında görünmemesi ve menüden bağlantı verilmemesi gerekir.

GTM form gönderim tetikleyicisi (Form Submission), standart formlarda iş görür. Tetikleyici ayarlarındaki “Doğrulamayı kontrol et” (Check Validation) seçeneği, tarayıcının engellediği gönderimleri saymamaya yardım eder.

Başarı mesajı görünürlüğü için GTM’de “Öğe görünürlüğü” (Element Visibility) tetikleyicisi kullanılır. Teşekkür mesajının CSS seçicisini verir ve “DOM değişikliklerini gözlemle” seçeneğini açarsınız. WordPress’teki bazı form eklentileri de başarılı gönderimde kendi olayını üretir. Örneğin Contact Form 7, wpcf7mailsent adlı bir olay yayar.

dataLayer push en sağlam yöntemdir. dataLayer, sitenizin GTM’e mesaj bıraktığı ortak bir listedir. Form sunucudan “başarılı” yanıtı aldığı anda bu listeye bir olay eklenir. Böylece yalnız gerçekten gönderilen formlar sayılır.

dataLayer ile form takibi nasıl kurulur?

Kurulum dört adımdır: kod, değişken, tetikleyici, etiket.

Bir başvurunun yolu: formdan Google Ads'e.
  1. SiteForm başarıyla gönderilir
  2. dataLayergenerate_lead
  3. GTMÖzel etkinlik tetikleyicisi, GA4 etiketi
  4. GA4Anahtar etkinlik
  5. Google AdsDönüşüm (isteğe bağlı aktarım)

1. Geliştiriciye kodu ekletin

Formun başarılı gönderildiği yere (sunucu yanıtı geldikten sonra) şu satırlar eklenir:

window.dataLayer = window.dataLayer || [];
window.dataLayer.push({ event: 'generate_lead', form_id: 'iletisim' });

form_id, hangi formdan geldiğini ayırmak içindir: iletisim, teklif, ucretsiz_kontrol gibi. Buraya ad, e-posta ya da telefon yazmayın. Google Analytics kişisel bilgilerin gönderilmesine izin vermez.

2. GTM’de değişken oluşturun

GTM’de Değişkenler bölümünde yeni bir kullanıcı tanımlı değişken açın. Türü “Veri katmanı değişkeni” (Data Layer Variable), değişken adı form_id olsun.

3. Tetikleyiciyi kurun

Tetikleyiciler bölümünde yeni bir tetikleyici açın. Türü “Özel etkinlik” (Custom Event), etkinlik adı generate_lead olsun. Ad büyük-küçük harfe duyarlıdır; koddaki adla birebir aynı yazın.

4. GA4 olay etiketini ekleyin

Etiketler bölümünde “Google Analytics: GA4 Etkinliği” (GA4 Event) türünde bir etiket oluşturun:

  1. Ölçüm kimliği alanına GA4 kimliğinizi (G- ile başlar) yazın.
  2. Etkinlik adı: generate_lead.
  3. Etkinlik parametrelerine form_id ekleyin ve değerini 2. adımdaki değişkenden seçin.
  4. Tetikleyici olarak 3. adımdaki özel etkinliği bağlayın.

Teşekkür sayfası ya da öğe görünürlüğü yöntemini seçtiyseniz yalnız tetikleyici değişir. Etiket aynı kalır.

Kurulumu nasıl test edersiniz?

Yayına almadan önce iki araçla test edin:

  1. GTM Önizleme. GTM’de “Önizle” (Preview) düğmesine basın ve sitenizi açın. Formu gerçekten doldurup gönderin. Soldaki olay listesinde generate_lead görünmeli ve GA4 etiketiniz “Tetiklendi” (Fired) bölümünde olmalı.
  2. GA4 DebugView. GA4’te Yönetici bölümündeki DebugView ekranını açın (menü yeri hesap diline göre değişebilir). Önizleme modundaki ziyaretiniz burada görünür. generate_lead olayına tıklayıp form_id parametresini kontrol edin.

Bir de hatalı gönderimi test edin. Zorunlu bir alanı boş bırakıp gönderin. Bu durumda generate_lead oluşmamalı.

Sitenizde çerez bandı varsa testten önce analitik çerezlere izin verin. Reddederseniz olaylar DebugView’da görünmeyebilir.

Olayı anahtar etkinlik yapmak

GA4’te dönüşümlerin yeni adı anahtar etkinliktir (key event). Olayı raporlarda dönüşüm olarak görmek için:

  1. GA4’te Yönetici bölümünde Etkinlikler listesini açın.
  2. generate_lead satırındaki “Anahtar etkinlik olarak işaretle” seçeneğini açın.
  3. Olay listeye henüz düşmediyse Anahtar etkinlikler ekranında yeni bir anahtar etkinlik oluşturup adını generate_lead olarak yazabilirsiniz.

form_id değerini raporlarda görmek istiyorsanız, onu özel tanımlar bölümünde etkinlik kapsamlı bir özel boyut olarak kaydedin. Kaydetmeden önce gelen veriler bu boyutta görünmez.

Google Ads’e nasıl aktarılır?

GA4 ve Google Ads hesaplarınız bağlıysa, generate_lead anahtar etkinliğini Google Ads’e dönüşüm olarak aktarabilirsiniz. Google Ads’te Hedefler → Dönüşümler bölümünde yeni dönüşüm işlemi oluşturur, kaynak olarak Google Analytics 4’ü seçersiniz. Menü adları hesap diline göre değişebilir.

Dikkat edilecek iki nokta var:

  • Aynı başvuru için hem GA4’ten aktarılan hem de Google Ads etiketiyle ölçülen bir dönüşüm varsa, ikisini birden birincil yapmayın. Yoksa her başvuru iki kez sayılır ve teklif stratejisi yanlış öğrenir.
  • Aktarılan dönüşümler Google Ads’e gecikmeyle düşer. Bugünün rakamı yarın değişebilir.

En sık yapılan hatalar

  • İki olayı birden anahtar etkinlik yapmak. form_submit da generate_lead da işaretliyse her başvuru iki kez sayılır. Yalnız generate_lead kalsın.
  • Olay adını farklı yazmak. Generate_Lead, generate-lead ve generate_lead GA4 için üç ayrı olaydır.
  • Denemeyi başarı saymak. Tetikleyici gönder düğmesinin tıklanmasına bağlıysa, hatalı gönderimler de sayılır.
  • Teşekkür sayfasını açık bırakmak. Menüden, site haritasından ya da e-postadan bağlantı verilen teşekkür sayfası her ziyarette başvuru üretir.
  • Kişisel bilgi göndermek. E-posta adresini olay parametresine koymak hem Google politikasına hem KVKK’ya aykırıdır.
  • Yayınlamayı unutmak. GTM’de yaptığınız değişiklik “Gönder” (Submit) ile yayınlanmadıkça sitede çalışmaz.

Kurulum bittikten sonra her ay bir test başvurusu gönderip olayın hâlâ geldiğini kontrol edin. Tema ya da form eklentisi güncellemesi takibi sessizce bozabilir. Hızlı bir genel kontrol için 5 dakikalık ölçüm kontrolüne bakın. Başvurularınızın hangi kampanyadan geldiğini görmek için reklam bağlantılarınıza UTM parametresi ekleyin.