Back to feed
News Story
机器之心
1 sources

Developer Confirms: OpenAI Ads Are Collecting Your Behavior Across Sites

Security researcher buchodi published a technical investigation reverse-engineering OpenAI's ad platform (codenamed bazaar), finding that ChatGPT plants a cookie named __obi that links browsing behavior back to ChatGPT accounts when users visit third-party sites with OpenAI ad pixels installed. The cookie is set with SameSite=None; Secure and a one-year expiry, and the ad pixel SDK also actively scrapes form data such as email, phone, and postal code. The researcher verified the mechanism through packet capture reproduction and months of traffic analysis covering 936 advertiser pixels, including Chewy, Wayfair, and Coursera.

SynthePulse Insight · AI deep readingMembers

How a Single __obi Cookie Turns ChatGPT Into a Cross-Site Tracker

Version 1 · 1 source

After reverse-engineering OpenAI's advertising platform "bazaar," security researcher buchodi claims that ChatGPT uses a one-year __obi cookie to link users' browsing behavior on third-party sites back to their accounts; the mechanism is nothing new structurally—what's new is that it runs on an AI chat product.

  • Researcher buchodi claims the ChatGPT client generates a 16-byte random identifier, exchanges it for an RS256-signed JWT (valid for 60 seconds), then cross-site exchanges it for the __obi cookie.
  • __obi is set with SameSite=None; Secure, valid for one year, and is explicitly designed to be sent in cross-site requests.
  • The researcher claims that simply opening a webpage containing the OpenAI ad pixel causes the browser's request to load the pixel SDK to carry the cookie—before any OpenAI code executes, the identifier has already been sent back.
Open section navigationA Cookie's Three-Step Journey

A Cookie's Three-Step Journey

According to buchodi's technical report, the entire chain has three steps: when a user opens ChatGPT, the client generates a 16-byte random identifier and exchanges it via the POST /backend-api/bazaar/obi/sync-token endpoint for an RS256-signed JWT, binding the random identifier to the account with a 60-second validity period; the client then sends the JWT cross-site to bzr.openai.com/v1/obi/sync, and the server returns the __obi cookie; thereafter, when the user visits a website containing the OpenAI ad pixel, the browser automatically carries __obi back to OpenAI's servers.

The key detail lies in the cookie attributes: __obi is set with SameSite=None; Secure and a one-year validity period. The researcher claims this means it is explicitly designed to be sent in cross-site requests. More notably, in the packet captures, the browser's request to load the ad pixel SDK itself carries the cookie—before any OpenAI code executes, the identifier has already been transmitted back.

A distinction must be made: the above are technical details disclosed unilaterally by the researcher, and OpenAI did not respond in the source on which this article is based, so these mechanism descriptions should be treated as source_claim rather than facts confirmed by both parties.

Free for now

Read the full analysis

4 more sections of analysis, plus the full takeaway

Loading

Credibility boundary

This article is based solely on Machine Heart's relayed account of security researcher buchodi's report. The technical mechanisms, collection figures, and reproduction conclusions are all unilaterally disclosed by the researcher and constitute source_claim; OpenAI did not respond in the source, and there is no independent third-party verification. Information such as the ad launch timing, pricing, privacy policy update, and class-action lawsuit likewise comes from that relayed account and has not received independent confirmation beyond the source on which this article is based.

Primary report

机器之心

Primary source