⭐ Available on the following plans: Scale, Prime, Business & Agency
👀 Not sure which plan you're on? Check your subscription here.
OpenAI Ads is OpenAI's advertising platform for running paid campaigns in ChatGPT. Connect Heyflow with OpenAI Ads to send conversion data directly to your OpenAI Ads account. This helps you track user interactions accurately and optimize your campaigns based on real-time insights.
Heyflow bundles browser-side and server-side tracking into a single setup: when you connect OpenAI Ads, both the OpenAI Pixel and the Conversions API are added to your heyflow at the same time, increasing the reliability of your measurement.
With Heyflow's OpenAI Ads integration, you can:
Track default lifecycle events in OpenAI Ads, such as page views and completed submissions
Track custom interactions, like button clicks and picture choice selections, as custom events
Improve match rates with Advanced Matching by sending additional hashed user-provided data from Heyflow to OpenAI
Benefit from both browser-side and server-side tracking out of the box, with automatic deduplication so conversions aren't counted twice
Setup
Step 1: Get your Pixel ID and Conversion Key
Both credentials live in your OpenAI Ads account, under "Tools > Conversions".
Pixel ID
Go to ads.openai.com/settings/conversions and click "Create > Data source". Name your pixel and click "Create". Your Pixel ID is shown right away — copy it.
Conversion Key
Go to ads.openai.com/settings/conversions, click "Conversion keys", then "Add new key". Give the key a name and click "Create". Copy the key that's displayed.
❗ You won't be able to see the Conversion Key again after you leave the page.
Step 2: Connect your heyflow
Go to your heyflow and navigate to "Connect". Under Tracking in the list, click "OpenAI Ads" and paste your Pixel ID and Conversion Key into the matching fields. Click "Connect" and republish your flow.
Both the pixel and server-side tracking are now active — there's nothing further to configure to get events flowing.
Step 3: Test your setup
In OpenAI Ads, go to "Tools > Conversions" and open the "Event Stream" tab.
Visit your published heyflow in another tab and click through it as a test run. Once you submit, return to the Event Stream. You should see your events coming in, each labeled with where it came from — either "Browser" (Pixel) or "Server" (Conversions API).
🔎 Since both the Pixel and the Conversions API are active at the same time, OpenAI receives most events twice. This is expected — OpenAI deduplicates events that share the same Event ID, so your reporting won't double-count conversions. Browser events tend to appear almost instantly; server events can take a few seconds longer.
Step 4: Map your data fields (optional)
To improve match rates, you can map Heyflow fields to OpenAI's Advanced Matching parameters — like email, phone number, or name. Heyflow hashes this data before it's sent, so no raw personal data leaves your flow unprotected.
💡 This step is optional, but combined with the automatic Pixel and Conversions API pairing, it's the most effective way to boost measurement quality on OpenAI Ads.
Events
Default events
Heyflow automatically tracks the following events:
A page view, whenever someone opens your heyflow
A submission, whenever someone completes your heyflow
By default, submissions are sent to OpenAI as a lead_created event. You can change this to any other event from OpenAI's list of available events, or add a custom event name if it better matches what you're tracking.
Custom Event Tracking
You're not limited to automatic events. You can also track user interactions — like button clicks, picture choice selections, or multiple choice answers — as custom events. To do this, open the block's settings, go to the "Tracking" tab, and enable tracking for the interaction you want to capture.
Measurement quality
A few things help OpenAI match more of your conversions back to the ads that drove them:
Map additional customer data fields (see Step 4) so OpenAI has more signal to work with
Make sure your heyflow is published on a domain that isn't blocked by cookie or consent settings before testing
The more complete and consistent your data, the better OpenAI can attribute conversions to the right campaigns.
Troubleshooting
I don't see any events
A few common causes:
The Pixel ID or Conversion Key was copied incorrectly — double-check both against the values in OpenAI Ads
Your heyflow wasn't republished after connecting the integration
You're testing on a draft or preview link instead of the published heyflow
An ad blocker is preventing the browser Pixel from firing — server-side events from the Conversions API should still arrive in this case
My submit event gets tracked twice
If your submission shows up twice with the same "Received From" source, individual tracking has likely also been enabled on your Submit Button. This isn't necessary — the submission is already tracked automatically.
To fix this, open your Submit Button's block settings, go to the "Tracking" tab, and remove the checkmark there.
🔎 If you see one "Browser" and one "Server" event for the same submission instead, that's expected — see Step 3 above.
