WeSearch

ChatGPT serves ads. Here's the full attribution loop

·3 min read · 0 reactions · 0 comments · 1 view

OpenAI's ad platform has two halves. On the ChatGPT side, the backend injects structured single_advertiser_ad_unit objects into the conversation SSE stream while the model is responding. On the merchant side, a tracking SDK called OAIQ runs in the visitor's browser and reports product views back to OpenAI.

Original article
Buchodi's Threat Intel
Read full at Buchodi's Threat Intel →
Opening excerpt (first ~120 words) tap to expand

28 Apr 2026 How ChatGPT serves ads. Here's the full attribution loop. OpenAI's ad platform has two halves. On the ChatGPT side, the backend injects structured single_advertiser_ad_unit objects into the conversation SSE stream while the model is responding. On the merchant side, a tracking SDK called OAIQ runs in the visitor's browser and reports product views back to OpenAI. The two are tied together by Fernet-encrypted click tokens, four of them per ad.I captured both halves on a consented mobile-traffic research fleet. Everything below comes from observed traffic.How an ad gets into a conversationWhen you send a message to ChatGPT, the backend opens an SSE response at chatgpt.com/backend-api/f/conversation. Most events in that stream are model-output. Some are ad units.

Excerpt limited to ~120 words for fair-use compliance. The full article is at Buchodi's Threat Intel.

Anonymous · no account needed
Share 𝕏 Facebook Reddit LinkedIn Threads WhatsApp Bluesky Mastodon Email

Discussion

0 comments

More from Buchodi's Threat Intel