Pixel do ChatGPT Ads e Conversions API: instalar o rastreamento de conversões
Última atualização: 24 de agosto de 2026, verificado a partir da documentação oficial da OpenAI. Os nomes de eventos e de parâmetros citados aqui vêm da documentação para desenvolvedores da OpenAI e podem evoluir durante o beta.
Sem medição de conversão, uma campanha ChatGPT Ads fica cega: você sabe quanto gasta, não o que obtém. E, sobretudo, não é possível ativar a otimização por conversão. Esta página cobre os dois métodos oficiais, o pixel no navegador e a Conversions API no servidor, e a forma de fazê-los conviver. O panorama geral está em nosso guia ChatGPT Ads.
Motores de IA abordados nesta página
- ChatGPT
Por que a medição é um pré-requisito, não uma opção
Três motivos, sendo um deles bloqueante:
- Bloqueante: a otimização por conversão (oCPC) exige que o rastreamento já esteja configurado, com o pixel JavaScript, a Conversions API, ou os dois. Sem sinal, o sistema não tem o que otimizar.
- O relatório do Ads Manager inclui uma coluna de conversões que fica vazia se nada estiver conectado.
- O cálculo do seu custo por aquisição depende inteiramente desse dado: sem ele, você pilota pelo CPC, ou seja, pelo gasto, não pelo resultado.
O princípio geral estabelecido pela OpenAI é simples: você cria uma fonte de dados (data source) no Ads Manager e depois envia a ela eventos de conversão via pixel, via API, ou pelos dois.
Pixel ou Conversions API: qual escolher?
| Pixel JavaScript | Conversions API | |
|---|---|---|
| Onde é executado | No navegador do visitante | No seu servidor, exclusivamente |
| Implementação | Um script a colocar no head | Desenvolvimento no back-end |
| Robustez | Sensível a bloqueadores e a restrições do navegador | A OpenAI a apresenta como uma fonte mais confiável que o pixel sozinho |
| Recomendação da OpenAI | Ponto de partida | Usar sempre que possível, para dados mais precisos |
A resposta pragmática não é "um ou outro", mas "os dois, com deduplicação". O pixel é instalado em uma hora e coloca as campanhas de pé imediatamente; a API é conectada depois e assegura a medição de forma duradoura.
Instalar o pixel de medição
O pixel de medição do ChatGPT Ads é um SDK de navegador destinado a medir os eventos do seu site atribuíveis a anúncios no ChatGPT. O script é carregado de forma assíncrona a partir de https://bzrcdn.openai.com/sdk/oaiq.min.js, e deve ser colocado na seção <head>, para depois ser inicializado com o seu identificador de pixel:
oaiq("init", { pixelId: "SEU-PIXEL-ID" });
O parâmetro pixelId é obrigatório e é criado no Ads Manager. Um parâmetro debug opcional escreve a atividade do SDK no console do navegador, útil durante a fase de homologação.
Toda a medição passa em seguida por um comando único: oaiq("measure", nomeDoEvento, dadosDoEvento, opcoes).
Os eventos padrão, os eventos personalizados e suas restrições
Cada evento padrão espera um objeto de dados cujo campo type precisa corresponder. A documentação para desenvolvedores da OpenAI os agrupa assim:
| Família | Eventos | Campo type esperado |
|---|---|---|
| Comércio | order_created, items_added, checkout_started | contents |
| Conteúdo | page_viewed, contents_viewed | contents |
| Lead e cadastro | lead_created, registration_completed, appointment_scheduled | customer_action |
| Assinatura | subscription_created, trial_started | plan_enrollment |
Para os eventos do tipo contents, os campos documentados incluem amount, currency e um array contents composto por entradas com id, name, content_type e quantity. Os eventos do tipo plan_enrollment esperam um plan_id. A documentação recomenda usar valores inteiros para amount e quantity.
Quando nenhum evento padrão corresponde, um evento personalizado é declarado com um terceiro argumento e um objeto de opções:
oaiq("measure", "custom", { type: "custom" }, { custom_event_name: "quote_requested" })
Os nomes de eventos personalizados devem seguir regras precisas: de 1 a 64 caracteres, apenas letras, números, sublinhados e hifens, e começar e terminar por um caractere alfanumérico.
Atenção a uma limitação estruturante: um evento personalizado não pode servir de objetivo de otimização oCPC. Se a sua conversão de negócio precisa guiar a otimização, ela tem de ser enviada como evento padrão.
Conectar a Conversions API no servidor
A API é usada a partir do seu servidor, exclusivamente. Os pontos de implementação documentados:
- Você cria uma fonte de conversão web e seu Pixel ID pelo endpoint
POST /conversions/pixels. - Você gera uma chave capaz de enviar eventos no servidor em nome da conta de anúncios atual.
- Essa chave deve ser guardada em um gerenciador de segredos no servidor. A documentação é categórica: nunca colocá-la em código do navegador, em variáveis de ambiente visíveis no cliente, em logs ou em um repositório de código.
- A API aceita lotes de até 1 000 eventos. Ponto crítico para o seu tratamento de erros: se um único evento do lote falhar, o lote inteiro falha.
Essa última regra merece ser tratada já no desenho da solução: um lote rejeitado em bloco por causa de um campo mal formatado em um pedido pode fazer 999 conversões válidas desaparecerem do seu relatório.
Deduplicar pixel e API: a regra que não pode falhar
Se você envia a mesma conversão pelo pixel e pela Conversions API, é preciso avisar o sistema, senão você a conta duas vezes. O método documentado:
- Reutilizar o mesmo valor como id na API e como event_id no pixel.
- Enviar os dois eventos com o mesmo Pixel ID.
- Para os eventos personalizados, usar o mesmo custom_event_name dos dois lados.
No lado do pixel, isso se parece com: oaiq("measure", "order_created", {...}, { event_id: "order_12345" }). A correspondência se apoia no Pixel ID, no nome do evento e no event_id; para um evento personalizado, o custom_event_name substitui o nome do evento nessa lógica.
Na prática: use o seu identificador de pedido ou de lead como chave de deduplicação, é o único valor naturalmente disponível dos dois lados.
oppref: preservá-lo até a conversão, não apenas capturá-lo
O pixel captura oppref, a referência de clique da OpenAI, e a armazena em um cookie próprio (__oppref). Documentar sua captura não basta: a documentação oficial insiste em um ponto que muitas implementações deixam passar, oppref precisa ser preservado ao longo dos redirecionamentos e da navegação até a página em que a conversão é efetivamente medida. Um fluxo de pagamento que passa por um subdomínio de pagamento, um redirecionamento após um formulário, ou um carrinho que muda de domínio perdem o cookie pelo caminho se nada estiver previsto para propagá-lo.
Segundo ponto frequentemente esquecido: a Conversions API não captura oppref por você, ao contrário do pixel. Se você chama a API a partir do servidor, é o seu código que precisa buscar o valor de oppref (normalmente depositado pelo pixel em um cookie ou transmitido como parâmetro de URL) e incluí-lo explicitamente na chamada, quando ele estiver disponível. Sem essa etapa, um evento enviado apenas pela API perde o vínculo com o clique publicitário que o precedeu.
A arquitetura recomendada pela OpenAI se resume em três partes: o pixel em cada página para capturar oppref e os eventos leves, a Conversions API para os eventos de alto valor enviados a partir do seu back-end (onde você tem o pedido, e onde nada pode bloquear a chamada), e os dois canais enviando a mesma conversão com o mesmo event_id.
O advanced matching automático
O advanced matching automático (AAM) serve para vincular conversões aos seus anúncios quando nenhum identificador de clique está disponível. O pixel detecta automaticamente as informações de cliente reconhecíveis em formulários e outras fontes do seu site, normaliza-as e as transforma em hash SHA-256 diretamente no navegador. A documentação esclarece que nenhum dado bruto é transmitido.
Você também pode fornecer identificadores já em hash no objeto user na inicialização: email_sha256, phone_number_sha256, external_id_sha256, first_name_sha256, last_name_sha256, além dos campos não convertidos em hash country, city, region e postal_code.
Esse recurso lida com dados pessoais: sua ativação deve ser decidida junto com o responsável pela proteção de dados, em especial no Brasil sob a LGPD e na Europa.
Consentimento, proteção de dados e controle do pixel
O SDK expõe um comando de consentimento, a ser chamado antes da inicialização para bloquear a medição enquanto o usuário não tiver aceitado:
oaiq("consent", false); depois oaiq("init", { pixelId: "..." }); e depois oaiq("consent", true); quando o consentimento for obtido.
Dois pontos a reter. Primeiro, o consentimento vale true por padrão, exceto se for explicitamente definido como false ou se uma recusa tiver sido registrada: em um site brasileiro ou europeu, é preciso portanto chamar explicitamente oaiq("consent", false) antes, em vez de contar com o comportamento padrão. Segundo, quando o valor é false, os eventos de medição não são enviados.
Um parâmetro opt_out permite ainda excluir um evento da personalização no nível do usuário; seu valor padrão é false. O SDK também gerencia um identificador que respeita a privacidade, o oppref, capturado a partir da URL e armazenado em um cookie __oppref.
Lembrete de contexto: os anúncios personalizados não estão disponíveis no lançamento no Espaço Econômico Europeu nem na Suíça. Isso não dispensa em nada a gestão do consentimento para a medição em si.
Content Security Policy: os domínios a autorizar
Causa de falha silenciosa mais frequente nos sites que aplicam uma CSP estrita: o SDK é bloqueado antes mesmo de se inicializar. As diretivas documentadas:
| Diretiva | Origem a autorizar | Função |
|---|---|---|
| script-src | https://bzrcdn.openai.com | Carregamento do SDK |
| connect-src | https://bzr.openai.com e https://bzrcdn.openai.com | Envio e recuperação dos eventos |
| img-src | https://bzr.openai.com | Alternativa por requisição de imagem |
Se o pixel não reporta nada embora o código esteja no lugar, abra o console com o parâmetro debug ativado: um erro de CSP aparece imediatamente.
O que o pixel não sabe fazer
Uma limitação explícita, a conhecer antes de desenhar seu plano de marcação: o pixel de medição não oferece suporte aos eventos app_installed e app_opened. Esses eventos precisam ser enviados no servidor, via Conversions API.
A OpenAI documenta ainda integrações com parceiros de medição, incluindo parceiros de medição mobile (MMP), para anunciantes cuja conversão acontece dentro de um aplicativo.
Outro ponto de atenção: o uso de vários Pixel IDs em um mesmo site exige uma configuração específica, documentada separadamente pela OpenAI.
Atribuição: o que é contado, e como
A OpenAI avalia os eventos de conversão em relação aos eventos configurados para a sua campanha e à janela de atribuição aplicável. Duas regras a conhecer:
- A atribuição pós-clique usa a janela de clique configurada.
- As conversões pós-impressão (view-through) usam uma janela fixa de um dia após uma impressão elegível, independente da sua janela de clique.
E a regra de leitura que evita erros de cálculo: a coluna Conversões principal contém apenas as conversões pós-clique. As conversões pós-impressão são um relatório adicional separado que, segundo a OpenAI, não deve ser somado às conversões nem usado em métricas de performance básicas como o CPA.
Checklist de homologação antes de lançar
- Fonte de dados criada no Ads Manager, Pixel ID obtido.
- Script carregado no head, inicialização chamada com o Pixel ID correto.
- Consentimento ligado antes da inicialização em sites sujeitos à LGPD ou ao regime europeu.
- Eventos padrão disparados nos lugares certos, com o campo type correto.
- Deduplicação no lugar se você duplicar com a API: mesmo valor em id e event_id, mesmo Pixel ID.
- CSP atualizada para as três diretivas.
- Modo debug ativado durante a homologação e depois desativado.
- Página de destino acessível ao OAI-AdsBot: uma página bloqueada pode fazer o anúncio ser recusado, independentemente da qualidade da marcação. Nosso verificador de página de destino do ChatGPT Ads checa esse ponto.
- Um único evento padrão ativo escolhido como objetivo se você mira o oCPC, sabendo que ele não poderá mais ser alterado depois da criação da campanha.
Perguntas frequentes
O rastreamento de conversões é obrigatório no ChatGPT Ads?
A Conversions API recupera oppref sozinha?
É preciso escolher entre o pixel e a Conversions API?
Como evitar contar uma conversão duas vezes?
Um evento personalizado pode servir de objetivo oCPC?
O pixel respeita o consentimento do usuário?
Meu pixel não reporta nada, o que verificar primeiro?
Como medir uma instalação de aplicativo?
Qual é a janela de atribuição?
Nota SEO, nota GEO, performance e responsivo: 49 análises verificados, veredito AI Overviews na hora.
Guias relacionados
ChatGPT Ads: guia completo 2026 para anunciar no ChatGPT
Como funciona o ChatGPT Ads, onde está disponível, como criar uma conta, estruturar uma campanha, segmentar por context hints e estimar seu orçamento: o guia de referência, atualizado continuamente.
Ler o guiaPreços do ChatGPT Ads: lances, orçamentos e custo real de uma campanha
Quanto custa de verdade uma campanha ChatGPT Ads: os três modelos de lance, o lance inicial recomendado pela OpenAI, o orçamento diário mínimo e a cobrança por limite.
Ler o guiaChatGPT Ads para e-commerce: campanhas a partir de um feed de produtos
Como conectar seu catálogo ao ChatGPT Ads: os três métodos de envio de feed, a expiração dos itens, o campo is_ads_eligible e a diferença em relação aos resultados de produto orgânicos.
Ler o guia