Why You're Not in ChatGPT Shopping

Agent behavior changes with every model update.
Last verified: 2026-07-07

If your store isn't showing in ChatGPT shopping, the cause is almost always product-data gaps (vague titles, missing availability or category, or AI crawlers blocked in robots.txt), not a hidden eligibility setting.

On this page
  1. The diagnostic order
  2. 1. Are the crawlers blocked?
  3. 2. Are there gaps in your product feed?
  4. 3. Do your titles and categories match the query?
  5. 4. Have you cleared the official eligibility bar?
  6. When to stop guessing and measure
  7. This page diagnoses; the playbook optimizes

Key takeaways

  • A store missing from ChatGPT shopping is almost always a data-legibility problem, not an eligibility one, so work the causes in a fixed order instead of changing everything at once and refreshing to see what happens.
  • Diagnose in sequence, most fundamental cause first: can the crawlers reach your pages, is the feed complete enough to represent a buyable item, do your titles and categories carry the words a shopper types, and only then, have you cleared the official eligibility bar?
  • Step one rules out the silent blocker: confirm the surfacing crawlers (OAI-SearchBot, ChatGPT-User) can actually fetch a live product URL. A WAF, a CDN bot-manager, or a stray Disallow returning a 403 is just as fatal as being ineligible, and far easier to miss.
  • Most misses resolve at steps two and three: a feed row with no availability can't be represented as buyable, and a title without the words a shopper types has nothing to match against.
  • There is no hidden 'enroll' switch to flip. Once you've ruled out the data causes and cleared eligibility, stop diagnosing and measure. This page finds the cause, and the ChatGPT optimization playbook is where the fixes live.

The diagnostic order

When your products don't appear in ChatGPT, the instinct is to change everything at once: rewrite titles, resubmit the feed, edit robots.txt, and refresh to see what sticks. Resist it. The causes sit in a dependency chain, and fixing a downstream one while an upstream one is still broken changes nothing you can observe, which is how stores waste weeks chasing the wrong lever.

Work the causes in this order, stopping at the first one that's true:

  1. Can ChatGPT's crawlers reach your pages? If they're blocked, nothing downstream is visible, so this is always first.
  2. Is your product feed complete enough to represent the item as a purchasable offer?
  3. Do your titles and categories contain the words a shopper actually types?
  4. Have you cleared OpenAI's own eligibility process?

This page is the reactive "why am I not showing?" flow. Each branch below tells you how to confirm whether it is your cause, then hands you off to the page that fixes it. It diagnoses, it does not re-teach the fix. When you want the proactive, do-all-of-this-up-front version instead, that is the ChatGPT Shopping Optimization playbook, which is this page's sibling: one troubleshoots, the other optimizes.

1. Are the crawlers blocked?

Two separate pipes carry your products into ChatGPT (your structured product feed and your live pages), and the fastest miss to rule out is that ChatGPT simply can't read the second one. OpenAI documents the agents that surface sites inside ChatGPT: OAI-SearchBot, which indexes and links pages and carries a named user-agent token that robots.txt can allow or disallow, and ChatGPT-User, the fetch triggered when a user's own request reaches your URL, whose robots.txt rules may not apply because that fetch is user-initiated rather than a crawl.Spec-factOpenAI, Bots documentation A Disallow blocks OAI-SearchBot outright, but ChatGPT-User needs a different lever: because robots.txt may not govern it, a merchant who wants to control that fetch has to look at a web application firewall, a CDN "bot manager," or a "block AI bots" plugin at the edge instead. Either path (a robots directive or an edge-layer block) still adds up to the same failure mode: if either agent gets shut out, it cannot see your catalog at all, and every later step is moot.

The diagnostic is concrete: fetch a live product URL the way one of those agents would, and confirm it returns the page and not a block. If it doesn't, that's your cause, and the allow-list that fixes it, plus the edge-layer gotchas that cause most accidental blocks, live in AI crawlers, robots.txt & llms.txt for stores. Fix it there, then come back and check whether the products appear before touching anything else.

2. Are there gaps in your product feed?

If the crawlers can reach you and you're still missing, the next cause is a feed too thin for an agent to treat your item as a real, buyable offer. The Agentic Commerce Protocol (the open standard OpenAI and Stripe use for ChatGPT commerce) defines the product-feed fields an agent consumes, including availability and price, so an item can be represented and transacted.Spec-factAgentic Commerce Protocol: product feed spec A feed row that leaves availability blank can't be shown as in stock, and one with no category is hard to file under the category a shopper is browsing. Those are legibility gaps, not eligibility failures: the item is allowed, it's just under-described.

This is a data-completeness problem, and the fix is a checklist rather than a switch. Rather than repeat it here, walk it in make your product feed AI-readable, which covers exactly which attributes to fill and why the gaps are what make agents skip you. Return here only if a complete feed still doesn't surface you.

3. Do your titles and categories match the query?

With the crawler and the feed both cleared, the remaining common cause is subtler: you're eligible, visible, and complete, but nothing you publish contains the words the shopper is actually typing. Agents match a shopper's query against your title and category fairly literally, so a brand-led title like "The Luna" has nothing to match for a query like "organic cotton weighted sleep mask", which is how a perfectly eligible product can stay invisible for the exact search it should win.Hypothesis (our analysis)

This is the one cause that looks like an eligibility problem but is really a matching one, and it's why "we did everything right and still don't show" is so common. The fix (the title formula that leads with category, attribute, and use-case) is in product titles that AI agents match; this page's job is only to point you there once the two upstream causes are ruled out.

4. Have you cleared the official eligibility bar?

Only after the three data causes are genuinely excluded is it worth suspecting eligibility, and even then, eligibility is the one branch we deliberately link out on rather than teach, because it is official-docs turf and it changes. The Agentic Commerce Protocol's own FAQ says implementing it does not guarantee automatic product listings: each AI platform "will manage their own process" for how businesses can participate, so passing the protocol's technical bar and clearing a platform's eligibility review are two different things.Spec-factAgentic Commerce Protocol

OpenAI runs its own merchant eligibility process, and the canonical place to confirm your status and requirements is OpenAI's merchant page at chatgpt.com/merchants (opens in new tab)(opens in new tab). We deliberately do not restate the eligibility criteria or enrollment mechanics here; they are OpenAI's to define and they change on OpenAI's schedule, so confirm the current requirements on the official page rather than relying on any restatement, ours included.

What eligibility is not is a hidden toggle buried in a dashboard: there is no secret "turn me on" switch that a merchant is failing to find. Once you've met the published requirements and your data is legible, you are in the candidate set, and everything that decides whether you actually get recommended from there is selection, not eligibility.Hypothesis (our analysis)

When to stop guessing and measure

Once you've walked the tree and fixed what you found, resist the urge to keep eyeballing ChatGPT and hoping. Being in the candidate set (eligible and legible) is not the same as being the product the agent recommends; that is a separate outcome, and it moves. The disciplined next step is to measure it: run a repeatable protocol and track your agent win rate rather than reacting to a single lucky or unlucky prompt. How we test agent selection gives you the prompts, sampling, and error bars to do that honestly, so a fix you shipped shows up as a real, repeatable change and not a coincidence.

This page diagnoses; the playbook optimizes

Keep the two jobs separate. This page is the reactive decision tree: the flow you run after you notice you're missing, to find the single cause. ChatGPT Shopping Optimization is the proactive playbook: the feed, title, and crawler work you do up front so you never end up here. They are deliberate siblings: diagnose on this page, fix on that one. The same four-branch logic applies to the other engines on different rails: Gemini and Google AI Mode and Perplexity each have their own troubleshooting surface, reached from the platforms hub.

[ newsletter ]