21 août 2026 6 min de lecture
Pour mesurer des campagnes ChatGPT Ads, deux briques : le pixel OpenAI côté navigateur et la Conversions API côté serveur. Nous avons installé les deux sur nos propres campagnes le jour de l’ouverture française. Voici le pas à pas complet, avec les pièges que la documentation ne signale pas et que nous avons rencontrés en vrai.
Publié le 21 août 2026. Référence officielle : la documentation Conversions API d’OpenAI (developers.openai.com/ads). Cet article suppose un site avec Google Tag Manager et un back-end capable d’appeler une API.
Dans le gestionnaire de publicités (ads.openai.com), la section mesure fournit trois éléments à conserver précieusement :
Rangez les clés dans votre gestionnaire de secrets, pas dans le code. La clé de conversions se révoque et se régénère depuis l’interface si besoin.
Le pixel est un script classique à charger sur toutes les pages. Dans GTM : balise HTML personnalisée, déclencheur « Toutes les pages », puis publication du conteneur. Le pixel dépose un cookie propre à OpenAI et capte l’identifiant de clic quand un visiteur arrive depuis une annonce.
Cet identifiant de clic s’appelle oppref : ChatGPT l’ajoute automatiquement à l’URL de destination de vos annonces, comme gclid chez Google ou fbclid chez Meta. Si votre système d’attribution maison capte les identifiants de clic, ajoutez oppref à la liste des paramètres reconnus et conservez-le avec la session : vous en aurez besoin à l’étape 4.
Le gestionnaire permet d’ajouter des paramètres de suivi à l’URL finale, avec des modèles limités aux identifiants (campagne, groupe d’annonces, annonce). Un exemple qui fonctionne :
utm_source=chatgpt&utm_medium=cpc&utm_campaign={campaign_id}&im_campaign_id={campaign_id}&im_adgroup_id={ad_group_id}&im_ad_id={ad_id}
Le piège vécu : n’ajoutez jamais oppref ni olref dans ce champ. Ce sont des paramètres réservés, et l’interface rejette l’annonce avec le message « Reserved query parameters are not supported ». ChatGPT ajoute oppref lui-même à l’URL finale : votre site le reçoit sans que vous le déclariez.
À noter aussi : seuls des identifiants numériques sont disponibles comme modèles, pas les noms de campagnes. Prévoyez une table de correspondance côté reporting.
La Conversions API reçoit vos événements en POST :
POST https://bzr.openai.com/v1/events?pid=VOTRE_PIXEL_ID Authorization: Bearer VOTRE_CLE_CONVERSIONS
Chaque événement porte un identifiant unique, un type, un horodatage en millisecondes, une source (web, offline…), et un objet utilisateur pour la correspondance. Les types standard couvrent l’essentiel d’un tunnel : lead_created, appointment_scheduled, checkout_started, order_created, registration_completed, subscription_created, trial_started, plus des événements personnalisés.
Pour la correspondance, envoyez ce que vous avez : l’e-mail normalisé puis haché en SHA-256, l’adresse IP, le user agent, et surtout l’identifiant de clic oppref capté à l’étape 2. C’est lui qui rattache la conversion à l’annonce.
crm:lead:12345) : c’est votre garantie contre les doublons, et la clé de déduplication si vous ajoutez un jour un événement navigateur jumeau.validate_only: true vérifie l’événement sans l’enregistrer. La réponse {"accepted_events": 1} confirme que le format passe, avant de brancher la production.Avec le pixel et la Conversions API en place, le gestionnaire peut optimiser la diffusion à la conversion plutôt qu’au clic, et votre reporting relie enfin la dépense ChatGPT Ads à vos prospects et à vos ventes, dans la même logique que vos autres canaux. Pour situer cette brique dans une architecture de mesure complète (server-side, consentement, attribution), voir notre page tracking publicitaire. Pour le fonctionnement général de la régie, notre guide complet ChatGPT Ads. Et si vous préférez confier l’installation et les campagnes, notre offre de gestion ChatGPT Ads comprend ce dispositif.
Remplissez ce formulaire et nous vous recontacterons rapidement pour discuter d'un potentiel partenariat.