Jak se konverze vůbec započítá
V Ads Manageru si založíte zdroj dat a do něj posíláte události. Aby OpenAI konverzi přiřadil kampani, musí platit čtyři věci najednou: událost dorazí ze zdroje napojeného na váš reklamní účet, odpovídá konverzní události nastavené u kampaně, nastane uvnitř atribučního okna a systém ji dokáže spojit s klikem na reklamu.
Poslední bod je ten, o který se to nejčastěji láme. Událost může správně vzniknout, být přijatá — a přesto v reportu svítit nula, protože se nespáruje s klikem nebo neodpovídá nastavené konverzní události.
Dvě cesty, jak události posílat
| OpenAI Pixel | Conversions API | |
|---|---|---|
| Kde běží | V prohlížeči návštěvníka | Na vašem serveru |
| Nasazení | JavaScript snippet, lze i přes Google Tag Manager | Integrace na backend nebo e-shopovou platformu |
| Silná stránka | Detail o chování, automatické párování | Odolnost vůči blokování a nastavení prohlížeče |
| Slabina | Blokovače, souhlas, stav úložiště | Chybějící identifikátor kliku, pokud se nepředá |
Pro headless řešení, Shopify nebo nákupy dokončované na serveru platí jednoduché pravidlo: události v prohlížeči přes Pixel, události na serveru přes Conversions API.
Na serverovou integraci se hodí vědět tři věci předem. Dávka pojme až 1 000 událostí, ale když selže jedna, selže celá dávka. Časové razítko musí spadat do posledních sedmi dnů a nesmí být víc než deset minut v budoucnosti. A na rozdíl od Pixelu si API identifikátor kliku samo nezachytí — oppref mu musíte předat vy.
oppref — identifikátor kliku
Při prokliku se k adrese cílové stránky připojí parametr oppref, v podobě ?oppref=gAAAAAb123. OpenAI Pixel ho zachytí a uloží do first-party cookie, aby ho mohl přiřadit pozdějším konverzním událostem. Když posíláte konverze ze serveru, měli byste oppref předávat s nimi.
Z toho plyne konkrétní požadavek na web: oppref musí přežít přesměrování a navigaci na cílové stránce. Každý redirect, který parametry zahazuje, je přímá ztráta měřených konverzí.
Deduplikace
Když stejnou konverzi pošlete oběma cestami, musí mít v obou stejné ID události — v Pixelu event_id, v Conversions API id — a musí jít o stejné Pixel ID. Shoda se hledá podle trojice Pixel ID, název události a ID; první doručená událost vyhrává a pozdější duplicity se zahazují. U vlastních událostí se musí shodovat i custom_event_name.
Bez toho se konverze započítá dvakrát a vy budete rozpočtovat podle nafouknutého čísla. Je to nejlevnější chyba na opravu předem a jedna z nejdražších na odhalení potom.
Automatické pokročilé párování
Automatic advanced matching pomáhá spojit konverzi s reklamou tam, kde identifikátor kliku chybí. OpenAI Pixel sám rozpozná podporované údaje zákazníka z formulářů na webu, normalizuje je a zahashuje pomocí SHA-256 přímo v prohlížeči, než je připojí ke konverzní události. Nezpracované údaje se do OpenAI neposílají a vlastní implementaci Pixelu kvůli tomu měnit nemusíte.
To, že se hashuje v prohlížeči, ale neznamená, že se o právní stránku nemusíte starat. Konverzní data se smějí posílat jen tehdy, když jste návštěvníka srozumitelně informovali a máte potřebné souhlasy. Naše zpracování popisujeme v zásadách ochrany osobních údajů.
Souhlas
Pixel má na souhlas vlastní rozhraní a volá se před inicializací: oaiq("consent", false), a po udělení souhlasu oaiq("consent", true). Ve výchozím stavu je souhlas nastavený na true, dokud ho nenastavíte na false nebo dokud si Pixel nenajde uložené odmítnutí. Pro evropský web je to přesně obráceně, než potřebujete.
Události zablokované během odmítnutého souhlasu se po jeho pozdějším udělení nepřehrají. Když se Pixel inicializuje dřív než lišta souhlasu, měříte lidi, kteří souhlas nedali; při opačné chybě přijdete o konverze, které se už nikdy nedopočítají.
Serverové odesílání musí respektovat totéž rozhodnutí — tam už vám to platforma nehlídá.
Co musí povolit web
Snippet patří do <head>, co nejvýš, aby se neztratily rychlé konverze. Pokud máte Content Security Policy, musí projít tyto zdroje:
| Direktiva | Zdroj |
|---|---|
script-src | https://bzrcdn.openai.com |
connect-src | https://bzr.openai.com a https://bzrcdn.openai.com |
img-src | https://bzr.openai.com |
Kvůli Pixelu se nepřidává unsafe-inline; na inline snippet se používá nonce nebo hash. A z kódu stránky se nikdy nevolá serverové API napřímo — v prohlížeči běží Pixel, na serveru Conversions API.
Modelované konverze
Tam, kde je to dostupné, může OpenAI část jinak nepřiřazených konverzí odhadnout z agregovaných vzorců. Reportované součty tedy mohou modelované konverze obsahovat. Pro praxi to znamená jediné: číslo v Ads Manageru není totéž co seznam objednávek ve vašem systému a nemá se tak číst.
Standardní události
Taxonomie je daná a vymýšlet si vlastní názvy nemá smysl — pro oCPC lze optimalizovat jen na standardní událost. Ke každé patří jeden ze čtyř datových tvarů: contents, customer_action, plan_enrollment nebo custom.
| Událost | Tvar | Kdy ji posílat |
|---|---|---|
page_viewed | contents | Načtení důležité stránky |
contents_viewed | contents | Zobrazení konkrétního produktu nebo obsahu |
items_added | contents | Přidání do košíku nebo výběru |
checkout_started | contents | Zahájení objednávky |
order_created | contents | Dokončený nákup |
lead_created | customer_action | Odeslaná poptávka nebo žádost o kontakt |
registration_completed | customer_action | Dokončená registrace |
appointment_scheduled | customer_action | Sjednaná schůzka, demo nebo konzultace |
trial_started | plan_enrollment | Zahájená zkušební verze |
subscription_created | plan_enrollment | Zahájené placené předplatné |
app_installed, app_opened | customer_action | Jen přes Conversions API |
custom | custom | Jen když žádná standardní událost nesedí |
Peněžní hodnoty se posílají jako celá čísla v setinách měny: 129,99 Kč je 12999 s currency: "CZK". Poslat desetinné číslo je nejčastější chyba v implementaci a projeví se až jako nesmyslný ROAS.
Strategie zůstává stejná: jedna hlavní konverze a k ní dva až tři mezikroky. E-shop order_created s hodnotou, k tomu items_added a checkout_started. SaaS trial_started nebo subscription_created, k tomu registration_completed. B2B služby lead_created a appointment_scheduled.
Postup nasazení
- Zdroj dat. Založit v Ads Manageru a poznamenat si ID pixelu.
- Pixel. Nasadit na všechny relevantní stránky, ověřit inicializaci se správným ID a projít web v debug režimu.
- Události. Vybrat jednu hlavní konverzi a dva až tři mezikroky. U standardních událostí musí typ přesně sedět; u vlastních musí přesně sedět i název — shodný zobrazovaný název nestačí.
- Server. Doplnit Conversions API se shodným ID události a předávaným oppref.
- Redirecty. Ověřit, že oppref i UTM parametry přežijí celou cestu na cílovou stránku.
- CRM. Přenést zdroj, kampaň a vstupní stránku k záznamu, aby šlo hlásit kvalitu leadu zpět.
- Kontrola. Testovací průchod a porovnání čísel mezi Ads Managerem, analytikou a CRM.
Konverzní událost připojte ke kampani dřív, než na ni pustíte provoz. Když nastavení opravíte později, historické události se nedoplní zpětně.
Proč se čísla nikdy neshodnou
Ads Manager, vaše analytika a ostatní reklamní platformy budou hlásit jiné součty. Důvody jsou známé: jiné atribuční metody a okna, jiné časové zóny a hranice dnů, jiné chování při deduplikaci, vliv souhlasu a blokování v prohlížeči, konfigurace konverzních událostí a modelované konverze. Rozdíl sám o sobě neznamená chybu.
Praktický dopad: vyberte si jeden zdroj pravdy pro obchodní rozhodnutí — obvykle váš vlastní systém — a Ads Manager používejte k tomu, k čemu slouží, tedy k řízení kampaně. A počítejte s tím, že přiřazené konverze se v reportech objeví se zpožděním 24–48 hodin.