Ready2GEO ChatGPT-advertenties

ChatGPT Ads-pixel en Conversions API: de conversiemeting installeren

Laatst bijgewerkt: 24 augustus 2026, geverifieerd aan de hand van de officiële documentatie van OpenAI. De hier genoemde namen van events en parameters komen uit de ontwikkelaarsdocumentatie van OpenAI; ze kunnen tijdens de bèta nog wijzigen.

Zonder conversiemeting blijft een ChatGPT Ads-campagne blind: je weet wat je uitgeeft, niet wat je ervoor terugkrijgt. En vooral: je kunt de optimalisatie op conversie niet inschakelen. Deze pagina behandelt de twee officiële methoden, de browserpixel en de Conversions API aan serverzijde, en de manier om ze naast elkaar te laten bestaan. Het algemene kader staat in onze gids ChatGPT Ads.

9 min. leestijd
J Josh SEO- & GEO-expert bij Ready2GEO

AI-zoekmachines die op deze pagina aan bod komen

2 officiële meetbronnen: de JavaScript-pixel en de Conversions API aan serverzijde

Waarom meten een voorwaarde is, geen optie

Drie redenen, waarvan één blokkerend:

  • Blokkerend: de optimalisatie op conversie (oCPC) vereist dat de meting al is ingesteld, met de JavaScript-pixel, de Conversions API, of beide. Zonder signaal heeft het systeem niets om op te optimaliseren.
  • De rapportage van Ads Manager bevat een kolom conversies die leeg blijft als er niets is aangesloten.
  • De berekening van je kosten per acquisitie hangt volledig van die data af: zonder die data stuur je op CPC, dat wil zeggen op uitgave, niet op resultaat.

Het algemene principe dat OpenAI hanteert is eenvoudig: je maakt een databron (data source) aan in Ads Manager en stuurt er vervolgens conversie-events naartoe via de pixel, de API, of beide.

Pixel of Conversions API: wat kies je?

JavaScript-pixelConversions API
Waar het draaitIn de browser van de bezoekerUitsluitend op jouw server
ImplementatieEén script in de head plaatsenOntwikkeling aan de back-endzijde
RobuustheidGevoelig voor blockers en browserbeperkingenOpenAI presenteert die als een betrouwbaardere bron dan de pixel alleen
Aanbeveling van OpenAIStartpuntGebruiken waar mogelijk, voor nauwkeuriger data

Het pragmatische antwoord is niet het een of het ander, maar beide, met deduplicatie. De pixel zet je in een uur op en houdt de campagnes meteen levend; de API sluit je daarna aan en die maakt de meting duurzaam betrouwbaar.

De meetpixel installeren

De ChatGPT Ads-meetpixel is een browser-SDK bedoeld om de events op je site te meten die aan advertenties binnen ChatGPT toe te schrijven zijn. Het script laadt asynchroon vanaf https://bzrcdn.openai.com/sdk/oaiq.min.js, te plaatsen in de sectie <head>, en initialiseert vervolgens met jouw pixel-id:

oaiq("init", { pixelId: "JOUW-PIXEL-ID" });

De parameter pixelId is verplicht en wordt aangemaakt in Ads Manager. Een optionele parameter debug schrijft de activiteit van de SDK weg naar de browserconsole, wat nuttig is tijdens de testfase.

Alle meting verloopt daarna via één enkel commando: oaiq("measure", eventNaam, eventData, opties).

De standaard events, de aangepaste events en hun beperkingen

Elk standaard event verwacht een dataobject waarvan het veld type moet overeenkomen. De ontwikkelaarsdocumentatie van OpenAI groepeert ze als volgt:

FamilieEventsVerwacht veld type
Commerceorder_created, items_added, checkout_startedcontents
Contentpage_viewed, contents_viewedcontents
Lead en inschrijvinglead_created, registration_completed, appointment_scheduledcustomer_action
Abonnementsubscription_created, trial_startedplan_enrollment

Voor de events van het type contents omvatten de gedocumenteerde velden onder meer amount, currency en een array contents met entries die id, name, content_type en quantity bevatten. Events van het type plan_enrollment verwachten een plan_id. De documentatie geeft aan gehele getallen te gebruiken voor amount en quantity.

Wanneer geen enkel standaard event past, declareer je een aangepast event met een derde argument en een optieobject:

oaiq("measure", "custom", { type: "custom" }, { custom_event_name: "quote_requested" })

De namen van aangepaste events moeten aan precieze regels voldoen: 1 tot 64 tekens, uitsluitend letters, cijfers, underscores en koppeltekens, en beginnen en eindigen met een alfanumeriek teken.

Let op een structurerende beperking: een aangepast event kan niet als oCPC-optimalisatiedoel dienen. Moet jouw bedrijfsconversie de optimalisatie aansturen, dan moet je die als standaard event doorgeven.

De Conversions API aan serverzijde aansluiten

De API gebruik je uitsluitend vanaf je server. De gedocumenteerde implementatiepunten:

  • Je maakt een webconversiebron en het bijbehorende Pixel ID aan via het endpoint POST /conversions/pixels.
  • Je genereert een sleutel waarmee events aan serverzijde verstuurd kunnen worden voor het huidige advertentieaccount.
  • Die sleutel moet bewaard worden in een secrets manager aan serverzijde. De documentatie is categorisch: nooit in browsercode plaatsen, nooit in omgevingsvariabelen die aan de clientzijde zichtbaar zijn, nooit in logbestanden en nooit in een coderepository.
  • De API accepteert batches tot 1.000 events. Cruciaal punt voor je foutafhandeling: als één enkel event uit de batch mislukt, mislukt de hele batch.

Die laatste regel verdient het om al bij het ontwerp meegenomen te worden: een batch die in zijn geheel geweigerd wordt door één verkeerd opgemaakt veld op één bestelling, kan 999 geldige conversies uit je rapportage laten verdwijnen.

Pixel en API dedupliceren: de regel die je niet mag missen

Stuur je dezelfde conversie zowel vanuit de pixel als vanuit de Conversions API, dan moet je dat aan het systeem melden, anders tel je die twee keer. De gedocumenteerde methode:

  • Dezelfde waarde hergebruiken als id aan de API-zijde en als event_id aan de pixelzijde.
  • Beide events versturen met hetzelfde Pixel ID.
  • Voor aangepaste events aan beide kanten dezelfde custom_event_name gebruiken.

Aan de pixelzijde ziet dat er zo uit: oaiq("measure", "order_created", {...}, { event_id: "order_12345" }). De matching steunt op het Pixel ID, de naam van het event en de event_id; bij een aangepast event vervangt de custom_event_name de naam van het event in die logica.

In de praktijk: gebruik je bestel- of lead-id als deduplicatiesleutel, dat is de enige waarde die van nature aan beide kanten beschikbaar is.

oppref: behouden tot aan de conversie, niet alleen vastleggen

De pixel legt oppref vast, de klikreferentie van OpenAI, en bewaart die in een first-party cookie (__oppref). Het vastleggen ervan documenteren is niet genoeg: de officiële documentatie benadrukt een punt dat veel implementaties missen, oppref moet behouden blijven doorheen redirects en navigatie tot aan de pagina waar de conversie daadwerkelijk gemeten wordt. Een betaalstraat die via een apart betaaldomein loopt, een redirect na een formulier, of een winkelwagen die van domein wisselt, verliezen het cookie onderweg als er niets is voorzien om het mee te laten reizen.

Tweede punt dat vaak over het hoofd wordt gezien: de Conversions API legt oppref niet voor je vast, in tegenstelling tot de pixel. Roep je de API server-side aan, dan is het aan jouw code om de waarde van oppref op te halen (doorgaans door de pixel in een cookie gezet of als URL-parameter meegegeven) en die, wanneer beschikbaar, expliciet in de aanroep op te nemen. Zonder deze stap verliest een event dat alleen via de API wordt verstuurd de link met de advertentieklik die eraan voorafging.

De door OpenAI aanbevolen architectuur bestaat uit drie onderdelen: de pixel op elke pagina om oppref en de lichte events vast te leggen, de Conversions API voor waardevolle events die vanuit je back-end worden verstuurd (daar waar je de bestelling hebt, en waar niets de aanroep kan blokkeren), en beide kanalen die dezelfde conversie met dezelfde event_id versturen.

Automatische advanced matching

Automatische advanced matching (AAM) dient om conversies aan je advertenties te koppelen wanneer geen klik-identificator beschikbaar is. De pixel detecteert automatisch de herkenbare klantgegevens in de formulieren en andere bronnen op je site, normaliseert die en hasht ze met SHA-256 rechtstreeks in de browser. De documentatie stelt uitdrukkelijk dat er geen ruwe data wordt doorgestuurd.

Je kunt ook zelf gehashte identificatoren meegeven in het object user bij de initialisatie: email_sha256, phone_number_sha256, external_id_sha256, first_name_sha256, last_name_sha256, evenals de niet-gehashte velden country, city, region en postal_code.

Deze functionaliteit raakt aan persoonsgegevens: de activering ervan moet afgestemd worden met je functionaris voor gegevensbescherming, zeker in Europa.

Toestemming, AVG en het aansturen van de pixel

De SDK biedt een toestemmingscommando aan, dat je vóór de initialisatie moet aanroepen om de meting te blokkeren zolang de gebruiker niet heeft toegestemd:

oaiq("consent", false);, dan oaiq("init", { pixelId: "..." });, dan oaiq("consent", true); zodra de toestemming is verkregen.

Twee punten om te onthouden. Ten eerste: de toestemming staat standaard op true, tenzij die expliciet op false is gezet of er een weigering is geregistreerd. Op een Europese site moet je dus expliciet oaiq("consent", false) vooraf aanroepen in plaats van op het standaardgedrag te rekenen. Ten tweede: staat de waarde op false, dan worden de meet-events niet verstuurd.

Een parameter opt_out maakt het bovendien mogelijk om een event uit te sluiten van personalisatie op gebruikersniveau; de standaardwaarde is false. De SDK beheert ook een privacyvriendelijke identificator, oppref, die uit de URL wordt opgehaald en in een cookie __oppref wordt bewaard.

Context ter herinnering: gepersonaliseerde advertenties zijn bij de lancering niet beschikbaar in de Europese Economische Ruimte en in Zwitserland. Dat ontslaat je er geenszins van de toestemming voor de meting zelf te regelen.

Content Security Policy: de domeinen die je moet toestaan

De meest voorkomende oorzaak van een stille storing op sites met een strikte CSP: de SDK wordt geblokkeerd nog voor die zich kan initialiseren. De gedocumenteerde directives:

DirectiveToe te stane bronRol
script-srchttps://bzrcdn.openai.comLaden van de SDK
connect-srchttps://bzr.openai.com en https://bzrcdn.openai.comVersturen en ophalen van de events
img-srchttps://bzr.openai.comTerugval via een afbeeldingsverzoek

Meldt de pixel niets terwijl de code correct staat, open dan de console met de parameter debug ingeschakeld: een CSP-fout verschijnt daar meteen.

Wat de pixel niet kan

Een expliciete beperking, om te kennen voordat je je meetplan opstelt: de meetpixel ondersteunt de events app_installed en app_opened niet. Die events moeten aan serverzijde verstuurd worden, via de Conversions API.

OpenAI documenteert daarnaast integraties met meetpartners, waaronder mobile measurement partners (MMP), voor adverteerders bij wie de conversie in een app plaatsvindt.

Nog een aandachtspunt: het gebruik van meerdere Pixel ID's op eenzelfde site vraagt een specifieke configuratie, die OpenAI apart documenteert.

Attributie: wat wordt geteld, en hoe

OpenAI beoordeelt de conversie-events aan de hand van de events die voor je campagne zijn ingesteld en het toepasselijke attributievenster. Twee regels om te kennen:

  • De post-klik attributie gebruikt het ingestelde klikvenster.
  • De post-impressie conversies (view-through) gebruiken een vast venster van één dag na een in aanmerking komende impressie, los van jouw klikvenster.

En de leesregel die rekenfouten voorkomt: de hoofdkolom Conversies bevat uitsluitend de post-klik conversies. De post-impressie conversies vormen een afzonderlijke aanvullende rapportage die volgens OpenAI niet bij de conversies opgeteld mag worden en niet gebruikt mag worden voor basisperformancemetrics zoals de CPA.

Testchecklist voor de lancering

  1. Databron aangemaakt in Ads Manager, Pixel ID opgehaald.
  2. Script geladen in de head, initialisatie aangeroepen met het juiste Pixel ID.
  3. Toestemming vóór de init aangesloten op Europese sites.
  4. Standaard events afgevuurd op de juiste plekken, met het juiste veld type.
  5. Deduplicatie ingericht als je dubbel meet met de API: dezelfde waarde in id en event_id, hetzelfde Pixel ID.
  6. CSP bijgewerkt voor de drie directives.
  7. Debugmodus ingeschakeld tijdens de testfase, en daarna weer uitgeschakeld.
  8. Landingspagina toegankelijk voor OAI-AdsBot: een geblokkeerde pagina kan tot afkeuring van de advertentie leiden, los van de kwaliteit van je tagging. Onze landingspagina-checker voor ChatGPT Ads controleert dit punt.
  9. Eén enkel actief standaard event gekozen als doel als je op oCPC mikt, in de wetenschap dat dit na het aanmaken van de campagne niet meer te wijzigen is.

Veelgestelde vragen

Is conversiemeting verplicht op ChatGPT Ads?
Niet om op CPM of CPC te vertonen, maar wel voor de optimalisatie op conversie: oCPC vereist dat de meting al is ingesteld via de JavaScript-pixel, de Conversions API of beide, en dat een actief standaard conversie-event als doel dient.
Haalt de Conversions API oppref helemaal zelf op?
Nee. Alleen de pixel legt oppref, de klikreferentie van OpenAI, automatisch vast en bewaart die in een cookie. Een aanroep van de Conversions API moet die expliciet meegeven wanneer ze beschikbaar is: het is aan jouw code om ze op te halen, de API doet dat niet voor je. Precies daarom raadt OpenAI aan om de pixel en de API samen te laten draaien, niet het een of het ander.
Moet je kiezen tussen de pixel en de Conversions API?
Nee, beide kunnen naast elkaar bestaan. OpenAI presenteert de Conversions API als een betrouwbaardere bron dan de pixel alleen en raadt aan die te gebruiken waar mogelijk. Stuur je dezelfde conversie via beide kanalen, dan moet je die dedupliceren.
Hoe voorkom je dat een conversie twee keer wordt geteld?
Door dezelfde waarde te hergebruiken als id aan de API-zijde en als event_id aan de pixelzijde, door beide events met hetzelfde Pixel ID te versturen, en door voor aangepaste events aan beide kanten dezelfde custom_event_name te gebruiken.
Kan een aangepast event als oCPC-doel dienen?
Nee. De documentatie stelt dat aangepaste events geen oCPC-optimalisatiedoel kunnen zijn. Je hebt precies één actief standaard conversie-event als doel nodig, en dat is na het aanmaken van de campagne niet meer te wijzigen.
Respecteert de pixel de toestemming van de gebruiker?
De SDK biedt een toestemmingscommando. Punt om te kennen: de toestemming staat standaard op true, tenzij die expliciet op false is gezet of er een weigering is geregistreerd. Op een Europese site moet je het commando dus expliciet met false aanroepen vóór de initialisatie, en daarna op true zetten zodra de toestemming is verkregen.
Mijn pixel meldt niets, wat controleer je als eerste?
De Content Security Policy. De SDK heeft https://bzrcdn.openai.com nodig in script-src, https://bzr.openai.com en https://bzrcdn.openai.com in connect-src, en https://bzr.openai.com in img-src. Schakel de parameter debug in bij de initialisatie om de fout in de console te zien.
Hoe meet je een app-installatie?
Niet met de pixel: die ondersteunt app_installed en app_opened niet. Deze events moeten aan serverzijde verstuurd worden via de Conversions API. OpenAI documenteert ook integraties met mobile measurement partners.
Wat is het attributievenster?
De post-klik attributie gebruikt het ingestelde klikvenster. De post-impressie conversies gebruiken een vast venster van één dag na een in aanmerking komende impressie, los van het klikvenster, en worden apart van de hoofdkolom Conversies gerapporteerd.
Test je site in 30 seconden

SEO-score, GEO-score, performance en responsive: 49 gecontroleerde punten, direct verdict over AI Overviews.

Start de SEO- & GEO-test

Gerelateerde gidsen

ChatGPT Ads: de complete gids 2026 om te adverteren op ChatGPT

Hoe ChatGPT Ads werkt, waar het beschikbaar is, hoe je een account aanmaakt, een campagne opbouwt, target met context hints en je budget inschat: de referentiegids, doorlopend bijgewerkt.

Lees de gids

ChatGPT Ads kosten: biedingen, budgetten en de echte prijs van een campagne

Wat een ChatGPT Ads-campagne echt kost: de drie biedmodellen, het door OpenAI aanbevolen startbod, het minimale dagbudget en de facturering per drempel.

Lees de gids

ChatGPT Ads voor e-commerce: campagnes op basis van een productfeed

Je catalogus koppelen aan ChatGPT Ads: de drie manieren om een feed aan te leveren, het verlopen van items, het veld is_ads_eligible en het verschil met organische productresultaten.

Lees de gids