Trcker already tracks the conversions your paid traffic drives. Connect your ad platform and Trcker pulls the spend too — so you finally see cost per acquisition and return on ad spend side by side. ChatGPT Ads today; Google Ads and Meta next, behind the same connector.
| Offer | Spend | CPA | ROAS |
|---|---|---|---|
| Free trial signup | $1,240 | $14.76 | 3.4× |
| Pro upgrade | $880 | $40.00 | 3.8× |
| Annual plan | $520 | $57.78 | 4.2× |
In Integrations → Ad Spend, paste your OpenAI Advertiser API key (Ads Manager → Settings → General → Create New API Key). It's stored encrypted at rest and only ever used to read spend — it's a different key from your Conversions API key.
Trcker discovers your campaigns on the first sync. Map each one to a Trcker offer to get precise per-offer CPA and ROAS. Unmapped spend still rolls into your brand-level numbers — nothing is lost while you set up.
A brand-level Spend / CPA / ROAS tile lands on your Overview, and per-offer Spend / CPA / ROAS columns appear on your Offers table. Spend refreshes automatically every day; hit Sync now for an on-demand pull.
ChatGPT Ads is the first connector, written as a direct Advertiser-API integration. Google Ads and Meta slot in behind the same interface and the same Spend/CPA/ROAS surfaces — no new dashboard, no new mental model.
See all integrationsOpenAI ChatGPT Ads today. The connector is built as a platform-agnostic adapter framework, so Google Ads and Meta are designed to slot in behind the same interface and surface CPA/ROAS the same way.
No. The Advertiser API key (Ads Manager → Settings → General → Create New API Key) reads spend and is distinct from the Conversions API key that sends conversions back to OpenAI. Trcker stores the Advertiser key encrypted and only uses it to read your spend.
CPA is ad spend divided by the conversions attributed to that ad traffic (clicks tagged as ChatGPT-sourced), and ROAS is the revenue from those conversions divided by spend. Ad spend is never divided by your organic conversions, which would understate CPA and overstate ROAS. Per-offer numbers use the campaign→offer mapping; the brand-level tile blends all pulled spend.
A daily cron pulls a trailing window and upserts it, so late spend corrections are picked up. You can also trigger an on-demand sync from the connect card with Sync now.
The connection shows an error status with a short message, and your dashboard keeps showing the last good data — Trcker never displays partial or guessed spend. Fix the key or mapping and sync again.
Connect ChatGPT Ads in two minutes and get CPA and ROAS next to every conversion. Free during early access.
Request Access