Pomiar konwersji z ChatGPT Ads: pixel oaiq, Conversions API i deduplikacja

Autor: |Baza wiedzy o AI w marketingu
Czas czytania: 18 min
Publikacja:

Pomiar konwersji z ChatGPT Ads to zbieranie zdarzeń, które użytkownik wykonuje na stronie po kliknięciu reklamy w ChatGPT, i przesyłanie ich do OpenAI. Odbywa się trzema drogami raportującymi do jednego Pixel ID: przeglądarkowym pikselem oaiq, tagiem obrazkowym bez JavaScriptu oraz serwerowym Conversions API. OpenAI składa te źródła w jeden strumień i usuwa duplikaty na podstawie Pixel ID, nazwy zdarzenia oraz wspólnego identyfikatora zdarzenia.

Reklamy w ChatGPT weszły do Polski szybciej, niż większość rynku zdążyła przygotować stronę na ich pomiar. Widzę to po pytaniach, które dostaję: prawie wszystkie dotyczą stawek i formatów, prawie żadne pomiaru. To odwrócona kolejność. Przez lata audytowania kont Google Ads nauczyłem się, że kanał bez działającego pomiaru nie jest kanałem testowym, tylko wydatkiem bez informacji zwrotnej - i w nowej platformie reklamowej, gdzie nikt jeszcze nie zna benchmarków, ten problem jest dwa razy dotkliwszy.

Skrót artykułu
Co warto wiedzieć

Najważniejsze zasady pomiaru konwersji w ChatGPT Ads, zebrane z dokumentacji OpenAI i z własnego wdrożenia pixela.

  • Pixel ChatGPT Ads nazywa się oaiq i nie wysyła samodzielnie żadnego zdarzenia

    SDK oaiq kolejkuje wywołania, ale nie generuje automatycznego page view. Każde zdarzenie konwersji odpalasz ręcznie, dokładnie w tym miejscu, w którym akcja faktycznie zachodzi.

  • Dokumentacja OpenAI wymienia trzynaście nazw zdarzeń z zamkniętej listy

    Nazwy spoza listy są odrzucane, a każde z 13 zdarzeń wymaga pola type dopasowanego do swojej nazwy. Dwa zdarzenia mobilne, app_installed i app_opened, są dostępne wyłącznie przez Conversions API.

  • Deduplikacja w ChatGPT Ads opiera się na trzech polach naraz

    OpenAI porównuje 3 pola: Pixel ID, nazwę zdarzenia oraz identyfikator zdarzenia, a pod uwagę bierze wiadomość, która dotarła pierwsza. Brak wspólnego identyfikatora oznacza podwójne liczenie tej samej konwersji.

  • Wartość konwersji wysyłasz w jednostce pomocniczej, nie w złotówkach

    Kwota 129,99 zł to w polu amount wartość 12999, zgodnie ze standardem ISO 4217. Wysłanie liczby 129.99 zaniża raportowany przychód kampanii ChatGPT Ads o dwa rzędy wielkości.

  • Na własnej stronie rozdzieliłem konfigurację pixela od zdarzeń na dwa snippety

    Z mojej praktyki wdrożeniowej: konfiguracja oaiq ładuje się na całej witrynie z priorytetem 1, a zdarzenie kontaktowe tylko na jednej podstronie z priorytetem 2. Ta kolejność gwarantuje, że stub istnieje, zanim poleci pierwsze wywołanie measure.

Jak ChatGPT Ads mierzy konwersje na Twojej stronie?

ChatGPT Ads mierzy konwersje przez zdarzenia wysyłane z Twojej strony do OpenAI trzema niezależnymi drogami, które raportują do tego samego Pixel ID: pikselem oaiq w przeglądarce, tagiem obrazkowym bez JavaScriptu i serwerowym Conversions API. Kliknięcie w reklamę nie wystarcza - platforma widzi wyłącznie te zdarzenia, które sam jej wyślesz.

Ta architektura jest bliźniaczo podobna do rozwiązania, które reklamodawcy znają z Meta: warstwa przeglądarkowa plus warstwa serwerowa plus mechanizm scalający. Jeśli masz już wdrożony piksel Meta, znasz 80 procent logiki, której potrzebujesz tutaj. Różnice siedzą w szczegółach: w nazwach zdarzeń, w formacie kwoty i w tym, gdzie umieszcza się identyfikator zdarzenia.

Warto rozumieć, po co OpenAI w ogóle zbiera te dane. Trzeci cel kampanii, rozliczany jako oCPC, licytuje pod konkretne zdarzenie konwersji, a nie pod kliknięcie. Bez działającego pomiaru zostajesz z dwoma celami: zasięgowym i klikowym. Mechanikę samych celów i aukcji opisuję szerzej w artykule o OpenAI Ads Manager.

  • Pixel oaiq: skrypt JavaScript w przeglądarce, najszybszy do wdrożenia, najbardziej narażony na blokady i ograniczenia przeglądarek.
  • Tag obrazkowy: zdarzenie wysyłane bez JavaScriptu, rozwiązanie dla stron i systemów, w których nie da się osadzić skryptu.
  • Conversions API: zdarzenia wysyłane z Twojego serwera prosto do OpenAI, odporne na blokery i na zamknięcie karty przeglądarki.
!

Czy wiesz, że…

OpenAI rekomenduje wdrożenie hybrydowe: pixel razem z Conversions API, a nie wybór jednego z nich. Powód jest praktyczny: przeglądarka gubi część zdarzeń przez blokery i limity plików cookie, a serwer nie widzi wszystkiego, co dzieje się w interfejsie użytkownika.

Jak wdrożyć pixel oaiq na stronie?

Pixel oaiq wdrażasz przez wklejenie skryptu SDK w sekcji head możliwie wysoko, zainicjowanie go wywołaniem oaiq("init", {pixelId}) i odpalanie zdarzeń wywołaniem oaiq("measure", nazwa, dane). Dokumentacja OpenAI wskazuje wprost, żeby umieścić skrypt blisko początku sekcji head, tak aby wczesne konwersje nie przepadły w trakcie ładowania reszty strony.

Adres SDK to https://bzrcdn.openai.com/sdk/oaiq.min.js, a cała komunikacja idzie przez jedną globalną funkcję oaiq. Stub tej funkcji kolejkuje wywołania, więc zdarzenie może stać w kodzie HTML jeszcze zanim SDK się załaduje. Jest jednak jeden warunek twardy: wywołanie measure musi być późniejsze niż wywołanie init. Odwrócenie tej kolejności daje na froncie błąd o nieistniejącej funkcji i ciszę w panelu.

Anatomia wdrożenia
Z czego składa się poprawnie wdrożony pixel oaiq

Cztery elementy, których brak jest najczęstszą przyczyną pustego panelu konwersji w ChatGPT Ads.

PIXEL OAIQJedna globalna funkcja, jeden Pixel ID
Skrypt SDK w sekcji head

Ładowany z adresu bzrcdn.openai.com możliwie wysoko w head, żeby zdarzenia z pierwszych sekund wizyty nie przepadły.

Wywołanie init z Pixel ID

Identyfikator pixela pochodzi z Ads Managera i jest jedynym polem wymaganym przy inicjalizacji.

Wywołanie measure w miejscu akcji

Zdarzenie odpalane tam, gdzie konwersja faktycznie zachodzi, z polem type dopasowanym do nazwy zdarzenia.

Identyfikator zdarzenia w opcjach

Pole event_id przekazywane w czwartym argumencie wywołania, bez którego deduplikacja z Conversions API nie zadziała.

W mojej codziennej praktyce widzę, że najwięcej problemów bierze się nie z samego kodu, tylko z miejsca jego osadzenia. Kiedy wdrażałem pixel OpenAI na własnej stronie, w pierwszym tygodniu po otwarciu panelu dla polskich firm, rozbiłem go świadomie na dwa osobne snippety: konfigurację ładowaną na całej witrynie z priorytetem pierwszym i pojedyncze zdarzenie kontaktowe ładowane wyłącznie na jednej podstronie z priorytetem drugim. Oba dostały ten sam warunek wykluczający podgląd, panel administracyjny i zalogowanego użytkownika - bez tego własne wizyty zatruwają dane od pierwszego dnia.

Które zdarzenia konwersji obsługuje pixel OpenAI?

Pixel OpenAI obsługuje zamkniętą listę trzynastu nazw zdarzeń, z których każde wymaga pola type dopasowanego do swojej nazwy. Nazwa spoza listy jest odrzucana - nie ma tu dowolności znanej z GA4, gdzie własne nazwy zdarzeń są normą. Pełne zestawienie publikują wspierane zdarzenia w dokumentacji OpenAI.

ZdarzenieWymagany typeDozwolone polaTypowe zastosowanie
order_createdcontentsamount, currency, contentsZłożone zamówienie w sklepie
checkout_startedcontentsamount, currency, contentsWejście do koszyka lub kasy
items_addedcontentsamount, currency, contentsDodanie produktu do koszyka
contents_viewedcontentsamount, currency, contentsWyświetlenie karty produktu lub oferty
page_viewedcontentsamount, currency, contentsWejście na wskazaną podstronę
lead_createdcustomer_actionamount, currencyWysłany formularz kontaktowy
registration_completedcustomer_actionamount, currencyZałożone konto użytkownika
appointment_scheduledcustomer_actionamount, currencyUmówiona wizyta lub rozmowa
subscription_createdplan_enrollmentplan_id, amount, currency, contentsWykupiony abonament
trial_startedplan_enrollmentplan_id, amount, currency, contentsUruchomiony okres próbny
customcustomplan_id, amount, currency, contentsZdarzenie spoza listy, z własną nazwą
app_installedcustomer_actionamount, currencyInstalacja aplikacji, tylko Conversions API
app_openedcustomer_actionamount, currencyOtwarcie aplikacji, tylko Conversions API

Dwa ostatnie wiersze tej tabeli to pułapka, w którą łatwo wpaść przy planowaniu pomiaru. Zdarzenia mobilne są dostępne wyłącznie przez Conversions API, z parametrem action_source ustawionym na mobile_app. Jeśli Twój lejek kończy się w aplikacji, przeglądarkowy pixel nie domknie go w żadnej konfiguracji.

Zdarzenie custom działa jako zawór bezpieczeństwa dla nietypowych konwersji, ale wymaga własnej nazwy w formacie zbliżonym do sluga: małe litery, cyfry, podkreślnik i myślnik. Rekomenduję podejście, w którym po custom sięgasz dopiero wtedy, gdy żadna z jedenastu nazw przeglądarkowych nie opisuje realnie tego, co się dzieje. Rozsypanie pomiaru na własne nazwy odbiera Ci porównywalność z resztą rynku, a przy nowej platformie porównywalność jest jedyną mapą, jaką masz.

Jak przekazać wartość konwersji i walutę?

Wartość konwersji przekazujesz w polu amount jako liczbę całkowitą w jednostce pomocniczej danej waluty, a nie w złotówkach z przecinkiem. Zamówienie za 129,99 zł to wartość 12999 i waluta PLN, zgodnie ze standardem ISO 4217. Waluta jest obowiązkowa zawsze, gdy podajesz kwotę.

Ta jedna zasada odpowiada za najbardziej kosztowny błąd wdrożeniowy, jaki widuję w nowych integracjach reklamowych. Przesłanie wartości 129.99 zamiast 12999 nie generuje żadnego błędu - zdarzenie przechodzi, konwersja się liczy, tylko raportowany przychód kampanii jest sto razy mniejszy niż faktyczny. Kampania z celem konwersyjnym zaczyna wtedy optymalizować się pod dane, które nie mają związku z Twoim biznesem.

Konfiguracja zdarzenia
Jak wygląda poprawne zdarzenie zakupu w pixelu oaiq

Cztery pola decydujące o tym, czy konwersja dojdzie w komplecie i czy da się ją zdeduplikować z serwerem.

oaiq - zdarzenie order_created
1nazwa zdarzenia = „order_created”
2type = „contents” <- musi pasować do nazwy
3amount = 12999 <- grosze, nie złotówki
4currency = „PLN”
5event_id = „order_84213” <- w opcjach, nie w danych
6amount = 0 <- pomiń pole zamiast wysyłać zero

Objaśnienie: identyfikator zdarzenia trafia do osobnego obiektu opcji, przekazywanego jako czwarty argument wywołania measure. To najczęściej mylone miejsce w całej integracji: wsadzony do danych zdarzenia identyfikator zostanie zignorowany, a deduplikacja przestanie działać.

Kiedy dołożyć Conversions API do pixela oaiq?

Conversions API dokładasz wtedy, gdy konwersja powstaje poza przeglądarką albo gdy warstwa przeglądarkowa gubi zbyt dużo zdarzeń: przy płatnościach potwierdzanych webhookiem, przy zamówieniach telefonicznych, przy leadach kwalifikowanych dopiero w CRM oraz przy każdym lejku kończącym się w aplikacji mobilnej. Zdarzenia wysyłasz wtedy z własnego serwera na endpoint OpenAI, uwierzytelniając się kluczem API z Ads Managera.

Techniczne wymagania są konkretne i warto je znać przed rozmową z deweloperem. Każde zdarzenie musi mieć własny identyfikator, typ, znacznik czasu w milisekundach oraz obiekt z danymi. Specyfikacja Conversions API odrzuca zdarzenia ze znacznikiem czasu starszym niż siedem dni, co w praktyce wyznacza maksymalne opóźnienie importu z systemu sprzedażowego.

  1. Wygeneruj klucz API w Ads Managerze i przechowuj go po stronie serwera, nigdy w kodzie strony.
  2. Ustaw action_source zgodnie z rzeczywistością: web, mobile_app, offline, physical_store, phone_call, email albo other.
  3. Zahaszuj dane osobowe algorytmem SHA-256 - adresy e-mail, numery telefonów, imiona i nazwiska oraz identyfikatory zewnętrzne muszą trafić do OpenAI wyłącznie w postaci skrótu.
  4. Zostaw dane geograficzne bez haszowania - miasto, region, kod pocztowy i kraj wysyłasz w postaci surowej.
  5. Użyj tego samego identyfikatora zdarzenia co w pixelu, jeśli ta sama konwersja jest raportowana dwiema drogami.

Logika jest tu bliźniacza do tej, którą znasz z Meta - jeśli masz już wdrożony serwerowy pomiar konwersji, integracja z OpenAI jest raczej portem istniejącej architektury niż projektem od zera. Uważam, że to najmocniejszy argument za tym, żeby nie budować pomiaru ChatGPT Ads jako osobnej wysepki, tylko dołożyć go do warstwy, która już u Ciebie działa.

!

Czy wiesz, że…

Conversions API OpenAI przyjmuje zdarzenia ze znacznikiem czasu nie starszym niż siedem dni. Import konwersji z CRM raz w miesiącu odpada - harmonogram musi być co najmniej tygodniowy, a bezpieczniej dobowy.

Jak działa deduplikacja zdarzeń w ChatGPT Ads?

Deduplikacja w ChatGPT Ads polega na porównaniu trzech pól naraz: Pixel ID, nazwy zdarzenia i identyfikatora zdarzenia. Gdy ta sama konwersja dotrze pikselem i Conversions API, OpenAI bierze pod uwagę wiadomość, która przyszła pierwsza, i odrzuca drugą. Warunkiem jest identyczny identyfikator po obu stronach.

Brak wspólnego identyfikatora nie powoduje błędu ani ostrzeżenia. Powoduje coś gorszego: dwukrotne policzenie tej samej sprzedaży, zawyżony ROAS i kampanię, która skaluje się na fikcyjnych wynikach. To dokładnie ten sam mechanizm, przez który różne liczby konwersji pojawiają się między systemami reklamowymi - z tą różnicą, że tutaj rozjazd dzieje się wewnątrz jednej platformy.

Trzy drogi, jedno konto
Co leży na przecięciu trzech dróg pomiaru

Każda droga raportuje do tego samego Pixel ID, a scalenie ich w jedną konwersję zależy od jednego pola.

Pixel oaiq
Conversions API
Tag obrazkowy
Jeden
Pixel ID

Przecięcie: gdy wszystkie trzy drogi wysyłają zdarzenie z tym samym Pixel ID, tą samą nazwą i tym samym identyfikatorem, OpenAI liczy jedną konwersję zamiast trzech. Bez wspólnego identyfikatora przecięcie znika i te same sprzedaże liczą się wielokrotnie.

„Podwójnie policzona konwersja jest groźniejsza od konwersji zgubionej. Zgubiona zaniża wyniki i kampania sama się wyhamuje. Zdublowana zawyża je i każe algorytmowi dolewać budżetu tam, gdzie nic się nie dzieje.” - własna obserwacja z audytów kont reklamowych.

Pixel, tag obrazkowy czy Conversions API?

Wybór między trzema drogami pomiaru zależy od tego, gdzie powstaje konwersja i jakimi zasobami dysponujesz. Pixel oaiq jest domyślnym punktem startu, Conversions API warstwą uzupełniającą dla zdarzeń spoza przeglądarki, a tag obrazkowy rozwiązaniem awaryjnym tam, gdzie JavaScript nie wchodzi w grę.

KryteriumPixel oaiqTag obrazkowyConversions API
Wymaga JavaScriptuTakNieNie
Czas wdrożeniaOk. 1 godz. przy prostej stronieOk. 1 godz., bez deweloperaOd kilku dni, wymaga backendu
Odporność na blokeryNiskaŚredniaWysoka
Zdarzenia mobilne w aplikacjiNiedostępneNiedostępneDostępne z action_source mobile_app
Dane osoboweNieprzesyłaneNieprzesyłaneWyłącznie po haszowaniu SHA-256
Rola docelowaWarstwa podstawowaAwaryjna, gdy brak JSWarstwa uzupełniająca

Mój werdykt jest warunkowy i celowo wąski. Przy pierwszym teście ChatGPT Ads z budżetem na kilkadziesiąt kliknięć dziennie sam pixel wystarczy, bo różnica w kompletności danych nie zmieni żadnej decyzji, którą podejmiesz w tym tygodniu. Powyżej kilkuset kliknięć miesięcznie albo przy lejku, który domyka się poza stroną, brak Conversions API zaczyna kosztować realne pieniądze - bo kampania z celem konwersyjnym optymalizuje się wtedy pod niepełny obraz. To dokładnie ta sama logika, którą stosuję przy śledzeniu konwersji w Google Ads: warstwa serwerowa wchodzi wtedy, gdy skala uzasadnia jej koszt, nie wcześniej.

Jak sprawdzić, że pixel OpenAI działa?

Poprawność wdrożenia sprawdzasz w trzech krokach: włączasz tryb diagnostyczny przy inicjalizacji pixela, obserwujesz konsolę przeglądarki podczas realnego przejścia ścieżki konwersji, a następnie potwierdzasz zdarzenie w panelu Ads Managera. Dopiero trzeci krok jest dowodem - dwa pierwsze mówią tylko, że kod się wykonał.

Test ma być wykonany na czystej sesji, bez zalogowania do panelu administracyjnego strony. Wielokrotnie obserwowałem sytuację, w której wdrożenie wyglądało poprawnie w konsoli, a panel pozostawał pusty, bo cała weryfikacja odbywała się na koncie wykluczonym z pomiaru przez warunek w kodzie. Zostawiam tryb diagnostyczny włączony do momentu, w którym pierwsze zdarzenie pojawi się po stronie platformy, i dopiero wtedy go wyłączam.

  • Przejdź ścieżkę do końca: zdarzenie lead_created zliczy się dopiero po faktycznym wysłaniu formularza, a nie po jego wyświetleniu.
  • Sprawdź kolejność wywołań: w źródle strony init musi wystąpić przed measure.
  • Zweryfikuj wartość i walutę: kwota w podglądzie ma być liczbą całkowitą, a waluta trzyliterowym kodem.
  • Potwierdź jedno zdarzenie na jedną akcję: podwójne wywołanie tego samego zdarzenia na jednej stronie to najczęstszy skutek wklejenia kodu w dwóch miejscach naraz.
!

Czy wiesz, że…

Pixel oaiq nie wysyła samodzielnie żadnego page view. Jeśli chcesz mierzyć wyświetlenia podstron, musisz odpalić zdarzenie page_viewed ręcznie - brak tego kroku bywa mylony z niedziałającym wdrożeniem.

Dlaczego zdarzenia nie docierają do Ads Managera?

Najczęstsze przyczyny pustego panelu konwersji to zła kolejność wywołań, nazwa zdarzenia spoza listy, brak pola type oraz test wykonany na sesji wykluczonej z pomiaru. Wszystkie cztery mają wspólną cechę: nie generują widocznego komunikatu o błędzie, więc wdrożenie wygląda na skończone.

Diagnostyka wdrożenia
Cztery sygnały, które zatrzymują pomiar ChatGPT Ads

Uporządkowane od najłatwiejszego do przeoczenia po najbardziej kosztowny w skutkach.

Panel milczy, bo test biegnie na wykluczonej sesji

Warunek wyłączający pomiar dla zalogowanego użytkownika i podglądu działa też na Ciebie. Sprawdzaj wdrożenie w oknie prywatnym, bez aktywnej sesji administratora.

Wywołanie measure poprzedza inicjalizację pixela oaiq

Odwrócona kolejność snippetów daje w konsoli błąd o nieistniejącej funkcji. Konfiguracja musi ładować się z wyższym priorytetem niż jakiekolwiek zdarzenie.

Nazwa zdarzenia spoza listy albo brak pola type

SDK odrzuca nazwy, których nie ma w dokumentacji, oraz zdarzenia bez wymaganego typu danych. Nazwy własne przechodzą wyłącznie przez zdarzenie custom.

Konwersje liczą się podwójnie przez brak identyfikatora zdarzenia

Pixel i Conversions API bez wspólnego pola event_id raportują dwie osobne konwersje z jednej sprzedaży. Panel pokazuje wtedy wyniki lepsze od rzeczywistych, co jest gorsze od braku danych.

Jestem przekonany, że najdroższym błędem na tym etapie rynku nie jest złe ustawienie stawki, tylko uruchomienie kampanii przed uruchomieniem pomiaru. Stawkę poprawisz w pięć minut. Tygodnia bez danych nie odzyskasz, bo platforma nie odtworzy wstecz konwersji, których nikt jej nie wysłał.

Jak zmierzyć ChatGPT Ads bez dewelopera?

Bez dewelopera realne są dwie ścieżki: wtyczka lub menedżer tagów po stronie strony oraz tag obrazkowy tam, gdzie nie da się osadzić skryptu. Obie obsłużą warstwę przeglądarkową w komplecie, czyli wszystkie jedenaście zdarzeń dostępnych z poziomu strony. Poza zasięgiem zostaje wyłącznie Conversions API, które wymaga pracy po stronie serwera.

Najprostsza droga dla małej firmy prowadzi przez Google Tag Manager, w którym pixel OpenAI osadza się jako własny tag HTML, a zdarzenia podpina pod istniejące reguły - te same, które obsługują już wysyłkę formularza czy zakup. Dostawcy narzędzi tagujących zdążyli wypuścić gotowe szablony: konfiguracja opisana przez Stape pokazuje wdrożenie zarówno pixela w kontenerze przeglądarkowym, jak i Conversions API w kontenerze serwerowym, razem ze zmienną generującą wspólny identyfikator zdarzenia.

Jeśli nie masz pewności, czy Twoja obecna warstwa tagów udźwignie kolejną platformę bez konfliktów, to jest dokładnie ten moment, w którym warto zrobić przegląd zamiast dokładać kolejny skrypt na wyczucie - napisz do mnie i przejdziemy przez to razem.

Pomiar ChatGPT Ads w sklepie a przy leadach B2B

W sklepie internetowym pomiar opiera się na zdarzeniach z rodziny contents, z wartością i walutą przy każdej transakcji. W generowaniu leadów B2B trzon stanowią zdarzenia z rodziny customer_action, w których wartość jest opcjonalna - i w których największym wyzwaniem jest nie sam pomiar, tylko przypisanie wartości kontaktowi, który zamknie się za trzy miesiące.

Ta różnica ma konsekwencję praktyczną, którą łatwo przeoczyć. W e-commerce pełny obraz daje już warstwa przeglądarkowa, bo konwersja zachodzi na stronie i natychmiast. W B2B warstwa przeglądarkowa rejestruje wyłącznie moment wysłania formularza, a informacja o tym, czy ten lead był cokolwiek wart, powstaje później i wyłącznie w CRM. Bez Conversions API kampania B2B optymalizuje się pod liczbę formularzy, a nie pod jakość kontaktów.

  • Sklep internetowy: contents_viewed, items_added, checkout_startedorder_created z wartością w groszach.
  • Usługi lokalne: appointment_scheduled jako konwersja główna, lead_created jako wspierająca.
  • SaaS: trial_startedsubscription_created z polem plan_id rozróżniającym pakiety.
  • Lead generation B2B: lead_created z przeglądarki plus zdarzenie z CRM przez Conversions API po kwalifikacji kontaktu.

W pracy z moimi klientami zawsze stosuję zasadę, że liczba mierzonych zdarzeń na starcie ma być możliwie mała. Jedno zdarzenie główne, maksymalnie dwa wspierające. Rozbudowany pomiar dokładany później, na działającym fundamencie, jest tańszy niż debugowanie ośmiu zdarzeń naraz w tygodniu, w którym kampania już wydaje budżet.

Od którego zdarzenia zacząć pomiar ChatGPT Ads

Zacznij od jednego zdarzenia, które realnie odpowiada Twojemu celowi biznesowemu, i wdroż je w komplecie: z poprawnym polem type, z wartością w jednostce pomocniczej, z walutą i z własnym identyfikatorem zdarzenia. Sklep zaczyna od order_created, firma usługowa od lead_created albo appointment_scheduled, dostawca oprogramowania od trial_started. Reszta listy poczeka.

Przestań traktować pixel jak formalność do odhaczenia przed startem kampanii. Zacznij traktować go jak zestaw definicji tego, co Twoja firma uznaje za sukces - bo dokładnie w tej roli ChatGPT Ads go używa, kiedy przełączysz kampanię na cel konwersyjny. Zła definicja daje kampanię, która skutecznie realizuje niewłaściwy cel, a to najdroższy rodzaj skuteczności.

  1. Wdroż konfigurację pixela na całej witrynie, wysoko w sekcji head, z wykluczeniem własnych sesji.
  2. Dodaj jedno zdarzenie główne dokładnie tam, gdzie konwersja faktycznie zachodzi.
  3. Przetestuj na czystej sesji i potwierdź zdarzenie w Ads Managerze, zanim uruchomisz wydatek.
  4. Dołóż Conversions API, gdy skala albo lejek poza przeglądarką zaczną tego wymagać.
  5. Ujednolić identyfikatory zdarzeń między warstwami, zanim obie zaczną raportować równolegle.

Nowe platformy reklamowe premiują tych, którzy wchodzą wcześnie z porządnymi danymi, a karzą tych, którzy wchodzą wcześnie bez nich. Reklama w ChatGPT jest dziś jednym z najciekawszych elementów tego, jak AI w marketingu przestaje być tematem konferencyjnym i staje się linią w budżecie mediowym. Warto, żeby ta linia od pierwszego dnia miała obok siebie kolumnę z wynikami.

Na czym opieram te wnioski

Źródła i dokumentacja

Cztery dokumenty, na których opiera się techniczna warstwa tego artykułu: dwie specyfikacje OpenAI oraz dwa niezależne opracowania wdrożeniowe pokazujące pomiar ChatGPT Ads od strony menedżera tagów.

developers.openai.com

Measurement Pixel - specyfikacja pixela oaiq

Oficjalny opis SDK oaiq: adres skryptu, składnia wywołań init i measure oraz miejsce, w którym przekazuje się identyfikator zdarzenia. Podstawa sekcji o wdrożeniu pixela i o przekazywaniu wartości konwersji.

OpenAI Otwórz
developers.openai.com

Conversions API - pomiar serwerowy i deduplikacja

Dokumentacja endpointu serwerowego: wymagane pola zdarzenia, limit siedmiu dni na znacznik czasu, haszowanie SHA-256 oraz reguła deduplikacji oparta na Pixel ID, nazwie zdarzenia i identyfikatorze. Źródło sekcji o Conversions API i o scalaniu zdarzeń.

OpenAI Otwórz
stape.io

ChatGPT Ads Tracking: Configuration Guide

Niezależne opracowanie pokazujące wdrożenie pixela i Conversions API przez menedżer tagów, razem ze zmienną generującą wspólny identyfikator zdarzenia. Materiał do sekcji o pomiarze bez dewelopera.

Stape Otwórz
conversiontracking.io

OpenAI ChatGPT Ads Conversion Tracking Setup

Przewodnik wdrożeniowy opisujący konfigurację pomiaru konwersji ChatGPT Ads krok po kroku, z naciskiem na weryfikację zdarzeń po stronie panelu. Uzupełnienie sekcji o sprawdzaniu poprawności pixela i o typowych błędach.

ConversionTracking.io Otwórz
Najczęściej zadawane pytania

Pytania i odpowiedzi (FAQ)

Sześć pytań okołowdrożeniowych o pomiar konwersji w ChatGPT Ads: zgody, odpowiedzialność w firmie, wiele domen, relacja z GA4 i to, co dzieje się przy zmianie wykonawcy.

Czy pixel OpenAI wymaga zgody użytkownika na stronie w Polsce?
Pixel OpenAI działa na Twojej stronie jak każde inne narzędzie marketingowe przetwarzające dane użytkownika, więc podlega tym samym regułom co pozostałe skrypty reklamowe w Twoim banerze zgód. Praktyczna konsekwencja jest taka, że pixel powinien być podpięty pod tę samą kategorię zgód marketingowych, w której masz już inne piksele reklamowe. Uruchomienie go poza mechanizmem zgody jest najczęstszym niedopatrzeniem przy szybkich wdrożeniach testowych.
Kto w firmie powinien odpowiadać za wdrożenie pixela OpenAI?
Za wdrożenie pixela OpenAI odpowiada zwykle ta sama osoba lub zespół, który utrzymuje menedżer tagów, bo warstwa przeglądarkowa to konfiguracja, a nie programowanie. Conversions API wymaga już wsparcia po stronie zespołu technicznego, ponieważ zdarzenia wychodzą z Twojego serwera i wymagają klucza API. Definicję samych konwersji powinien natomiast ustalić marketing, bo to decyzja biznesowa, a nie techniczna.
Czy jeden Pixel ID OpenAI obsłuży kilka domen i subdomen?
Jeden Pixel ID OpenAI można osadzić na wielu domenach, ale dokumentacja przewiduje też pracę z wieloma identyfikatorami pixela na jednej stronie. Rozdzielenie identyfikatorów ma sens, gdy prowadzisz osobne konta reklamowe dla różnych marek albo rynków, bo wtedy raportowanie nie miesza się w jednym panelu. Wspólny Pixel ID wybieraj tylko wtedy, gdy chcesz patrzeć na wszystkie domeny jak na jeden biznes.
Czy konwersje z ChatGPT Ads zobaczę w Google Analytics 4?
Google Analytics 4 nie zaciąga konwersji z panelu ChatGPT Ads, bo to dwa niezależne systemy pomiarowe. W GA4 zobaczysz natomiast ruch przychodzący z reklam, jeśli otagujesz adresy docelowe parametrami UTM przy tworzeniu kampanii. Liczby w obu narzędziach będą się różnić, ponieważ każde z nich stosuje własny model atrybucji i własne okna konwersji.
Czy przy małym budżecie testowym w ChatGPT Ads warto wdrażać Conversions API?
Przy małym budżecie testowym w ChatGPT Ads Conversions API zwykle nie zwraca się od razu i sam pixel wystarczy do podjęcia pierwszych decyzji. Wyjątkiem jest sytuacja, w której konwersja z definicji powstaje poza przeglądarką, czyli sprzedaż telefoniczna, płatność potwierdzana webhookiem albo lead kwalifikowany w CRM. Wtedy warstwa serwerowa nie jest ulepszeniem, tylko warunkiem jakiegokolwiek sensownego pomiaru.
Co dzieje się z pomiarem ChatGPT Ads po zmianie agencji lub dewelopera?
Pomiar ChatGPT Ads przetrwa zmianę wykonawcy tylko wtedy, gdy konto reklamowe i Pixel ID należą do Twojej firmy, a nie do agencji. Klucz API do Conversions API również powinien być wygenerowany na Twoim koncie i przechowywany po Twojej stronie. Historia konwersji zostaje przy koncie reklamowym, więc utrata dostępu do konta oznacza utratę całej bazy porównawczej do przyszłych kampanii.
Artur Smolicki
Samodzielny Specjalista Google Ads

Artur Smolicki

Od ponad 15 lat specjalizuję się w przygotowaniu, wdrożeniu i optymalizacji kampanii Google Ads. W 2024 roku uzyskałem status Google Premier Partner dla 3% najlepszych specjalistów i agencji w Polsce. Prowadzę kampanie reklamowe na 29 rynkach zagranicznych, tak dla segmentu e-commerce jak i B2B.


Potrzebujesz audytu oraz pomocy w prowadzeniu kampanii
Google Ads?

Działajmy