- Meta Conversions API odesílá události, například Purchase, z vašeho serveru, takže dorazí do Meta, i když je pixel v prohlížeči zablokovaný.
- Provozujte ho vedle pixelu a oběma kopiím dejte stejný název události a event_id; Meta pak událost započítá jednou, pokud obě dorazí do 48 hodin.
- Události z webu potřebují action_source, event_source_url a user agent nakupujícího; hashovaný e-mail a telefon, IP adresa, fbp a fbc určují, jak dobře je Meta dokáže spárovat.
- Testujte pomocí záložky Test events v Events Manageru a poté testovací kód odstraňte, protože testovací události se nezahazují.
- Většina problémů pochází z neshodných ID událostí, vlastní IP adresy serveru, ztraceného fbclid nebo kontaktních údajů, které se zahashovaly bez normalizace.
Meta Conversions API (CAPI) umožňuje vašemu serveru odesílat události, například Purchase, přímo do Meta. Pixel Meta odesílá stejné události z prohlížeče nakupujícího. CAPI je odesílá z vašeho serveru, takže dorazí i tehdy, když blokátor reklam pixel zastaví, cookie chybí nebo se poděkovací stránka nikdy nenačte.
Tento průvodce popisuje, co událost Conversions API obsahuje, jak ji provozovat vedle pixelu s jedním event_id, které parametry Meta vyžaduje a doporučuje, jak testovat pomocí Test events a jaké chyby se objevují nejčastěji.
Co je Meta Conversions API?
Conversions API je součástí Graph API od Meta. Váš server odešle požadavek HTTPS POST na graph.facebook.com/VERSION/PIXEL_ID/events s přístupovým tokenem a seznamem data obsahujícím až 1,000 událostí. Každá událost popisuje jednu akci, například nákup, ve třech částech: co se stalo, kdo to udělal a podrobnosti.
| Pole | Co obsahuje |
|---|---|
event_name | Akce, například Purchase, AddToCart nebo InitiateCheckout |
event_time | Kdy se to stalo, jako Unix timestamp v sekundách |
event_id | Jedinečné ID této události, které slouží k její deduplikaci vůči pixelu |
action_source | Kde se to stalo: website pro nákupy v obchodě |
event_source_url | URL stránky, na které k události došlo |
user_data | Informace o zákazníkovi pro párování: hashovaný e-mail a telefon, IP adresa, user agent, fbp a fbc |
custom_data | Podrobnosti, například value, currency a content_ids |
Zkrácená událost Purchase vypadá takto:
{
"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" }
}]
}Kontaktní pole, například e-mail a telefon, se před opuštěním vašeho serveru normalizují a hashují pomocí SHA-256. IP adresa, user agent, fbp a fbc se odesílají beze změny.
Proč provozovat Conversions API vedle pixelu?
Meta doporučuje provozovat Conversions API vedle pixelu a posílat stejné události oběma cestami. Každá strana vidí něco, co ta druhá nevidí, a společně dávají Meta úplnější data.
- Nastavuje cookie _fbp a ukládá fbclid z kliknutí na reklamu do cookie _fbc
- Vidí stránku a prohlížeč během návštěvy
- Ztratí se, když ho prohlížeč zablokuje nebo se stránka nenačte
- Odesílá zaplacenou objednávku z dat vašeho obchodu
- Může přidat hashovaný e-mail, telefon a adresu z objednávky
- Nezávisí na prohlížeči, takže ho blokátory reklam nezastaví
Cenou za provoz obou je, že Meta nyní dostává dvě kopie každé události. Další část ukazuje, jak Meta ponechá jen jednu.
Jak funguje deduplikace s jedním event_id?
Meta považuje událost z prohlížeče a serverovou událost za tutéž událost, když se shodují dvě věci: název události a ID události. V pixelu se ID zadává do volby eventID. V Conversions API se stejná hodnota zadává do event_id.
fbq('track', 'Purchase', { value: 74.00, currency: 'USD' }, { eventID: 'order-1042' });Meta deduplikuje odpovídající dvojici jen tehdy, když obě kopie dorazí do 48 hodin od sebe. V praxi to zajistí několik pravidel:
- Vytvořte ID jen jednou. Sestavte ho z něčeho, co znají obě strany, například z čísla objednávky, a předejte ho prohlížeči i serveru. Dva systémy, které si každý vytvoří vlastní ID, se nespárují.
- Používejte jeden formát.
order-1042a1042jsou různá ID. - Název události shodujte přesně.
Purchaseapurchasejsou různé události. - Odešlete serverovou událost včas. Serverová událost, která dorazí více než 48 hodin po události z prohlížeče, se započítá podruhé.
Meta popisuje také druhou metodu, která páruje události podle fbp nebo external_id. Meta uvádí, že obecně funguje jen tehdy, když událost z prohlížeče dorazí dřív než serverová událost, takže spolehlivější volbou je sdílené event_id. Pokud Meta přesto hlásí víc nákupů, než kolik měl váš obchod, náš průvodce duplicitními událostmi nákupu uvádí obvyklé příčiny.
Které parametry jsou povinné a které doporučené?
Povinná pole dělají událost platnou. Doporučená pole rozhodují o tom, kolik vašich událostí dokáže Meta spárovat s osobou, a jen spárované události lze použít pro atribuci a doručování reklam.
| Parametr | Události z webu | Co odesílat |
|---|---|---|
event_name | Povinné | Standardní událost, například Purchase, nebo vlastní název události |
event_time | Povinné | Unix čas v sekundách, nejvýš 7 dní v minulosti |
action_source | Povinné | website pro události ve vašem obchodě |
event_source_url | Povinné | URL stránky, na které k události došlo |
client_user_agent | Povinné | Řetězec prohlížeče nakupujícího, ne vašeho serveru |
user_data | Povinné | Alespoň jeden parametr s informacemi o zákazníkovi |
event_id | Doporučeno | Stejné ID, jaké používá pixel, pro deduplikaci |
em, ph | Doporučeno | E-mail a telefon, normalizované a zahashované pomocí SHA-256 |
client_ip_address | Doporučeno | IP adresa nakupujícího, nezahashovaná |
fbp, fbc | Doporučeno | Cookies s ID prohlížeče a ID kliknutí, nezahashované |
external_id | Doporučeno | Vaše vlastní ID zákazníka, shodné u událostí z prohlížeče i ze serveru |
value, currency | Odesílejte s Purchase | Hodnota objednávky a třípísmenný kód měny |
Tři detaily způsobují většinu problémů:
- Normalizujte před hashováním. Meta očekává e-mail bez okrajových mezer a malými písmeny a telefonní čísla jako číslice s kódem země.
Anna@Example.comaanna@example.comdávají různé hashe a spárovat se může jen druhý. - Nehashujte identifikátory prohlížeče.
fbp,fbc, IP adresa a user agent se zadávají jako prosté hodnoty. - Uchovejte ID kliknutí přesně tak, jak je. Hodnota
fbcse skládá zfb.1., času vytvoření v milisekundách, tečky afbclidz URL vstupní stránky.fbclidrozlišuje velká a malá písmena. Uložte ho, když návštěvník přijde na web, protože v pokladně už v URL není.
Právě to, jak dobře se tato pole spárují, měří skóre Event Match Quality od Meta. Náš průvodce Event Match Quality popisuje každý parametr, pravidla hashování i skóre, o které stojí za to usilovat.
Jak testovat události pomocí Test events?
Events Manager má záložku Test events, která ukazuje události, jakmile dorazí. Použijte ji dřív, než se na nové nastavení spolehnete.
- Otevřete Test events
V Events Manageru vyberte svůj dataset (pixel) a otevřete záložku Test events. Zkopírujte testovací kód, který zobrazí.
- Přidejte kód k serverovým událostem
Odešlete ho v požadavku jako
test_event_code. V ROASaurus ho vložte do pole Test event code u pixelu Meta. - Zadejte testovací objednávku
Navštivte obchod, přidejte produkt do košíku a zaplaťte, aby pixel i server odeslaly Purchase.
- Porovnejte obě kopie
Obě kopie by měly mít stejný název události, ID události, hodnotu a měnu.
- Zkontrolujte informace o zákazníkovi
Serverová událost by měla nést hashovaný e-mail a telefon, IP adresu, user agent a fbp, a také fbc, pokud návštěva začala kliknutím na reklamu.
- Odstraňte testovací kód
Meta uvádí, že toto pole slouží jen k testování, proto ho odstraňte dřív, než se na události začnete spoléhat.
Purchase browser order-1042 74.00 USDZ pixeluPurchase server order-1042 74.00 USDZ Conversions APIevent_name + event_id matchZapočteno jako jeden nákupem ph fbp fbc client_ip_address client_user_agentInformace o zákazníkovi u serverové událostiČasté chyby Conversions API a jak je opravit
| Co vidíte | Pravděpodobná příčina | Řešení |
|---|---|---|
| Selže celý požadavek a nezpracuje se žádná událost | Jedna událost v dávce má event_time starší než 7 dní | Odesílejte události, když nastanou. Staré události před opakováním opravte nebo vyřaďte. |
| Meta hlásí víc nákupů, než kolik měl váš obchod | Různá ID událostí, událost pixelu bez eventID nebo druhá aplikace, která odesílá stejný pixel | Používejte jedno ID pro obě kopie a jednoho serverového odesílatele na pixel. |
| Nízká kvalita párování u serverových událostí | Váš server odesílá vlastní IP adresu a user agent | Předávejte IP adresu a user agent zaznamenané z prohlížeče nakupujícího nebo z objednávky. |
| Málo událostí s fbc | fbclid se na vstupní stránce neuložil, nebo byl změněn | Uložte fbclid přesně tak, jak dorazí, a sestavte z něj fbc. |
| E-mail a telefon se nespárují | Hodnoty zahashované bez normalizace nebo odeslané bez hashování | Ořízněte e-mail a převeďte ho na malá písmena, u telefonu ponechte číslice a kód země a poté zahashujte pomocí SHA-256. |
| Požadavky selhávají s chybou vypršelého tokenu | Přístupový token pochází z přihlášení přes Facebook a tokeny z přihlášení vypršují | Připojte se znovu nebo použijte token System User z Business Manageru, který můžete vytvořit bez data vypršení. |
Po několika dnech ostrého provozu otevřete v Events Manageru záložku Diagnostics. Meta tam uvádí problémy s doporučeními, jak je opravit. Poté porovnejte denní počet Purchase v Events Manageru se zaplacenými objednávkami ve svém obchodě za stejné dny. Pokud je Meta zřetelně výš, uvádí naše stránka nápovědy o předcházení dvojímu započítání nastavení, která je třeba zkontrolovat.
Jak nastavit Conversions API s ROASaurus
ROASaurus odesílá události Conversions API z dat objednávek vašeho obchodu, takže serverovou část nemusíte stavět sami. V části Tracking & platforms klikněte na Connect with Facebook a vyberte svůj reklamní účet a pixel, nebo vložte ID pixelu (datasetu) a token Conversions API. Průvodce nastavením Meta popisuje obě možnosti a stránka integrace Meta uvádí všechna odesílaná pole.
- Jedno ID na obou stranách. Události z prohlížeče a ze serveru sdílejí jedno ID události. U nákupu je to
order-následované ID objednávky. - Krátké zdržení před nákupem. Serverový Purchase po příchodu objednávky krátce počká, aby se k objednávce mohla nejdřív připojit událost nákupu z prohlížeče. Její IP adresa, user agent a URL stránky pak odejdou se serverovou událostí spolu s
fbpafbculoženými pro návštěvníka. - Informace o zákazníkovi z objednávky. E-mail, telefon, jméno a adresa se normalizují a hashují pomocí SHA-256. ID zákazníka v obchodě a ID návštěvníka ROASaurus se odesílají zahashované jako
external_id. - Události, které Meta nedokáže spárovat, se přeskočí. Událost bez
fbc,fbp, e-mailu, telefonu nebo IP adresy se neodešle.
Event log ukazuje každé serverové doručení s požadavkem a odpovědí Meta. Pokud se vaše marže mezi produkty hodně liší, můžete ke každému nákupu odeslat i hodnotu zisku: jak na to, vysvětluje náš průvodce optimalizací hodnoty v Meta na zisk. Celou cestu dat od kliknutí k objednávce najdete v části server-side tracking.
Zdroje
- 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