ChatGPT ads: 100,000 advertisers and a $1B run rate in 200 days

OpenAI's ad business is now in 89 countries and has run campaigns for more than 100,000 advertisers, the company said today, adding 26 markets at once — 14 more in Latin America plus Nigeria, South Africa, Serbia, Ukraine, Cambodia, Bangladesh and Pakistan. Ads still appear only on the Free and Go tiers; Plus, Pro and Enterprise stay clean.
The expansion is the boring half of the announcement. The other half is that OpenAI published the engineering write-up of its ad stack the same day, and it is a more interesting document than the country list. ChatGPT reached a $1 billion annualized revenue run rate less than 200 days after ads launched, per that post, against $100 million in March, CNBC reported. What OpenAI built to get there is not a search-ad system with a chat skin on it.
The orchestrator is an agent, and it is not allowed to slow you down
The core architectural choice is separation. Ads run in their own service, on their own model, in their own codebase, with no shared content-generation model with the thing that writes your answer. OpenAI is explicit that this is a trust boundary first and an engineering convenience second: if the ads system is slow or down, the answer is unaffected, and "returning no ad is an ordinary, successful outcome."
Inside that boundary sits a custom, post-trained frontier model OpenAI calls the orchestrator, and it behaves like an agent, not a ranker. It rewrites a multi-turn conversation into several commercial queries — the write-up uses a Yosemite trip that turns into a hiking-shoe question three turns later — embeds them, and searches several approximate-nearest-neighbor indices, one of which is review-aware because product-feed ads carry reviews and other ads don't. Then it filters for budget, pacing, locale, policy and per-advertiser deduplication, scores the survivors on semantic relevance, predicted engagement and historical performance, and nominates candidates into an auction.
Two details there are worth more than the rest of the post combined. The first: the orchestrator does not set the price. It nominates; a separate auction tool computes bids, quality-adjusted ranking and pricing. That keeps the language model out of the money path, which is the single most sensible decision in the whole design — an LLM that could name a clearing price could also be talked into one. The second: the system maintains a stateful ad session across turns and, when a user opts into personalization, across past conversations, while the answers themselves stay blind to it.
The fill rate is a race against the model
Here is the part advertisers will learn to care about, and the write-up says it plainly. Server-side delivery of an ad is not an impression. The frontend shows the ad only if it arrives before ChatGPT's answer finishes generating, and OpenAI does not delay answers to wait. Two failures follow: the ad can time out, or the orchestrator can decide an ad that cleared every policy check still feels wrong in that conversation and block it.
That makes ad inventory a function of how long the answer model takes to write. A slower, longer, more deliberate response is more sellable surface; a faster model shrinks the window the ad stack has to win in. It also means the ads team's real engineering problem is not relevance, it is latency — which is why the post describes using smaller, cheaper worker models trained by OpenAI's strongest reasoning model, with that model judging outcomes and feeding the loop. The strongest model in the building sets the taste; the small ones do the bidding.
For a buyer, the consequence is uncomfortable: the impression count you are billed against is downstream of a serving race you cannot observe, on a platform that reports its own fill.
Who wins, who loses
The winner is OpenAI's revenue mix, in the run-up to a listing its executives have signaled for 2027. Ads are the line that makes the free tier a business instead of a subsidy, and 89 countries is what a demand-side platform needs before global brands will budget against it. Amazon already validated the channel — we covered Amazon handing its advertisers to ChatGPT in September, with Amazon's DSP buying the inventory and OpenAI keeping every delivery decision. That structure is the template: someone else brings the budgets, OpenAI keeps the auction.
The loser is the comparison query. "Best shoes for a two-day hike" is the exact commercial moment that funded a decade of affiliate sites, review farms and, in a smaller way, Google's shopping ads. Every one of those moves into a chat window, the take rate goes to the model provider, and the publisher who wrote the comparison gets nothing — no click, no cookie, no placement. Google keeps the demand but loses the moment; Amazon is hedging by buying in; Anthropic is running the opposite play, having pledged to keep Claude ad-free and made OpenAI's ads the subject of its first Super Bowl campaign, per CNBC.
The absolute numbers deserve a sceptic's read. A billion dollars of annualized run rate across 1.2 billion weekly users is less than a dollar per weekly user per year, before you subtract everyone on a paid plan or in a country where ads don't run yet. One hundred thousand advertisers sounds enormous until you remember that most are self-serve accounts testing a few hundred dollars — up from roughly 20,000 in August, per The Information, which is the impressive number and the fragile one. Long-tail advertisers churn; brand budgets don't.
And the trust claim is architecture, not audit. "Advertising does not influence the answers" is a statement about service boundaries, and it is a good one, but no outsider can verify that the orchestrator's relevance models and the answer model never share a signal, or that a stateful session across past conversations stops where OpenAI says it stops. We have already seen what the measurement side looks like in practice: OpenAI's ad pixel tracking ChatGPT users across 1,000 websites, classified as analytics rather than advertising, with automatic matching switched on for most of the credit and lending pixels observed.
What to watch
The next format is the one that matters. OpenAI says it is exploring "new ways for businesses to interact with consumers in more native ways," including letting users talk directly to businesses through ads. That is not an ad unit, it is a checkout — the point where a sponsored placement becomes a transaction and OpenAI starts competing with the retailers buying its inventory.
Watch three things: whether OpenAI publishes fill rate and CPM data, because no serious buyer scales without them; whether independent measurement firms get access to delivery logs, which would settle the "delivered but never shown" question; and whether the ad-free tier keeps its price. Ads on Free only make sense if they push some free users to pay, and a $1 billion run rate is a cheap way to find out how many.
If ads pay for the free tier, should OpenAI have to disclose what it earns per user? Write to us via our contact page.







