Server-Side Google Tag Manager kullanarak Meta Conversions API (CAPI) kurulumu için kapsamlı bir rehber
Meta Conversions API (CAPI), serverınız ile Meta sistemleri arasında doğrudan bir bağlantı oluşturarak reklam hedeflemeyi optimize etmeye, eylem başına maliyeti düşürmeye ve ölçüm doğruluğunu artırmaya yardımcı olur. CAPI’yi Server-Side Google Tag Manager (sGTM) aracılığıyla uygulayarak veri gizliliğini ve kontrolünü koruyabilirsiniz.
Hardal ile Meta CAPI’yi sGTM ile Meta CAPI kurmadan önce uygulamanızı şiddetle tavsiye ederiz.
Bu entegrasyona geçmeden önce şunlara sahip olduğunuzdan emin olun:
Sisteminiz GA4’ten daha eski bir sürüm kullanıyorsa, bu entegrasyona geçmeden önce mevcut tag manager kurulumunuzu GA4 kullanacak şekilde güncellemeniz gerekecektir.
sGTM Kurulumu
Meta Browser ID ve Click ID'yi Yapılandırın
Doğru tracking ve çift kayıt engelleme sağlamak için, Meta’nın browser ID ve click ID’sini serverınıza iletmeniz gerekecek:
_fbp
_fbc
x-fb-ck-fbp
Değer: Meta Browser ID değişkeninizx-fb-ck-fbc
Değer: Meta Click ID değişkeninizServer container’ınız için custom domain kurduysanız, bu ID’ler otomatik olarak iletilebilir. Ancak, doğru tracking sağlamak için bunları açıkça yapılandırmanız yine de önerilir.
Kullanıcı Veri Parametrelerini Ayarlayın
İlk olarak, izlemek istediğiniz her kullanıcı veri parametresi için Google Tag Manager web container’ınızda değişkenler oluşturmanız gerekecek:
Parametre Eşleştirme Yapısını Takip Edin
Değişkenlerinizi doğru kurmak için bu eşleştirme yapısını kullanın:
Meta Parametresi | GA4 Alan Adı | Data Layer Değişken Adı |
---|---|---|
email (em) | user_data.email_address | eventModel.user_data.email_address |
phone (ph) | user_data.phone_number | eventModel.user_data.phone_number |
external_id | x-fb-ud-external_id | Yok |
first_name (fn) | user_data.address.first_name | eventModel.user_data.address.first_name |
last_name (ln) | user_data.address.last_name | eventModel.user_data.address.last_name |
city (ct) | user_data.address.city | eventModel.user_data.address.city |
state (st) | user_data.address.region | eventModel.user_data.address.region |
zip (zp) | user_data.address.postal_code | eventModel.user_data.address.postal_code |
country (country) | user_data.address.country | eventModel.user_data.address.country |
Web container’ınıza tüm Data Layer Variables ekledikten sonra, Variables bölümü şu şekilde görünmelidir:
Önce yüksek öncelikli parametreleri uygulamaya odaklanın: email, telefon numarası ve external ID, Meta sistemleri için en iyi eşleşme oranlarını sağlar.
Değişkenleri Google Tag Yapılandırmanıza Ekleyin
Bu değişkenleri oluşturduktan sonra, bunları Google Tag’inize eklemeniz gerekir:
Websitenizde Veri Toplama Uygulayın
Websitenizin bu verileri toplayıp data layer’a iletmesini sağlamanız gerekecek. Örneğin:
Önemli Gizlilik Gereksinimlerini Dikkate Alın
Kullanıcı verilerini her zaman GDPR, CCPA ve diğer gizlilik düzenlemelerine uygun olarak dikkatli bir şekilde işleyin.
Kullanıcı veri parametrelerini uygularken:
Bu kullanıcı veri parametreleri, atfetme ve kitle hedefleme için daha iyi veriler sağlayarak Meta reklam kampanyalarınızın etkinliğini önemli ölçüde artıracaktır.
GA4 Event Tag'leri Oluşturun
Belirli kullanıcı eylemlerini izlemek için GA4 Event tag’leri kurun:
Meta Event Adı | GA4 Event Adı |
---|---|
PageView | page_view |
AddToCart | add_to_cart |
AddPaymentInfo | add_payment_info |
AddToWishlist | add_to_wishlist |
CompleteRegistration | sign_up |
InitiateCheckout | begin_checkout |
Lead | generate_lead |
Purchase | purchase |
Search | search |
ViewContent | view_item |
Çift Kayıt Engelleme Kurun
Hem Pixel hem de CAPI kullanırken çift event’leri önlemek için event_id çift kayıt engelleme uygulayın:
eventModel.event_id
olan bir Data Layer Variable (örn. FBEventIdVar) oluşturunevent_id
Tutarlı tetikleme ve doğru çift kayıt engelleme sağlamak için hem Meta Pixel tag’iniz hem de GA4 Event tag’iniz için aynı trigger’ı kullanın.
Server Container'daki GA4 Client'ı Yapılandırın
Server container’ınızda, GA4 Client’ın doğru kurulduğundan emin olun:
GA4 Client, web container’ınızdan gelen verileri işlemek ve diğer server-side tag’lerin kullanabileceği bir formata dönüştürmekten sorumludur.
Meta Conversions API Tag'i Yükleyin
Son adım Meta Conversions API Tag’ini kurmaktır:
Access token’ınızı güvende tutun. Meta hesabınıza doğrudan erişim sağlar ve asla client-side kodda açığa çıkarılmamalıdır.
Event’ler düzgün görünmüyorsa:
Meta’ya ek event verileri göndermek için GA4 Event tag’lerinizde bu parametre eşleştirmelerini kullanın:
Meta Parametresi | GA4 Parametresi |
---|---|
value | value |
currency | currency |
search_string | search_term |
order_id | transaction_id |
content_ids | x-fb-cd-content_ids |
content_type | x-fb-cd-content_type |
content_name | x-fb-cd-content_name |
content_category | x-fb-cd-content_category |
contents | items VEYA x-fb-cd-contents |
num_items | x-fb-cd-num_items |
predicted_ltv | x-fb-cd-predicted_ltv |
status | x-fb-cd-status |
delivery_category | x-fb-cd-delivery_category |
contents
ve custom_properties
gibi dizi veya nesne parametreleri için, göndermeden önce JSON.stringify kullanmayı unutmayın.
İşte tüm önerilen parametrelerle bir satın alma event’i örneği:
Conversions API aracılığıyla özel parametreler gönderebilir miyim?
Evet, Meta’nın Conversions API’si özel parametreleri destekler. Yukarıdaki Custom Veri Parametreleri bölümünde sağlanan eşleştirmeleri kullanın veya custom_properties
parametresini kullanarak tamamen özel veriler gönderin.
Tek bir server birden çok container çalıştırabilir mi?
Şu anda GTM, serverlar ve container’lar arasında 1:1 eşleştirmeyi destekler. Birden çok container’a ihtiyacınız varsa, ayrı server örnekleri kurmanız gerekecektir.
Server-Side GTM tarayıcı tabanlı tag'ler gerektirir mi?
Evet, Server-Side GTM verileri server container’a göndermek için (GA4 gibi) tarayıcı tabanlı bir tag gerektirir. Client-side bileşen olmadan doğrudan tarayıcıdan veri toplayamaz.
GA4'ü Server-Side entegrasyonumdan ayrı tutabilir miyim?
Evet, özellikle server-side tracking için Google Analytics’te yeni bir Measurement ID oluşturarak GA4 ve server-side uygulamalarınızı ayrı tutabilirsiniz. Bu, verileri her iki endpoint’e de bağımsız olarak göndermenize olanak tanır.
Bu entegrasyon GCP dışındaki cloud sağlayıcılarla çalışır mı?
Evet, Google’ın varsayılan deployment’ı GCP kullanırken, GTM server container’ı AWS veya Azure gibi diğer cloud sağlayıcılarda manuel olarak deploy edebilirsiniz. Detaylar için Google’ın manuel provisioning belgelerine başvurun.