ChatGPT Ads Integration
Beta attribution, server-side conversion forwarding, and campaign cost reporting for self-serve ChatGPT Ads.
No AppRefer partner enablement required
What you need#
- An OpenAI Ads pixel ID and Conversions API key.
- An Ads API key if you want spend and ROAS reporting.
- The OpenAI campaign IDs owned by this app.
- App Store and/or Google Play destinations configured in AppRefer.
1. Connect conversion reporting#
- Open Dashboard → App Settings → ChatGPT Ads.
- Enter the pixel ID and Conversions API key, then save.
- Run the conversion connection test. It validates the request without recording a conversion.
POST https://bzr.openai.com/v1/events?pid={pixelId}2. Create the tracking link#
Create a tracking link with network openai. AppRefer gives it a crawlable URL in this format:
https://apprefer.com/o/{linkId}Use that URL as the ad destination. OpenAI appends the opaqueoppref click reference. AppRefer records only real OpenAI visits with a valid oppref; review crawlers can render the page without creating clicks. On Android, the landing page also passes AppRefer's click ID through Google Play Install Referrer.
Map campaign ownership explicitly
oppref value alone does not create campaign-level ROAS reporting in AppRefer.3. Connect spend reporting#
- Enter the Ads API key and save.
- Test reporting to read back the account ID, currency, and timezone.
- Add the campaign IDs that belong to this app.
AppRefer imports complete daily campaign partitions and re-pulls the current day through day three. Failed or partial responses never replace a previously complete partition. The first release enables automated cost and ROAS only for USD ad accounts; conversion attribution and CAPI forwarding continue to work for other currencies.
Country reporting uses OpenAI's official country segment. AppRefer also preserves an ISO two-letter country supplied by a trusted hosting edge on the click and attribution, so country can be carried into downstream event reporting without storing additional location data.
Event mapping#
| AppRefer lifecycle | OpenAI event |
|---|---|
| install | app_installed |
| signup / sign_up | registration_completed |
| trial start / qualified_trial | trial_started |
| initial subscription, including intro or promo | subscription_created |
| non-renewing or one-time purchase | order_created |
| renewal, cancellation, expiration, billing issue | Not forwarded |
When Qualified Trials is enabled, the initial trial event is held and only trial_started is sent after qualification. AppRefer does not send app_opened in this release.
Privacy and delivery#
Credentials are encrypted at rest and masked in dashboard and API responses. Conversion payloads use the original oppref, a stable event ID, mobile-app action source, supported hashed match fields, and ISO currency minor units. Retryable failures reuse the same event ID; events outside OpenAI's seven-day acceptance window are discarded.