GA4 EVENT PARAMETRE TASARIMI YAPMAK

GA4 event modeli güçlü ama o gücü serbest bırakmak için doğru parametre tasarımı gerek. Aynı kavramı bazen "form_id" bazen "formId" bazen "form-id" diye yazan ekipler raporda "ne anlamı var bu sayıların" diye dolaşır. İsimlendirme tutarsızlığı altın değerinde veriyi kullanılamaz hale getirir.
1. Event ve parametre nedir?
GA4'te her etkileşim bir event'tir. Her event 0+ parametre taşır. Örnek:
- Event:
page_view - Parametreler:
page_location,page_title,page_referrer
Parametreler event'e bağlam katar. "Sayfa görüntülendi" yetmez; "hangi sayfa" sorusunun cevabı parametrede. Otomatik toplanan parametrelerin tam listesi ve karakter sınırları için analitik yardım kaynakları referans alınabilir.
2. İsimlendirme kuralları (Google standardı)
GA4 event ve parametre isimlerinde belirli kurallar var:
- Sadece harf, rakam ve alt çizgi:
video_play✓,video-play✗ - Harf ile başlamalı:
3d_model✗,model_3d✓ - 40 karakter sınırı (event): Çok uzun isimler kabul edilmez
- 100 karakter sınırı (parametre): Parametre adları için
- Case-sensitive değil:
Purchaseilepurchasefarklı (GA4 büyük/küçük harf farkı yapar; karışıklık önlemek için snake_case standart)
3. İsimlendirme tutarlılığı
Pratikte tüm ekip tek bir standart kullanmalı:
snake_case (önerilen)
page_view
add_to_cart
form_submitted
button_clickedGoogle standart event'leri snake_case. Aynı kuralı custom event'ler için de uygulayın; tutarlılık kritik.
İsim yapısı: action_object
Net pattern: ne yapıldı + neye yapıldı.
- add_to_cart: Sepete eklendi (add + cart)
- view_item: Ürün görüntülendi (view + item)
- begin_checkout: Ödeme başlatıldı (begin + checkout)
- complete_signup: Kayıt tamamlandı (complete + signup)
"item_added" yerine "add_to_cart" gibi tutarlı pattern; pasif değil aktif fiil.
4. Otomatik vs custom parametreler
GA4 her event'e otomatik bazı parametreler ekler:
- page_location
- page_title
- page_referrer
- language
- screen_resolution
- session_id
- session_engaged
Custom parametreler bunların üstüne eklenir. Örnek custom parametreler:
- form_id
- product_category
- video_progress
- filter_value
- error_type
5. Custom dimension ve custom metric
GA4 panelinde raporlamak için parametre tek başına yetmez; custom dimension olarak kayıt edilmesi gerek.
Custom dimension
Kategorik veri için. "Hangi form?", "Hangi kategori?", "Hangi seviye?" gibi. Admin > Custom definitions > Create custom dimension. Parametre adıyla eşleştirilir; bir kez tanımlanınca raporda boyut olarak görünür.
Custom metric
Sayısal veri için. "Skor", "okuma süresi", "video süresi" gibi.
Admin > Custom definitions > Create custom metric.
Sınırlar
- 50 event-scoped custom dimension
- 25 user-scoped custom dimension
- 50 custom metric
Ücretsiz GA4'te bu sınırlar geçerli. GA4 360'ta yükseltilir.

6. Event scope vs user scope
Event-scoped parametreler
Her event için ayrı değer. Örnek: "form_id" her form gönderimi event'inde farklı değer alabilir.
User-scoped parametreler
Kullanıcıya bağlı; tüm sessions'larda aynı kalır. Örnek: "user_role" (admin, member, guest), "subscription_tier" (free, premium).
user_properties ile set edilir:
gtag('set', 'user_properties', {
'subscription_tier': 'premium',
'signup_source': 'organic_search'
});7. Parametre tasarım kuralları
1. Verbose değil compact
Parametre adı kısa ve net olsun.
- ✓
category - ✗
which_category_is_this
2. Standartlaştırılmış değerler
Bir parametre 'mobile', 'Mobile', 'MOBILE', 'mob' gibi farklı değerler almamalı. Tüm ekip aynı standart değerleri kullanmalı:
- device_type: mobile, tablet, desktop (sadece bu üç değer)
- traffic_source: organic, paid, social, email (sabit liste)
3. ID'leri tutarlı
product_id veya item_id; SKU veya database ID. Tek tip seçin ve her event'te aynı şekilde gönderin.
4. PII (kişisel veri) göndermeyin
E-posta, isim, telefon, IP gibi kişisel veri GA4 parametresine konulmaz. KVKK ihlali; ayrıca GA4 PII içeren property'leri kalıcı silebilir. Hashleme veya kullanıcı ID kullanın.
8. Event tasarım dokümanı
Ekibinizin GA4 event listesini bir dokümanda tutması kritik. Yapı:
| Event adı | Tetikleme zamanı | Parametreler | Custom dimension? |
|---|---|---|---|
| page_view | Otomatik | page_location, page_title | — |
| form_submit | Form gönderildiğinde | form_id, form_name | Evet |
| video_play | Video başlatıldığında | video_title, video_duration | Evet |
| scroll | %90 scroll | scroll_depth | Hayır (zaten ölçülüyor) |
Bu doküman Notion, Confluence veya Google Sheets'te tutulur. Yeni event eklenmek istendiğinde önce dokümanda yer alır; sonra implementasyon yapılır.
9. Parametre debug etme
Yeni parametre eklendikten sonra:
- DebugView'da event tetiklenmesini izle
- Parametre adı ve değeri doğru görünüyor mu?
- Custom dimension olarak kayıtlı mı?
- 24 saat sonra Reports > Engagement > Events raporunda görünüyor mu?
Custom dimension verilerinin raporlarda görünmesi 24-48 saat sürer; sabırlı olun.
10. Dikkat Edilecek Tuzaklar
- Tutarsız isimlendirme. Aynı kavram farklı isimlerle; analiz imkansız
- Custom dimension kaydetmemek. Parametre toplanır ama raporlarda görünmez
- PII gönderme. KVKK ihlali ve property silinme riski
- Çok fazla event. Anlamlı olmayan onlarca event raporu kirletir
- Standart event'leri yeniden adlandırma. "purchase" varken "satin_alma" yazmak; e-ticaret raporları çalışmaz
- Test ortamı verisi production'a karışır. Internal traffic exclusion zorunlu

11. Atılması Gereken Adım
GA4 event parametre tasarımı modern web analitiğinin temel disiplini. snake_case isimlendirme, custom dimension kaydı ve scope seçimini panel üzerinde pratiğe çeviren Google Analytics eğitim programı ekip içinde tutarlı bir veri sözlüğü kurmayı kolaylaştırır.
12. Çıkarımlar
GA4 event parametre tasarımı; tutarlı isimlendirme (snake_case + action_object), custom dimension kaydı, scope seçimi (event vs user) ve standart değer listeleri ile yapılır. PII asla parametre olarak gönderilmez. Event tasarım dokümanı ekip içi tutarlılığı sağlar. Doğru tasarım GA4'ün gücünü ortaya çıkarır; tutarsızlık ise zengin veriyi kullanılamaz hale getirir.
Sıkça Sorulan Sorular
Snake_case yerine camelCase kullanabilir miyim?
Teknik olarak GA4 ikisini de kabul eder ama Google'ın standart event'leri snake_case kullanır. Tutarlılık için aynı pattern'e uymak en doğrusu. Aksi durumda 'add_to_cart' (standart) ile 'productAdded' (özel) aynı raporda karışık görünür; ekip kafa karışıklığı yaşar. Standart kabul snake_case.
Bir parametre değerini sonradan değiştirebilir miyim?
Mevcut veri geriye dönük değişmez; sadece bu noktadan sonraki kayıtlar yeni değerle gelir. Bu yüzden <strong>parametre tasarımı</strong> önceden yapılmalı; canlıya çıkmadan netleştirilmeli. Mecbur kalırsanız yeni bir parametre adı ile başlayın; eski adı emekliye ayırın. Eski veriyi 'düzeltme' imkanı yok.
Custom dimension sınırını aşarsam ne olur?
GA4 ücretsiz versiyonda event-scoped 50 + user-scoped 25 sınır var. Aşarsanız yeni custom dimension oluşturamazsınız. Çözüm: kullanılmayanları silip yenisine yer açın veya GA4 360 (ücretli) versiyonuna geçin. Ama 75 custom dimension olan property zaten çok karmaşık; analitik akışını basitleştirmek genelde daha iyi karar.
Standart event'leri yeniden adlandırırsam ne kaybederim?
Otomatik raporları kaybedersiniz. 'purchase' yerine 'satin_alma' adlandırırsanız GA4 e-ticaret raporları (Monetization, ROAS metrikleri) çalışmaz; Google Ads entegrasyonu doğru veri görmez. Standart event isimlerini koruyup gerektiğinde custom parametre eklemek doğru yaklaşım. 'purchase' event'ine custom 'satis_kanali' parametresi ekleyebilirsiniz.
User-scoped parametre ne zaman kullanılmalı?
Kullanıcıya bağlı, sessions arasında değişmeyen bilgiler için. Örnekler: subscription_tier (free/premium), user_role (admin/member), signup_source (organic/paid), account_age. Bu değerler her oturumda aynı kalır; user_properties ile bir kez set edilir. Event-scoped parametreler her event'te farklı değer alabilir (form_id, product_category gibi).
PII içeren veriyi nasıl GA4'e gönderebilirim?
Doğrudan göndermeyin. E-posta, isim, telefon, kart bilgisi GA4'e konulmaz. Eğer kullanıcı tanımlama gerekiyorsa: user_id parametresi (hash'li veya internal ID) kullanılabilir. CRM'de bu user_id ile gerçek kullanıcı eşleştirilir; GA4'te PII yok ama analiz yapılabilir. Bu pratik 'pseudo-anonymization' denir ve KVKK uyumludur.
Event tasarım dokümanı zorunlu mu?
Resmi olarak zorunlu değil ama 3+ kişilik ekipte pratik olarak şart. Doküman olmayan ekipler 6 ay içinde 'bu event ne içindi' sorusuyla karşılaşır. Notion, Confluence veya Google Sheets'te basit bir tablo yeterli. Yeni event eklenmek istendiğinde önce dokümanda yer alır; sonra implementasyon yapılır. Bu disiplin analitik altyapının sürdürülebilirliğini sağlar.


