- Meta Conversions API, Purchase gibi olayları sunucunuzdan gönderir; böylece tarayıcı pikseli engellenmiş olsa bile olaylar Meta'ya ulaşır.
- Onu pikselin yanında çalıştırın ve iki kopyaya da aynı olay adını ve event_id'yi verin; iki kopya 48 saat içinde ulaşırsa Meta olayı bir kez sayar.
- Web olayları action_source, event_source_url ve alışveriş yapanın user agent'ını gerektirir; hash'lenmiş e-posta ve telefon, IP adresi, fbp ve fbc ise Meta'nın bunları ne kadar iyi eşleştirebileceğini belirler.
- Events Manager'daki Test events sekmesiyle test edin, ardından test kodunu kaldırın, çünkü test olayları atılmaz.
- Sorunların çoğu uyuşmayan olay kimliklerinden, sunucunun kendi IP adresinden, kaybolan bir fbclid'den ya da normalleştirilmeden hash'lenmiş iletişim verisinden kaynaklanır.
Meta Conversions API (CAPI), sunucunuzun Purchase gibi olayları doğrudan Meta'ya göndermesini sağlar. Meta pikseli aynı olayları alışveriş yapanın tarayıcısından gönderir. CAPI bunları sunucunuzdan gönderir; böylece bir reklam engelleyici pikseli durdurduğunda, bir çerez kaybolduğunda ya da teşekkür sayfası hiç yüklenmediğinde bile olaylar yine ulaşır.
Bu rehber, bir Conversions API olayının neleri içerdiğini, onu tek bir event_id ile pikselin yanında nasıl çalıştıracağınızı, Meta'nın hangi parametreleri zorunlu tuttuğunu ve önerdiğini, Test events ile nasıl test edeceğinizi ve en sık çıkan hataları ele alır.
Meta Conversions API nedir?
Conversions API, Meta'nın Graph API'sinin bir parçasıdır. Sunucunuz, bir erişim token'ı ve en fazla 1,000 olayın yer aldığı bir data listesiyle graph.facebook.com/VERSION/PIXEL_ID/events adresine bir HTTPS POST isteği gönderir. Her olay, satın alım gibi tek bir eylemi üç bölümde anlatır: ne oldu, kim yaptı ve ayrıntılar.
| Alan | Ne içerir |
|---|---|
event_name | Eylem, örneğin Purchase, AddToCart veya InitiateCheckout |
event_time | Ne zaman gerçekleştiği, saniye cinsinden Unix zaman damgası olarak |
event_id | Bu olay için benzersiz bir kimlik; pikselle mükerrer kayıt önleme için kullanılır |
action_source | Nerede gerçekleştiği: mağaza satın alımları için website |
event_source_url | Olayın gerçekleştiği sayfanın URL'si |
user_data | Eşleştirme için müşteri bilgileri: hash'lenmiş e-posta ve telefon, IP adresi, user agent, fbp ve fbc |
custom_data | value, currency ve content_ids gibi ayrıntılar |
Kısaltılmış bir Purchase olayı şöyle görünür:
{
"data": [{
"event_name": "Purchase",
"event_time": 1792929600,
"event_id": "order-1042",
"action_source": "website",
"event_source_url": "https://yourstore.com/checkouts/thank-you",
"user_data": {
"em": ["<SHA-256 of the normalized email>"],
"ph": ["<SHA-256 of the normalized phone>"],
"client_ip_address": "203.0.113.24",
"client_user_agent": "Mozilla/5.0 (iPhone; ...)",
"fbp": "fb.1.1792928400000.1234567890",
"fbc": "fb.1.1792928400000.AbCdEf123"
},
"custom_data": { "value": 74.00, "currency": "USD" }
}]
}E-posta ve telefon gibi iletişim alanları, sunucunuzdan çıkmadan önce normalleştirilir ve SHA-256 ile hash'lenir. IP adresi, user agent, fbp ve fbc olduğu gibi gönderilir.
Conversions API neden pikselin yanında çalıştırılmalı?
Meta, Conversions API'yi pikselin yanında çalıştırmanızı ve aynı olayları ikisi üzerinden de göndermenizi önerir. Her taraf diğerinin görmediği bir şeyi görür ve birlikte Meta'ya daha eksiksiz veri verirler.
- _fbp çerezini ayarlar ve bir reklam tıklamasındaki fbclid'i _fbc çerezinde saklar
- Ziyaret sürerken sayfayı ve tarayıcıyı görür
- Tarayıcı onu engellediğinde ya da sayfa yüklenmediğinde kaybolur
- Ödenmiş siparişi mağaza verinizden gönderir
- Siparişteki hash'lenmiş e-posta, telefon ve adresi ekleyebilir
- Tarayıcıya bağlı değildir, bu yüzden reklam engelleyiciler onu durdurmaz
İkisini birlikte çalıştırmanın bedeli, Meta'nın artık her olayın iki kopyasını almasıdır. Sonraki bölüm Meta'nın nasıl yalnızca birini tuttuğunu gösterir.
Mükerrer kayıt önleme tek bir event_id ile nasıl çalışır?
Meta, iki şey eşleştiğinde bir tarayıcı olayını ve bir sunucu olayını aynı olay sayar: olay adı ve olay kimliği. Pikselde kimlik eventID seçeneğine girer. Conversions API'de aynı değer event_id alanına girer.
fbq('track', 'Purchase', { value: 74.00, currency: 'USD' }, { eventID: 'order-1042' });Meta, eşleşen bir çiftteki mükerrer kaydı yalnızca iki kopya birbirinden en fazla 48 saat arayla geldiğinde ayıklar. Birkaç kural bunun pratikte çalışmasını sağlar:
- Kimliği bir kez oluşturun. Onu iki tarafın da bildiği bir şeyden, örneğin sipariş numarasından üretin ve hem tarayıcıya hem sunucuya iletin. Her biri kendi kimliğini üreten iki sistem eşleşmez.
- Tek bir biçim kullanın.
order-1042ile1042farklı kimliklerdir. - Olay adını birebir eşleştirin.
Purchasevepurchasefarklı olaylardır. - Sunucu olayını gecikmeden gönderin. Tarayıcı olayından 48 saatten sonra gelen bir sunucu olayı ikinci kez sayılır.
Meta ayrıca olayları fbp veya external_id ile eşleştiren ikinci bir yöntemi de tarif eder. Meta, bunun genellikle yalnızca tarayıcı olayı sunucu olayından önce geldiğinde çalıştığını söyler; bu yüzden ortak bir event_id daha güvenilir seçenektir. Meta yine de mağazanızın aldığından fazla satın alım raporluyorsa mükerrer satın alım olayları rehberimiz olağan nedenleri listeler.
Hangi parametreler zorunlu, hangileri önerilir?
Zorunlu alanlar bir olayı geçerli kılar. Önerilen alanlar, olaylarınızdan kaçının Meta'nın bir kişiyle eşleştirebileceğini belirler ve yalnızca eşleşen olaylar atıf ve reklam gösterimi için kullanılabilir.
| Parametre | Web olayları | Ne gönderilmeli |
|---|---|---|
event_name | Zorunlu | Purchase gibi standart bir olay ya da özel bir olay adı |
event_time | Zorunlu | Saniye cinsinden Unix zamanı, en fazla 7 gün geçmişte |
action_source | Zorunlu | Mağazanızdaki olaylar için website |
event_source_url | Zorunlu | Olayın gerçekleştiği sayfanın URL'si |
client_user_agent | Zorunlu | Alışveriş yapanın tarayıcı dizesi, sunucunuzunki değil |
user_data | Zorunlu | En az bir müşteri bilgisi parametresi |
event_id | Önerilir | Pikselin kullandığı aynı kimlik; mükerrer kayıt önleme için |
em, ph | Önerilir | E-posta ve telefon, normalleştirilmiş ve SHA-256 ile hash'lenmiş |
client_ip_address | Önerilir | Alışveriş yapanın IP adresi, hash'lenmemiş |
fbp, fbc | Önerilir | Tarayıcı kimliği ve tıklama kimliği çerezleri, hash'lenmemiş |
external_id | Önerilir | Kendi müşteri kimliğiniz; tarayıcı ve sunucu olaylarında aynı |
value, currency | Purchase ile gönderin | Sipariş değeri ve üç harfli bir para birimi kodu |
Sorunların çoğuna üç ayrıntı yol açar:
- Hash'lemeden önce normalleştirin. Meta, e-postanın kırpılmış ve küçük harfle, telefon numaralarının ise ülke koduyla birlikte rakamlar hâlinde olmasını bekler.
Anna@Example.comveanna@example.comfarklı hash'ler verir ve yalnızca ikincisi eşleşebilir. - Tarayıcı tanımlayıcılarını hash'lemeyin.
fbp,fbc, IP adresi ve user agent düz değer olarak girer. - Tıklama kimliğini olduğu gibi koruyun.
fbcdeğeri şunlardan oluşur:fb.1., milisaniye cinsinden oluşturulma zamanı, bir nokta ve açılış sayfası URL'sindekifbclid.fbclidbüyük/küçük harfe duyarlıdır. Ziyaretçi sayfaya indiğinde kaydedin, çünkü ödeme aşamasında artık URL'de yoktur.
Bu alanların ne kadar iyi eşleştiği, Meta'nın Event Match Quality puanının ölçtüğü şeydir. Event Match Quality rehberimiz her parametreyi, hash'leme kurallarını ve hedeflenecek puanı ele alır.
Olayları Test events ile nasıl test edersiniz?
Events Manager'da olayları geldikleri anda gösteren bir Test events sekmesi vardır. Yeni bir kuruluma güvenmeden önce onu kullanın.
- Test events'i açın
Events Manager'da veri setinizi (pikselinizi) seçin ve Test events sekmesini açın. Gösterdiği test kodunu kopyalayın.
- Kodu sunucu olaylarınıza ekleyin
İstekte
test_event_codeolarak gönderin. ROASaurus'ta Meta pikselinin Test event code alanına yapıştırın. - Bir test siparişi verin
Mağazayı ziyaret edin, bir ürün ekleyin ve ödeme yapın; böylece hem piksel hem sunucu bir Purchase gönderir.
- İki kopyayı karşılaştırın
İki kopyada da aynı olay adı, olay kimliği, değer ve para birimi görünmelidir.
- Müşteri bilgilerini kontrol edin
Sunucu olayı hash'lenmiş e-posta ve telefonu, IP adresini, user agent'ı ve fbp'yi, ziyaret bir reklam tıklamasıyla başladıysa fbc'yi de taşımalıdır.
- Test kodunu kaldırın
Meta, alanın yalnızca test için olduğunu söyler; bu yüzden olaylara güvenmeden önce onu kaldırın.
Purchase browser order-1042 74.00 USDPikseldenPurchase server order-1042 74.00 USDConversions API'denevent_name + event_id matchTek satın alım olarak sayıldıem ph fbp fbc client_ip_address client_user_agentSunucu olayındaki müşteri bilgileriSık görülen Conversions API hataları ve çözümleri
| Gördüğünüz | Olası neden | Çözüm |
|---|---|---|
| Tüm istek başarısız olur ve hiçbir olay işlenmez | Toplu gönderimdeki bir olayın event_time değeri 7 günden eskidir | Olayları gerçekleştikleri anda gönderin. Yeniden denemeden önce eski olayları düzeltin veya çıkarın. |
| Meta, mağazanızın aldığından fazla satın alım raporlar | Farklı olay kimlikleri, eventID olmayan bir piksel olayı ya da aynı pikseli gönderen ikinci bir uygulama | İki kopya için tek bir kimlik ve piksel başına tek bir sunucu göndericisi kullanın. |
| Sunucu olaylarında düşük eşleşme kalitesi | Sunucunuz kendi IP adresini ve user agent'ını gönderir | Alışveriş yapanın tarayıcısından ya da siparişten kaydedilen IP adresini ve user agent'ı iletin. |
| Az sayıda olayda fbc var | fbclid açılış sayfasında kaydedilmedi ya da değiştirildi | fbclid'i geldiği şekliyle olduğu gibi saklayın ve fbc'yi ondan oluşturun. |
| E-posta ve telefon eşleşmiyor | Değerler normalleştirilmeden hash'lenmiş ya da hash'lenmeden gönderilmiş | E-postayı kırpıp küçük harfe çevirin, telefonun rakamlarını ve ülke kodunu koruyun, ardından SHA-256 ile hash'leyin. |
| İstekler süresi dolmuş token hatasıyla başarısız olur | Erişim token'ı bir Facebook girişinden geldi ve giriş token'larının süresi dolar | Yeniden bağlanın ya da Business Manager'dan, son kullanma tarihi olmadan oluşturabileceğiniz bir System User token'ı kullanın. |
Birkaç günlük canlı trafikten sonra Events Manager'da Diagnostics sekmesini açın. Meta sorunları orada, nasıl düzeltileceğine dair önerilerle listeler. Ardından Events Manager'daki günlük Purchase sayısını mağazanızdaki aynı günlerin ödenmiş siparişleriyle karşılaştırın. Meta belirgin biçimde daha yüksekse çift saymayı önleme yardım sayfamız kontrol edilecek ayarları listeler.
Conversions API ROASaurus ile nasıl kurulur?
ROASaurus, Conversions API olaylarını mağazanızın sipariş verisinden gönderir; böylece sunucu tarafını kendiniz kurmak zorunda kalmazsınız. Tracking & platforms bölümünde Connect with Facebook'a tıklayın ve reklam hesabınızı ile pikselinizi seçin ya da piksel (veri seti) kimliğini ve bir Conversions API token'ını yapıştırın. Meta kurulum rehberi iki seçeneği de adım adım anlatır, Meta entegrasyon sayfası ise gönderilen her alanı listeler.
- İki tarafta tek kimlik. Tarayıcı ve sunucu olayları tek bir olay kimliğini paylaşır. Bir satın alım için bu,
order-ve ardından sipariş kimliğidir. - Satın alımdan önce kısa bir bekleme. Sunucudaki Purchase, sipariş geldikten sonra kısa bir süre bekler; böylece tarayıcıdaki satın alım olayı önce birleştirilebilir. Onun IP adresi, user agent'ı ve sayfa URL'si, ziyaretçi için kaydedilmiş
fbpvefbcile birlikte sunucu olayıyla gider. - Siparişten müşteri bilgileri. E-posta, telefon, ad ve adres normalleştirilir ve SHA-256 ile hash'lenir. Mağazanın müşteri kimliği ve ROASaurus ziyaretçi kimliği hash'lenmiş olarak
external_idşeklinde girer. - Meta'nın eşleştiremediği olaylar atlanır.
fbc,fbp, e-posta, telefon ya da IP adresinden hiçbirini taşımayan bir olay gönderilmez.
Event log, her sunucu gönderimini isteği ve Meta'nın yanıtıyla gösterir. Marjlarınız ürünler arasında çok farklıysa her satın alımın yanında bir kâr değeri de gönderebilirsiniz: kâr için Meta değer optimizasyonu rehberimiz bunun nasıl yapılacağını açıklar. Tıklamadan siparişe kadar tüm veri yolu için sunucu tarafı takip yazısına bakın.
Kaynaklar
- Meta for Developers: Handling Duplicate Pixel and Conversions API Events
- Meta for Developers: Server Event Parameters
- Meta for Developers: Customer Information Parameters
- Meta for Developers: Using the API - Conversions API
- Meta for Developers: ClickID and the fbp and fbc Parameters