Skip to content

ChatGPT Ads

Send your store's events to ChatGPT Ads through the OpenAI Conversions API.

Connecting ChatGPT Ads lets Flowfy send every purchase, add-to-cart and page view from your store straight to OpenAI's servers, so your ad reporting reflects sales the browser pixel never saw.

Watch the ChatGPT Ads setup walkthrough

Watch the ChatGPT Ads setup walkthrough

Before you start

You will end up with two values: a Pixel ID and a Conversions API Key. Both live under Conversions, but they are created in two different places on that page.

There are two kinds of key in ChatGPT Ads and only one of them works here. Do not use Settings › API Keys — that is the Ads Management key, and it is rejected on every event. Part 2 shows the right one.

Part 1 · Create your data source

1. Open Conversions

In Ads Manager, open Tools in the left menu and choose Conversions. If you have never set one up, the page is empty.

2. Create a data source

Click + Create data source (or + Create › Data Source in the top-right once you already have one). Give it a name you will recognise — the name is for you, nothing depends on it.

Your Pixel ID is generated automatically when you click Create.

3. Copy the Pixel ID

Open the data source you just made. The Set up your data source panel shows the Pixel ID with a copy button beside it — a 22-character string like MsLLVN8fT8zQX7nLQFhEcE.

You do not need to install the setup code shown underneath. Flowfy sends events from its own servers, and that is enough on its own.

If you already run the ChatGPT browser pixel on your store, use that same Pixel ID here — and be aware that running both can currently double-count. OpenAI de-duplicates on the Pixel ID plus the event id, and Flowfy does not yet coordinate its event ids with the stock pixel. If your numbers look inflated, run one or the other, not both.

Part 2 · Get the Conversions API key

1. Open Conversion keys

Back on the Conversions page, use the key icon in the top-right (Conversion keys) and create a key there. Copy it as soon as it appears.

2. Do not use Settings › API Keys

This is where most setups go wrong. Settings › API Keys also has a Create New Key button, and the key it produces looks perfectly valid — but OpenAI says in the dialog itself that it grants Ads Management API access only:

A key from there starts with sk-svcacct-. OpenAI will not accept events sent with it, so the destination saves but never delivers — and Flowfy reports the key as invalid the moment OpenAI says so. If your events are not arriving, check which of the two keys you pasted.

Part 3 · Create the destination in Flowfy

1. Start a new destination

In Flowfy, open Destinations and click Create destination.

2. Choose ChatGPT Ads

3. Connect your store

Tick the source whose events should flow to ChatGPT Ads, then continue.

4. Paste both values

Put the Pixel ID from Part 1 into Pixel ID, and the key from Part 2 into Conversions API Key. Then click Create.

Flowfy verifies both values before saving. That check is completely inert: OpenAI can validate a batch without recording it, so verifying costs you no phantom conversion.

Part 4 · Check that it's working

Place a test order, then open the destination in Flowfy and watch Live events. The order should appear within seconds.

On OpenAI's side, open the Event Stream tab on the Conversions page and look for the event arriving.

What gets sent

Flowfy translates your store's events into ChatGPT Ads event names automatically:

Your store eventChatGPT Ads event
Page Viewpage_viewed
Product Viewedcontents_viewed
Product List Viewedcontents_viewed
Product Addeditems_added
Checkout Startedcheckout_started
Order Completedorder_created
Sign Upregistration_completed
Reserveappointment_scheduled
Subscribesubscription_created
Start Trialtrial_started
App Openapp_opened

Anything outside that list is sent as a custom event, named after your event in lowercase with punctuation replaced by underscores. OpenAI only accepts Latin letters, digits, _ and - in an event name, so a name written entirely in Arabic leaves nothing to keep. Rather than drop the conversion, Flowfy sends it under a generated custom_ name that stays the same for that event forever. The sale still counts; it just appears in Ads Manager under the generated name. Give an event a Latin name if you want to recognise it there. If your store already uses ChatGPT Ads names such as lead_created, those pass through unchanged.

A few events are dropped rather than sent: anything older than seven days, and a web event with no page URL. OpenAI rejects a whole batch over one bad event, so Flowfy removes those first.

You can override any mapping under Event Mappings on the destination, but the target has to be one of the ChatGPT Ads event names above, or lead_created, app_installed or custom. An override to anything else is ignored and the default mapping is used.

Order values are converted into the unit OpenAI expects for your currency, so SAR, USD, KWD and JPY totals all report correctly without you configuring anything.

If something goes wrong

Flowfy says the API key is invalid. The most common cause is a key from Settings › API Keys instead of Conversion keys. A key starting sk-svcacct- is always the wrong one.

Flowfy says the key has no access to that Pixel ID. The key and the data source belong to different accounts. Create the key from the same account that owns the pixel.

Nothing arrives in Flowfy's live events. The problem is between your store and Flowfy, not Flowfy and OpenAI. Check that your source is connected and active.

Sales are counted twice. You are running the browser pixel and Flowfy together. A matching Pixel ID is necessary but not sufficient — OpenAI de-duplicates on the Pixel ID and the event id, and Flowfy does not yet coordinate event ids with the stock pixel. Until it does, run one or the other.

Older orders never arrive. OpenAI refuses events more than seven days old, so Flowfy drops them rather than sending a batch that would be rejected whole. Only a backlog longer than a week is affected.