Skip to main content

ChatGPT Ads Integration

Learn how to connect ChatGPT Ads to Cometly to track your ad spend, campaigns, and revenue.

How to Connect ChatGPT Ads to Cometly

Connecting ChatGPT Ads to Cometly lets you track your ChatGPT ad spend, campaigns, conversions, and ROAS alongside your other ad platforms. Once connected, Cometly pulls in your campaigns, ad groups, and ads with daily performance data, and attributes revenue back to the ads that drove it.
​

Setting up this integration takes three parts:

  1. Creating an Ads API key in ChatGPT Ads Manager (this is what gives Cometly access to an ad account)

  2. Connecting the ad account inside Cometly (pasting that key)

  3. Getting Cometly's URL parameters onto your ads (this is how Cometly ties each visit back to the right ad, and Cometly can do it for you)

All three are required. ChatGPT Ads doesn't offer a "Sign in with OpenAI" option, so each ad account is connected with its own API key.
​



Step 1: Create an Ads API Key in ChatGPT Ads Manager

  1. Sign in to ChatGPT Ads Manager at ads.openai.com

  2. Select the ad account you want to connect

  3. Go to Settings → General → API Keys

  4. Click Create New Key and copy the key
    ​

⚠️ Important: Use an Ads API key from ChatGPT Ads Manager. A key from the OpenAI API platform (platform.openai.com) does not work here. Each key belongs to one ad account, so create a key for every ad account you want to connect.

The key can read and change the ad account. Cometly uses it to read your campaigns, ads, and daily performance. It only makes changes when you edit campaigns from the Cometly Ads Manager or turn on Let Cometly add the parameters for me (see Step 3). Keys are stored encrypted and are never shown again.
​



Step 2: Connect the Ad Account in Cometly

  1. In Cometly, go to Integrations and find ChatGPT Ads under Ad Platforms

  2. Click Connect with API key

  3. Paste your key into the Ads API key field

  4. Click Connect ad account
    ​

Cometly checks the key with OpenAI and connects that ad account to the space you're in. You'll see "Ad account connected. The first data sync has started."
​

To connect another ad account, click Add account key and paste that account's key.
​

💡 Tip: An ad account can be connected to one space per team. If you run several ChatGPT ad accounts, connect each one with its own key.



Step 3: Add Cometly's URL Parameters to Your Ads

ChatGPT Ads adds query parameters to your landing page from a template called Tracking parameters. It can live on the campaign, the ad group, or the ad (the Edit Ad window is where Ads Manager shows it), and you can also set one account-wide default. There are three ways to get Cometly's template onto your ads. Pick one.
​

Option 1: Let Cometly add the parameters for you (recommended)

  1. In Cometly, go to Integrations and find ChatGPT Ads

  2. Click Tracking next to the ad account

  3. Turn on Let Cometly add the parameters for me


On the next sync (within 30 minutes), Cometly writes the template into the Tracking parameters of every tracked campaign, each of its ad groups, and each of its ads, and does the same for new ones as they're picked up. Writing it at all three levels means a new ad group or ad inherits the parameters from the moment it exists, and you'll find them wherever you look in Ads Manager.
​

💡 Your existing parameters are safe. Cometly reads the current Tracking parameters right before each write, keeps everything that's already there exactly as you wrote it, and only adds its own comet_ keys to the end. It writes the same values at every level, so they never conflict, it never touches the account default, and it leaves archived campaigns, ad groups and ads, and rejected ads, alone.

Option 2: Paste the template into each ad

  1. In ChatGPT Ads Manager, open the ad you want to track and choose Edit Ad

  2. Find Tracking parameters and paste the following:
    ​

comet_source=chatgpt&comet_campaign={campaign_id}&comet_ad_group={ad_group_id}&comet_ad_id={ad_id}


3. Save the ad

4. Repeat for every ad you want to track
​

Option 3: Set the template once at the account level

In ChatGPT Ads Manager you can set the template as the account default so every ad inherits it. Cometly can't read account-level defaults, so after you do this, click Tracking next to the ad account in Cometly and turn on I set the parameters at the account level in Ads Manager. That stops your ads from being flagged as missing parameters.
​

⚠️ Important: ChatGPT Ads also adds its own click reference, oppref, to every ad click. You don't need to add it to the template, and you should never remove or change it. Cometly uses it to match conversions to the click.

💡 Tip: If the same parameter is set at more than one level, the most specific one wins: the ad's own link first, then the ad's Tracking parameters, the ad group, the campaign, and finally the account default. If you paste the template yourself, keep it in one place so values can't conflict.


Tracking Parameter Breakdown

Parameter

Value

Description

comet_source

chatgpt

Tells Cometly the traffic is coming from ChatGPT Ads

comet_campaign

{campaign_id}

ChatGPT Ads inserts the campaign ID

comet_ad_group

{ad_group_id}

ChatGPT Ads inserts the ad group ID

comet_ad_id

{ad_id}

ChatGPT Ads inserts the ad ID

These placeholders are filled in automatically when someone clicks your ad, which lets Cometly match each click to the right campaign, ad group, and ad.
​


What to Expect After Connecting

Your first sync starts as soon as the ad account is connected. After that, Cometly refreshes ChatGPT Ads data every 30 minutes and re-syncs the last three days each morning, so late-arriving changes are captured. If you need history older than that, contact Cometly support.
​

OpenAI finalizes spend about 7 to 8 hours after the fact, so the most recent hours can look low in Cometly until they settle.
​

Your ChatGPT campaigns, ad groups, and ads appear in the Ads Manager along with spend and performance, and revenue from tracked conversions is attributed back to your ChatGPT ads. New campaigns you launch are picked up automatically when your space has track new campaigns enabled. Ads that are missing Cometly's URL parameters are flagged in the Ads Manager so you can fix them.
​

If you have ads management permission, you can also rename campaigns, ad groups, and ads, change campaign budgets, and pause or activate them from the Cometly Ads Manager. Ad groups show their max bid in the Budget column.
​

To send your conversions back to ChatGPT Ads so it can report and optimize on them, set up the ChatGPT Ads Conversion API.
​


Troubleshooting

"ChatGPT Ads did not accept this key"

The key is most likely from the OpenAI API platform (platform.openai.com) or was deleted. Create an Ads API key in ChatGPT Ads Manager under Settings → General → API Keys and paste that one.
​

"[Ad account] is already connected to another space of this team"

An ad account can only report into one space per team. Disconnect it in the space named in the message first, then connect it here.
​

The account shows "New key needed," or you got an "Action Required: New ChatGPT Ads API key" email

OpenAI no longer accepts the key on file, which usually means it was revoked or rotated in ChatGPT Ads Manager. Create a new key, click Replace key next to the account in Cometly, and paste it. Data resumes on the next sync.
​

Ads are flagged for missing URL parameters

The quickest fix is to click Tracking next to the ad account and turn on Let Cometly add the parameters for me. Otherwise, open the ad in ChatGPT Ads Manager, choose Edit Ad and check that Tracking parameters contain the template from Step 3. If you set the template as the account default instead, turn on I set the parameters at the account level in Ads Manager under Tracking.
​

No spend showing yet after connecting

Give the first sync a few minutes, and note that data refreshes on a 30-minute cycle. OpenAI also reports spend 7 to 8 hours late, so very recent activity may not appear yet.
​

Conversions aren't attributed to ChatGPT Ads

Confirm the ad has Cometly's URL parameters. If your landing page redirects visitors to another URL, make sure the redirect keeps the full query string, including oppref and the comet_ parameters.
​


Still Need Help?

If none of these options work, please reach out to our customer support team via chat (if you're an Enterprise customer) or email us at support@cometly.com.


Let us know:

  • The name of the ChatGPT ad account you're trying to connect

  • A screenshot of the ad's Tracking parameters (Edit Ad) in ChatGPT Ads Manager

  • Whether the account shows Connected or New key needed in Cometly

Did this answer your question?