ChatGPT Shopping results explained: what triggers them and why your products don't show up

ChatGPT Shopping carousels aren't magic and they aren't random. Here's what actually determines whether your products get pulled into a carousel, cited as text, or ignored completely.

Key takeaways

  • ChatGPT Shopping carousels are built mostly from Google Shopping's organic top 40 results, re-ranked by ChatGPT, plus merchant product feeds submitted directly through OpenAI's Agentic Commerce Protocol (ACP). There is no secret third index.
  • Only about 59.5% of shopping-intent queries trigger a carousel at all, according to AEOsome's analysis of 8,520 real queries. The query's intent stage matters more than almost anything else: "Where can I buy X under $100" triggers a carousel 93% of the time, while post-purchase questions trigger one 2.8% of the time.
  • A malformed feed row kills a product silently. Missing or unrecognized availability values, unstable variant IDs, and absent GTINs are the most common, least-diagnosed reasons products never make it into the pool ChatGPT re-ranks from.
  • Paid Google Ads have zero influence on ChatGPT's product carousels. Only organic Google Shopping listings feed the pipeline, so this is a feed-optimization problem, not a bidding problem.
  • Instant Checkout, OpenAI's original in-chat purchase flow, has effectively been abandoned. Only around 12 Shopify merchants and 12 Etsy sellers ever actually used it, and OpenAI pivoted in March 2026 toward product discovery with checkout handled on the merchant's own site.

What ChatGPT Shopping actually is

When someone types "best espresso machine under $400" into ChatGPT, two different things can happen. ChatGPT can answer with plain text and a few citations, or it can pop a visual carousel of product cards with prices, ratings, and a buy link. That second behavior, the carousel, is what people mean when they say "ChatGPT Shopping." OpenAI's own help documentation describes it as shopping research: a multi-step process where ChatGPT asks clarifying questions, pulls in product data, and eventually returns a written buyer's guide with a short list of top picks.

Where that product data comes from is the part most brands get wrong. Research from Peec AI, summarized in a Precis masterclash with Peec AI's Malte Landwehr, found that essentially every product shown in a ChatGPT Shopping carousel could be traced back to the top 40 organic results in Google Shopping for the matching query. Bing Shopping explained only about 11% of carousel products, almost never exclusively. OpenAI's own merchant documentation complicates the picture slightly by noting that ChatGPT can also crawl product pages directly without a feed, but a feed gives you control over pricing and availability accuracy that crawling alone doesn't. In practice, both things are true at once: you're fighting for a slot in Google Shopping's organic results, and you're also expected to submit a structured feed if you want consistent representation.

OpenAI's help center page explaining how shopping research works in ChatGPT

This is the part most merchants underestimate. Shopping-triggered responses are not the default behavior for commercial queries, they're a specific feature that OpenAI toggles on and off for a subset of responses. Promptwatch's tracking of ChatGPT's web-search responses found that shopping features (product cards, price comparisons, shopping recommendations) attach to only a low single-digit percentage of responses overall, and that the rate moves in sudden step changes rather than drifting gradually, which suggests OpenAI is actively tuning how often shopping appears rather than it being a stable, organic rate. You can see the detail in Promptwatch's ChatGPT Shopping Feature Usage data. The rate is much higher for commercial and transactional prompts specifically, which is useful context: if you're only measuring "shopping trigger rate" against all prompts, you're diluting the number with queries that were never going to show a carousel in the first place.

AEOsome's study of 8,520 real ChatGPT shopping queries puts a number on this too: only 59.5% of queries with clear shopping intent actually produced a carousel. The other 40.5% got a text answer with no products shown, no matter how well-optimized the merchant catalogs behind those products were. The strongest predictor they found wasn't feed quality, it was query intent stage. Queries phrased as purchase execution ("where can I buy a midi dress under $100") triggered carousels 93% of the time. Queries at the comparison stage only hit 15.3%. Post-purchase questions barely register at 2.8%. If your product "never shows up," the first question to ask isn't about your feed, it's whether the queries you're testing are even the kind of query that gets a carousel at all.

One more detail from that same study: naming a specific competitor brand in the query narrows the field hard. Carousels without a named brand show 5.1 distinct brands on average; carousels where a brand is named drop to 1.64 brands. If a shopper types "Nike running shoes under $150," you're not getting into that carousel unless you're Nike or a close substitute ChatGPT decided to surface anyway.

Why your feed might be silently rejecting your own products

OpenAI's native product feed spec for the Agentic Commerce Protocol has nine required fields: item_id, title, description, url, brand, seller_name, image_url, availability, and price. Price has to be formatted exactly right, for example "79.99 USD" with a three-letter ISO currency code. Availability has to be exactly one of in_stock, out_of_stock, pre_order, backorder, or unknown, and if the value is missing, empty, or spelled wrong, the entire row gets rejected. Not deprioritized, rejected. The product simply doesn't exist in the pool ChatGPT re-ranks from.

This is where most of the "invisible product" complaints actually live. A few concrete failure modes:

  • Variant IDs that aren't stable or get reused for a different SKU when inventory changes. The spec requires each variant ID to be unique and permanent.
  • Missing GTINs. Technically optional, but GTINs are the key engines use to match a product across sellers, so omitting one makes a product harder to match and easier to outrank. Products with certain GTIN prefixes get rejected outright.
  • Mixing feed formats. If you upload a Google-compatible feed instead of OpenAI's native format, the availability field spelling changes (preorder with no underscore, and "unknown" isn't accepted at all on that path). Teams that copy-paste between the two formats break things without noticing.
  • Stale stock data. The spec expects fresh availability with each submission; some merchants push updates as infrequently as once a day when the window for freshness is closer to every 15 minutes.

One thing worth clearing up because it gets repeated a lot: your on-page JSON-LD Product schema is not a direct input to this feed. Rewriting your structured data doesn't move you closer to ACP eligibility. Schema still matters for Google Merchant Center indexing, which indirectly feeds the organic Google Shopping results ChatGPT re-ranks from, but it isn't the same pipeline as the feed you submit to OpenAI.

Instant Checkout is basically dead, and that matters for strategy

For a while, OpenAI's pitch was that shoppers could complete a purchase entirely inside ChatGPT via Instant Checkout. In March 2026, OpenAI quietly walked that back. Their own blog post framed it as moving away from a standalone Instant Checkout experience toward merchant-owned checkout, admitting the initial version "did not offer the level of flexibility" they wanted. The real numbers explain why: despite over a million Shopify merchants being announced as eligible, only about 12 actually integrated Instant Checkout. Etsy had roughly the same. Walmart made around 200,000 products available and found conversion rates were three times lower for purchases completed directly inside ChatGPT compared to purchases that sent the shopper to Walmart's own site, partly because customers feared getting multiple separate shipments if they bought several items at once inside the chat.

What this means practically: the strategic priority for most merchants is now discovery, not in-chat checkout. Get your product surfaced and clicked through to your own store, where your existing conversion optimization and checkout flow can take over. Larger retailers like Walmart, Sephora, and Etsy are now building dedicated ChatGPT Apps for deeper integration, but OpenAI's own guidance is that most merchants should start with a product feed and treat Apps as optional, suited to brands that want tighter control over loyalty and account linking.

ACP vs UCP: the two protocols you'll run into

Google has its own parallel standard, the Universal Commerce Protocol (UCP), for AI Mode in Search and Gemini. The practical difference: ACP requires pushing a structured product feed to OpenAI and, if you want in-chat checkout, implementing several checkout endpoints. UCP requires hosting a JSON manifest at /.well-known/ucp on your own domain describing what your store can do. If you already run a Google Merchant Center feed, you can reuse it for UCP discovery without building a new catalog. A store with no UCP manifest gives Google's shopping agents nothing to connect to, even if that store ranks well in organic Search.

ProtocolOwnerWhat you submitCheckout model
ACP (Agentic Commerce Protocol)OpenAIProduct feed via SFTP/API to an OpenAI endpointMerchant-owned, OpenAI moved away from in-chat Instant Checkout in March 2026
UCP (Universal Commerce Protocol)GoogleJSON manifest at /.well-known/ucp, can reuse existing Merchant Center feedNative (direct) or embedded (iframe, approval required)

~70% of the required fields overlap across ACP, UCP, Microsoft Copilot Checkout, and Alexa for Shopping, including GTIN, title, description, primary image, price, availability, brand, and category. Fixing your feed properly for one pays off across most of these at once.

What actually correlates with getting cited, not just shown

Even when a carousel doesn't appear, ChatGPT still cites product and landing pages constantly in its text answers. Promptwatch's citation-type breakdown for the period Sep 28 to Oct 4, 2026 found product pages were the single most-cited content type in ChatGPT overall, at 22.4% of all classified citations, with landing pages second at 16.8%. For commercial prompts specifically, that climbs: product pages hit 26.0% and landing pages 20.6%, meaning these two formats alone cover nearly half of all commercial citations (see Promptwatch's citation share by content type). Reviews barely register at the baseline level (1.7%) but jump to 5.6% once a specific brand is named in the query, a sign that once someone mentions your brand directly, third-party proof matters a lot more.

Domain authority also has a sweet spot worth knowing. Promptwatch's citation-share-by-domain-rank data for August 2026 found that mid-to-high authority domains (DR 46-75) captured close to half of all ChatGPT citations, while the very top tier (DR 91-100) actually shrank from about 7% to roughly 3% mid-month. You don't need to out-rank Amazon's domain authority to get cited; you need a clean, well-optimized product page in a realistic DR band.

A practical checklist before you assume your feed is fine

  1. Confirm availability values are exactly in_stock, out_of_stock, pre_order, backorder, or unknown with no typos or blanks.
  2. Check variant IDs are unique and never reassigned to a different SKU after a restock or relaunch.
  3. Add a valid GTIN wherever one exists; don't invent one if it doesn't.
  4. Make sure price is formatted as a number plus a three-letter ISO currency code.
  5. If you're on Shopify or Etsy, your catalog is already integrated with ChatGPT's merchant program and no application is required; everyone else has to apply through chatgpt.com/merchants and may sit on a waitlist.
  6. Separately, check your Google Merchant Center feed, since that's what feeds the organic re-ranking path even if your ACP feed is perfect.
  7. Test the actual queries customers would use, phrased at the purchase-execution stage, not just category-exploration phrasing, since intent stage swings carousel appearance by as much as 90 percentage points.

Where tools fit in

Fixing a feed is a technical, SKU-level job that most brand-mention or AEO tracking tools don't touch, since they're built to watch what AI says about your brand, not whether a specific product row passed a validation check. For catalog-level monitoring, tools built for ecommerce specifically, like [tool:alhena-ai], [tool:ranketta], [tool:zoovu], and [tool:yotpo-discover], focus on tracking how individual products surface across AI shopping surfaces rather than generic brand mentions. [tool:azoma] is built specifically around agentic-commerce GEO, which is closer to the ACP/UCP problem described above.

For the broader question of how your brand shows up across ChatGPT, Perplexity, Gemini, and Google AI Overviews beyond just the shopping carousel, Promptwatch tracks citations, crawler activity, and content gaps across all of these surfaces and layers in its own crawler logs to show exactly when AI bots visited your product and category pages and what they did when they got there, which is useful for diagnosing whether the problem is your feed, your page content, or simply that AI crawlers aren't reaching those pages at all.

Favicon of Promptwatch

Promptwatch

Track and improve your AI search visibility
View more
Screenshot of Promptwatch website

If you want to see how this compares against the rest of the category, the GEO software directory at bestgeosoftware.com lists the tools actively competing in this space, and the AI rank tracking directory at ai-rank-tools.com is a good starting point if prompt-level tracking is your main need rather than catalog-level feed diagnostics.

The bottom line

"My products don't show up in ChatGPT" is almost never one single problem. It's usually some mix of: the query you tested wasn't the kind of query that triggers a carousel at all, your Google Shopping organic position is outside the top 40 for that query, or a feed row is getting silently rejected because of a malformed availability value or an unstable variant ID. Work through those three in that order before assuming it's a content or SEO issue. And if your actual goal is broader AI visibility rather than just carousel placement, remember that product and landing pages already dominate ChatGPT's citations for commercial queries, so the content work you'd do for that pays off even on the days the carousel doesn't appear.

Share:

AI Search Visibility Tools

© 2026 AI Search Visibility Tools · The best AI search visibility tools compared · RSS

AI Search Visibility Tools is an affiliate review site. When you click links to vendors or buy through links on our site, we may earn an affiliate commission at no extra cost to you.

AI Search Visibility Tools is a review website based on user reviews on Reddit and G2, and on publicly available information. We keep everything as up to date as possible, but pricing and features can change. Always confirm the details with the vendor before purchasing.