Advertisers can use email addresses and phone numbers they already hold to reach matching ChatGPT users, while the subjects people discuss with the chatbot help determine which ads appear. 404 Media reports testing the advertising system by running two campaigns; OpenAI’s documentation confirms both customer-list targeting and conversation-based ad selection.

That means an ad beneath an answer can reflect both what someone is discussing and their presence on a company’s customer or prospect list. OpenAI says advertisers do not receive the conversation. But turning off ad personalization still leaves the current chat available to help select ads.

Two ways an ad can reach you

Customer-list matching: an advertiser uploads identifiers that OpenAI matches to users, then uses the resulting audience to restrict who is eligible or change its bid. Conversation relevance: OpenAI considers the current chat alongside information about the advertisement, including advertiser-written “context hints.” OpenAI says advertisers receive aggregate performance reporting, not your chats or individual match results.

In its October 15 report, 404 Media’s Joseph Cox describes buying ads warning that ChatGPT chats can be read by human reviewers. The outlet supplied context hints about privacy and technology discussions. Its experiment establishes that it ran advertisements and inspected the targeting options; it does not demonstrate that a particular uploaded identifier caused a particular person to see an ad.

OpenAI’s custom-audience instructions explain the available controls. Advertisers can upload raw or SHA-256-hashed email addresses and phone numbers, with hashing converting an identifier into a matching value. They can also upload Google Advertising IDs, advertising identifiers used on Android rather than hardware phone identifiers.

The decisive threshold is 25,000 matched users, not 25,000 uploaded entries. An audience must reach that size to restrict campaign eligibility or adjust bids. Smaller audiences can be used to exclude people. OpenAI says advertisers cannot see individual matches or select a named person within an audience. The threshold prevents selecting a tiny inclusion audience; an individual member of a qualifying group can still receive its targeted ads.

Audience membership can also change how much an advertiser competes for a placement. OpenAI allows bid multipliers from 0.1 times to 10 times an ad group’s maximum bid. Being on a list does not guarantee an impression: relevance and competing bids also matter.

Context hints work differently. Advertisers describe situations where their offering fits, such as running shoes for beginners training for a first 5K. Users need not type those exact words. OpenAI says hints inform relevance but cannot guarantee delivery to a conversation or enforce exclusions. The company does not disclose how much weight each signal receives.

According to OpenAI’s consumer FAQ, ads appear for eligible Free and Go users in select regions. Plus, Pro, Business, Enterprise and Edu are ad-free, as are accounts identified as belonging to minors. Custom audiences are unavailable for campaigns targeting the European Economic Area or Switzerland. The separate advertiser availability list does not establish where every consumer currently receives ads.

OpenAI says placements are labeled as sponsored, separated from answers and cannot influence ChatGPT’s responses. Those are company assurances, not an independent audit. A sponsored label identifies an advertisement; it does not itself explain whether customer-list membership helped select it. The ad menu offers “About this ad,” although the documentation reviewed does not establish whether that explanation identifies a custom-audience match.

ControlWhat it changesLimit or tradeoff
Turn off ad personalizationStops using other chat threads, ad history and topics to select ads.Current-chat ads remain. Its effect on custom-audience inclusion and bid adjustments is undocumented.
Turn off past chats and memory for adsExcludes those sources from ad selection.Does not remove ads or current-chat relevance.
Use Temporary ChatNo ads appear in that chat.Does not establish deletion of advertiser-supplied audience membership.
Choose Ads-Free on FreeRemoves ads.Lower message limits and reduced tool access; availability varies. Not offered directly on Go.
Use Plus or ProProvides an ad-free subscription.Requires paying for the plan.

These settings live under Settings > Ad Controls. The unresolved point is whether switching personalization off also disables customer-list targeting. OpenAI’s consumer and advertiser documents do not explicitly connect the toggle to audience inclusion or bid adjustments. That omission does not prove matching continues.

Retention also needs careful separation. OpenAI says uploaded audience files are deleted after processing, usually no later than 24 hours after upload. The usable audience created from that file persists beyond processing and can receive additions or removals. Deleting the upload therefore does not mean deleting the targeting audience.

  • Usually within 24 hours of uploadOpenAI deletes the uploaded audience file after processing.
  • After processingThe resulting audience remains manageable and usable. The documentation does not specify when underlying membership data is erased.
  • Up to 30 days after clearing ads dataConsumer ads-history and topic data may remain on OpenAI’s servers, although OpenAI says it stops using that data for ads upon deletion. This deadline does not expressly cover advertiser-supplied membership.

OpenAI’s developer documentation explicitly describes internal hashing for Google Advertising IDs. It does not provide an equivalent assurance for raw email and phone uploads; Cox reports that OpenAI did not answer that question. Nor does hashing alone make an identifier anonymous.

Our read is that the controls offer a clear way to avoid seeing ads, but an incomplete explanation of how to stop customer-list matching. The question OpenAI still needs to answer plainly is whether turning personalization off prevents an advertiser’s existing knowledge of a user from influencing the next placement.