How to measure ChatGPT ads

Install the OpenAI Pixel on your site, send server events through the Conversions API, or both with a shared event ID. OpenAI tags each ad click with an oppref value in the URL, which the pixel stores to credit the sale later.

Checked Sept 23, 2026 against 3 sources

The two ways to send conversions

MethodRuns inUse it for
OpenAI PixelThe browserQuick setup, page events, catching oppref
Conversions APIYour serverOrders and leads that happen off the page, or that browsers block

How a click gets credited

  1. Someone clicks your ad.
  2. OpenAI adds ?oppref=... to your landing page URL.
  3. The pixel saves it in a first-party cookie.
  4. When they buy or sign up, the pixel or your server sends the event with that reference.

The pixel can also hash contact details from your forms on the device (SHA-256) before sending, which OpenAI calls automatic advanced matching.

What reports show

Impressions, clicks, spend, click rate, average CPC, average CPM and conversions, split by device if you want. You never see anyone's chats, name, email or location.

Also track it in your own analytics

Add UTM tags to your ad links. Unpaid traffic from ChatGPT answers arrives separately, tagged utm_source=chatgpt.com, so keep the two apart when you report.

Common questions

What is oppref?

The click reference OpenAI adds to your landing page URL when someone clicks a ChatGPT ad, for example ?oppref=gAAAAAb123. The OpenAI Pixel stores it in a first-party cookie to credit later conversions.

Should I use the pixel or the Conversions API?

Both, if you can. Send the same event ID through each so OpenAI can remove duplicates.

How fast does ChatGPT ads reporting update?

Impressions, clicks and click rate refresh about every 15 minutes. Spend can lag 7 to 8 hours.

Sources

  1. OpenAI Help Center: Conversion measurement
  2. OpenAI Help Center: Ads in ChatGPT, the basics
  3. OpenAI Help Center: Ads in ChatGPT