The ChatGPT app open on a smartphone screen

Your ChatGPT Ad Can Win the Auction and Still Not Show

OpenAI’s own account of the ChatGPT ads system says an ad can win its auction and still never appear. The company published the mechanics on 22 October 2026. The path from a live campaign to a served impression has five points where a placement can drop out before a single person sees it.

That sounds like a technicality until you are looking at a campaign with low impressions and deciding what to change. Higher bids only fix one of the five, and if your ad is stopping earlier in the chain, more money buys a faster no.

The 5 places an impression can stop

OpenAI describes an ads system that runs separately from the model writing the answer. Each of the 5 stages fails in a different way, and a higher bid only touches one of them. A slow ad misses its slot rather than arriving late.

StageWhat decides itWhat it looks like to the advertiser
Query buildingThe orchestrator converts parts of the conversation into queries and embeddingsNo ad was ever found for that conversation
EligibilityLocation targeting, policy restrictions, budget and pacingAn ad exists, but it is not allowed to run here
AuctionA separate tool ranks, prices and selects the winnerEligible, entered, not selected
Post-auction checkWhether the winning ad fits that specific discussionWon, then withheld
Delivery windowWhether the ad arrived before the answer was servedWon, missed the slot

How the orchestrator reads a conversation

OpenAI calls the ad-selection model the orchestrator, and it works on what the company calls stateful sessions. Each new message does not reset the context, so a detail mentioned several messages earlier still counts when a later question turns commercial.

OpenAI’s own example is the clearest one. Someone researching project management software might explain that they run a small agency, need client approvals and want to avoid paying for guest accounts, then ask about pricing five messages later. That pricing question is a different query from a search for “project management software pricing”, because it carries the agency detail and the guest-account requirement with it. That is query fan-out with an earlier conversation attached.

The practical consequence is that a landing page has to support the specific detail the conversation surfaced. An ad that promises free guest accounts and lands on a generic pricing table wastes the one advantage the conversation gave it.

The auction is a separate tool, and better creative cannot buy it

The language model decides which ads enter the auction. It does not pick the winner and it does not set the price. A separate auction tool handles final ranking, pricing and selection.

The optimisation target then splits in two. Relevance to the conversation gets your ad into the room. Everything after that, price and rank, is decided by an auction you cannot influence with better creative. OpenAI has not published how much weight any single signal carries, which leaves advertisers guessing at the boundary between the two.

What OpenAI left out

The company’s numbers describe adoption, not outcomes. ChatGPT Ads reached a $1 billion annualised revenue run rate less than 200 days after launch, and more than 100,000 advertisers have run campaigns since launch. Neither figure says what those advertisers got for the money, and the post includes no cost per acquisition, return on ad spend or conversion benchmarks by industry.

The reporting gap is the bigger problem for anyone running a campaign today. OpenAI says its internal logs record where an ad stopped, including searches that found no candidates, ads that failed eligibility checks and placements that appeared and received an interaction. The post does not say how much of that an advertiser can see. Without it, you test in the dark against a five-stage funnel.

How to isolate the stage with 4 single-variable tests

  1. Write down the exact question your customer would ask, then have three separate conversations that arrive at your category in different ways. Note whether any ad appears at all, your own or a competitor’s.
  2. Hold the creative steady and move the location targeting from narrow to broad. If impressions do not change, eligibility is not your constraint.
  3. Hold the bid steady and change the budget and pacing. A flat result here points at the auction or the relevance check.
  4. Change the landing page to match one specific requirement from the conversation, and leave the ad copy alone. When you cannot change one variable at a time, you learn nothing from the result.

This announcement matters less for what it reveals about ranking than for what it admits about measurement. An auction you can win and still lose is a normal advertising mechanism. A funnel with five stages and no advertiser-side report is a bigger problem, and until OpenAI ships one, spend small and watch the creative-to-conversation match rather than the bid.

Source: Search Engine Journal’s report of 22 October 2026.

Before an ad can be placed, a page has to be found, and the Cloudflare pilot changed what OAI-SearchBot can reach. Published and eligible is not the same as used, which is also what the llms.txt request logs showed. The longer argument about why machine-readable pages keep winning is in first-hand experience as a content moat. More AI search arguments sit in AI Search.

Leave a Comment

Scroll to Top