# Connect OpenAI Ads (ChatGPT Ads) to cPixel {#doc-title}

By [B2B Gold](/about/#how-we-write) Updated 24 September 2026 [cPixel page](/shopify/cpixel/) [cPixel on the Shopify App Store](https://apps.shopify.com/cpixel?utm_source=b2bgold.app&utm_medium=referral&utm_campaign=docs&utm_content=docs/cpixel/connect-openai-ads&utm_term=docs-header)

## How do I connect OpenAI Ads to cPixel? {#how-do-i-connect-openai-ads-to-cpixel}

In OpenAI Ads Manager, open Tools, then Conversions: the Pixel ID is printed under your data source on the Data Source tab, and the key icon in the page header creates a Conversions API key, shown only once. Paste both into cPixel, which then sends checkouts and purchases to ChatGPT Ads from its servers.

### Paste them into cPixel {#paste-them-into-cpixel}

1. In cPixel, open **Destinations** and click the OpenAI Ads icon under **Connect a platform**. **Set up OpenAI Ads** opens on **Paste your IDs**.
2. Paste the **Pixel ID** ([where to find it](#where-do-i-find-my-openai-ads-pixel-id)) and the **Conversions API key** ([how to create one](#how-do-i-create-a-conversions-api-key)); both are required. Name the account under **Name this account (optional)** if you like.
3. Click **Test connection**. OpenAI validates a test event without recording it, so **Your credentials reach this account** confirms access, not delivery.
4. Click **Continue**. On **Choose options**, keep **Send events from the browser** and **Send events from our servers** ticked, answer **Is the official OpenAI Ads app also installed?** (below) and click **Save and continue**. **Test it** confirms **OpenAI Ads is connected**.

> **Important:** OpenAI’s own [ChatGPT Ads app for Shopify](https://help.openai.com/en/articles/20001523-set-up-chatgpt-ads-for-shopify) also sends your store’s events to an OpenAI pixel. Two senders give one order two event IDs, and OpenAI keeps both. Give each tool its own Pixel ID, or answer **Yes — keep it, and cPixel stops sending OpenAI Ads server-side**, which, despite its label, stops cPixel’s browser and server sends to that pixel ([one sender per pixel](/docs/cpixel/official-channel-apps/)).

## Where do I find my OpenAI Ads Pixel ID? {#where-do-i-find-my-openai-ads-pixel-id}

In [OpenAI Ads Manager](https://ads.openai.com/), open **Tools** → **Conversions**: on the **Data Source** tab, the grey ID under your data source’s name is the Pixel ID, not the ad account ID in your address bar.

1. In the left-hand menu, expand **Tools** and choose **Conversions**.
2. On the **Data Source** tab, copy the grey ID, or [create a data source](https://help.openai.com/en/articles/20001409-conversion-measurement) if you have none.

## How do I create a Conversions API key? {#how-do-i-create-a-conversions-api-key}

Click the key icon beside **Warnings** on the **Conversions** page, then **Create new key**. Copy the key, which begins `sk-svcacct-`, at once: OpenAI shows it only once.

1. Click the **key icon**. **Conversion keys** lists your keys masked; OpenAI never reveals an old one.
2. Click **Create new key**, name it and copy the key from **Save your key** before closing it.
3. Paste it into cPixel’s **Conversions API key** field.

> **Tip:** Deleting a key revokes it at once, so create and paste the new key before deleting the old one.

## Does “Ads cannot serve until you finish account setup” block this? {#does-ads-cannot-serve-until-you-finish-account-setup-block-this}

No. New accounts show it until billing and an account logo are set up; it gates ad delivery, not the Conversions API.

## What does cPixel send to ChatGPT Ads? {#what-does-cpixel-send-to-chatgpt-ads}

Checkouts and purchases always go from cPixel’s servers, as checkout_started and order_created, because a theme can’t run on Shopify’s checkout or Thank you page. With the [app embed](/docs/cpixel/getting-started/#why-does-cpixel-need-its-app-embed) on, a storefront tag adds page views, product views and add-to-carts (page_viewed, contents_viewed, items_added), so no event has two senders.

- If a shopper’s browser can’t load OpenAI’s tag, cPixel sends that storefront event from its servers with your key, never one the tag already sent. It can’t see OpenAI refuse a browser event.
- No payment-info event reaches OpenAI.
- Server sends carry hashed email, phone, customer and device IDs, `oppref` and `obref`, IP address and user agent. OpenAI Ads needs marketing consent; cPixel never sends names or postal addresses.
- OpenAI [deduplicates](https://developers.openai.com/ads/conversions-api) on Pixel ID, event name and event ID, keeping the first copy, and accepts events up to 7 days old.

OpenAI Ads Manager [scores each data source’s event quality](https://help.openai.com/en/articles/20001513-understand-and-improve-event-quality) daily. cPixel’s **Event quality** page doesn’t read that score, and its note that OpenAI publishes none is out of date.

## What is oppref, and does cPixel send it? {#what-is-oppref-and-does-cpixel-send-it}

oppref is the click reference OpenAI adds to your landing page’s address when someone clicks a ChatGPT ad. OpenAI [uses it](https://help.openai.com/en/articles/20001409-conversion-measurement) to connect a conversion to the click, with hashed contact details as the fallback. cPixel sends it with its server events whenever it has one.

- cPixel reads it from the address and, with the app embed on, from the `__oppref` cookie OpenAI’s tag keeps on your domain, which survives a move between `www` and your bare domain.
- OpenAI’s tag [keeps that cookie for 30 days](https://developers.openai.com/ads/measurement-pixel), restarting the count whenever oppref appears in the address again.
- OpenAI asks you to keep oppref through redirects: one that strips query parameters loses it.

## How do I check it worked? {#how-do-i-check-it-worked}

Start a session in **Live** and place a real order: the purchase’s **Server** row shows OpenAI’s reply, **Accepted**, **Rejected** or **Error**, with the HTTP status. Then check the **Event Stream** tab in Ads Manager.

1. In cPixel, open **Live** and click **Start session**.
2. In another tab, place a real order; cPixel skips test orders by default.
3. Open the purchase’s **Server** row: **OpenAI Ads** should read **Accepted**. Storefront events show as **Browser** rows, without a reply.
4. In Ads Manager, open **Tools** → **Conversions**, then the **Event Stream** tab. Storefront events arrive there too, never from checkout pages.

**Destinations** marks the account **Verified** after its first accepted server send. Attributed conversions reach OpenAI’s reports in [24 to 48 hours](https://help.openai.com/en/articles/20001214-measure-results).

## What if it doesn’t work? {#what-if-it-doesnt-work}

If OpenAI rejects the key, cPixel marks the account **Token invalid**, stops its server sends and emails a critical alert to your store’s contact address; **Home** shows **Fix OpenAI**.

1. [Create a new key](#how-do-i-create-a-conversions-api-key).
2. Click **Fix OpenAI** on **Home**, or **Manage** beside the account on **Destinations**, and paste it over **Saved — paste a new one to replace it**. **Test connection** checks it.
3. Click **Continue**, then **Save and continue**.

| What you see | What to do |
| --- | --- |
| **Test connection**: the platform rejected this token | The key was deleted or mistyped: create a new one |
| Conversions show 0 in Ads Manager | The campaign’s conversion goal must match the event sent, order_created for purchases ([OpenAI](https://help.openai.com/en/articles/20001214-measure-results)) |
| Purchases counted twice | Another tool sends to this Pixel ID: [one sender per pixel](/docs/cpixel/official-channel-apps/) |
| A purchase shows **Skipped** in Live | Read its reason, then see [purchases not showing](/docs/cpixel/purchases-missing/) |

**Remove** in **Manage OpenAI Ads** stops sends and deletes the stored key. OpenAI’s own documentation: [Conversions API](https://developers.openai.com/ads/conversions-api).

## Related {#related}

- [Track ChatGPT Ads conversions on Shopify](/blog/chatgpt-ads-conversion-tracking-shopify/)
- [Watch each send in Live](/docs/cpixel/live-events/)
- [One sender per pixel](/docs/cpixel/official-channel-apps/)
- [What cPixel sends, and how consent changes it](/docs/cpixel/event-quality-and-consent/)

[cPixel Facebook Pixel CAPI GA4](/shopify/cpixel/)

cPixel is a Shopify app that sends your store’s events to Meta, TikTok, Google Analytics 4 and OpenAI’s ChatGPT Ads from shoppers’ browsers and from its own servers, with one shared event ID so each platform can keep a single copy. A live view shows each send, with the platform’s reply to server sends, and alerts flag a rejected token or stalled tracking.

[Install free on the Shopify App Store](https://apps.shopify.com/cpixel?utm_source=b2bgold.app&utm_medium=referral&utm_campaign=docs&utm_content=docs/cpixel/connect-openai-ads&utm_term=card) [Plans and pricing](/shopify/cpixel/#pricing)

Need help with cPixel? Email [support@b2bgold.app](mailto:support@b2bgold.app).
