OpenAI Describes ChatGPT’s Advertising System
- •OpenAI engineers describe a ChatGPT ad system designed to interpret goals that evolve across conversation turns.
- •OpenAI says ChatGPT Ads reached $1 billion annualized revenue run rate in under 200 days; over 100,000 advertisers have run ads.
- •A separate LLM-driven ad service retrieves, filters, ranks and auctions candidates without delaying ChatGPT responses.
OpenAI engineers Ritendra Datta and Karthik Gopalratnam describe an advertising system built for ChatGPT, where user goals develop over multiple conversation turns. The system uses a custom post-trained frontier large language model (LLM) to call tools for ad retrieval, ranking, relevance checks, auctions and pricing. OpenAI says ChatGPT Ads reached $1 billion in annualized revenue run rate less than 200 days after launch, and more than 100,000 advertisers have run ads on ChatGPT since launch.
Unlike conventional systems that match ads to a search or page-view event, ChatGPT’s ad system tracks an eligible session as context changes across turns. The system can interpret references to earlier messages, distinguish current intent from stale context, and avoid treating every product mention as a purchase request. If users opt to personalize ads, the system can also use nonsensitive information from their past conversations. OpenAI says it runs ad selection in a separate service, using separate models and code from ChatGPT’s answer generation; if ad serving is slow or unavailable, the organic response continues without delay. Returning no ad is an ordinary outcome, and OpenAI says it serves an ad only when it is beneficial to users and advertisers.
For retrieval, the system can rewrite a conversation into multiple queries to preserve distinct commercial needs, then create semantic embeddings (numerical representations of meaning) to search for a broad pool of candidates. It uses multiple indices and approximate-nearest-neighbor search (fast search for similar meanings) to find relevant ads. Eligibility filters check creative and campaign availability, targeting locales, policy restrictions, remaining budget, spending pace, placement compatibility and advertiser-level deduplication.
Candidates that pass those checks are assessed for relevance to the user’s goal, predicted engagement and historical performance, then narrowed for an auction. The orchestrator nominates plausible candidates but does not choose the final ad or set its price; the auction handles admission thresholds, pacing, bids, quality-adjusted ranking, pricing and selection. Afterward, the orchestrator can block an ad that feels inappropriate in a particular conversation. An ad request that arrives after ChatGPT is ready to respond times out, because responses are not delayed for ads. The system sends an eligible ad creative and a separate, neutral preamble to the frontend, but server-side delivery does not guarantee display: the ad must arrive in time for that turn. The provided source ends while describing when the frontend displays the ad.