· 18 min read · Geoptimizer Team

ChatGPT Shopping Visibility Starts in Your Product Feed

  • ai-commerce
  • chatgpt-shopping
  • product-feeds
  • ecommerce
  • generative-engine-optimization
ChatGPT Shopping Visibility Starts in Your Product Feed

If your client's products are missing from ChatGPT's shopping carousels, the fix is almost certainly not on their website. The largest public study of the surface — 43,000 carousel products drawn from roughly 5,000 ChatGPT carousels — found that over 83% of the products ChatGPT recommends match organic results from Google Shopping's top 40 positions, against about 11% for Bing (ALM Corp summary of the Peec AI research). ChatGPT does not consult a private product database when it builds a carousel; it fires product-shaped queries at Google Shopping's organic index and re-ranks what comes back. Which means the lever you actually control is the Merchant Center feed — while brand-level prompts, the ones that ask which brand is best, still behave like ordinary AI answers and move on a completely different clock.

That split is the whole story, and it is where most ecommerce GEO advice goes wrong. Teams read "ChatGPT Shopping" and go build an OpenAI product feed, or they read "AI visibility" and go write blog posts. Both are reasonable. Neither is the first move. Let's take the two paths apart.

Two different machines behind one chat box

The clearest evidence that shopping and brand answers are separate systems is in how ChatGPT expands a query before it retrieves anything. Researchers decoded hidden encoded fields in ChatGPT's page source and found that 98.3% of shopping fan-out queries differed from the model's normal search fan-outs (ALM Corp). Almost none of the retrieval work overlaps. When a user asks "best waterproof hiking boots under $200," the carousel and the surrounding prose are being assembled by two different pipelines, and the pattern held across branded and non-branded prompts in all ten verticals tested — the researchers read it as architecture, not an artefact of a particular query.

For an agency, that has an unglamorous but valuable consequence: these are two programmes with two owners, two timelines, and two reporting lines. Feed work moves in days. The Precis/Peec research documents a food brand whose products appeared in ChatGPT Shopping within one day of connecting its Merchant Center feed, complete with live pricing and availability (Precis). Brand-level position moves in months — Semrush found that once a brand holds a clear lead in a category, it keeps it in 90.4% of month-over-month comparisons (Semrush). Same chat box, two entirely different speeds. If you report them as one number, you will either take credit for feed wins you should have banked in week one, or you will look like you did nothing for a quarter while brand position was quietly consolidating.

It is worth knowing how often the carousel even appears, because that sets the size of the prize. Precis' European market study puts the trigger rate around 62% for apparel and fashion and over 30% for groceries. Categories where people want to see the thing get carousels; categories where people want advice get prose. Check which one your client is in before you spend a quarter on the wrong machine.

Here is the part that changes budgets. Because ChatGPT samples Google Shopping's organic results — not paid Shopping ads — carousel presence costs nothing beyond feed work, and no amount of Shopping spend buys you in. Precis states this plainly, and quotes Peec AI's blunt version of the finding: "100% of the products we saw in ChatGPT Shopping can be explained by the top 40 products in Google Shopping."

Top 40 is the outer boundary, not the target. Roughly 60% of carousel matches came from Google Shopping organic positions 1–10, and about 84% from positions 1–20, leaving positions 21–40 contributing only around 16% (Peec AI). So the working KPI for a hero SKU is organic Shopping rank in the top 20. If your client's best-margin product sits at position 28, it is technically eligible and practically absent — which is a much more actionable diagnosis than "we're not showing up in AI."

ChatGPT is not copying Google's order, though. It re-ranks, shifting products by roughly five positions on average, using attributes like comfort, durability, versatility and price range. And it applies a hard filter before ranking anything: products rated below three stars are effectively invisible in the carousel. That is a threshold, not a gradient — a 2.9-star hero SKU with a perfect feed will lose to a 3.2-star competitor with a mediocre one. If any priority product is under three stars, review generation outranks every other item on your list, because nothing else you do will be read.

Two structural mistakes recur in the practitioner literature, and both are worth auditing on day one. The first is a CSS (Comparison Shopping Service) configuration set up for ads in a way that breaks eligibility for Google's free listings — if you are not in the organic pool, you are not in the pool ChatGPT samples, and the cause lives entirely inside an ads setting. The second is reseller positioning: if a marketplace outranks your client on their own product in Google Shopping organic, the marketplace gets the ChatGPT slot (Peec AI).

The enrichment layer is where the headroom is. An organic supplementary feed in Merchant Center exposes roughly 36 additional attributes beyond the core feed (Precis), and most brands leave nearly all of them empty. Filling them is tedious, scalable with AI-assisted attribute extraction, and about as close to an unworked surface as GEO offers right now. Mike King put the underlying shift better than anyone: "Instead of describing your products to a search engine, you're describing them to an AI that can reason about them… Your product data effectively becomes your copywriting" (iPullRank).

What OpenAI's own product feed is really for

So if Google's index is doing the heavy lifting, why does OpenAI publish a product feed spec at all? Because it serves a different set of jobs — and being precise about which ones will save your client a quarter of misdirected engineering.

Mechanically, it is a push model, not a crawl. Merchants push files to an OpenAI-supplied endpoint over SFTP or allow-listed HTTPS; OpenAI does not pull from your site, and stable filenames get overwritten on each update (OpenAI). Parquet with zstd compression is preferred, sharded at up to 500,000 items per file, with a recommended cadence of at least daily — but the published Agentic Commerce Protocol spec notes the system accepts updates every 15 minutes (ACP feed spec). For a flash-sale or thin-inventory catalogue, that refresh floor is the real feature.

The required fields for non-ads feeds are unsurprising until you reach the last two: item_id, title (max 150 characters), description (max 5,000, plain text), brand (max 70), url, image_url, availability, price, seller_name and seller_url, plus geo fields — and then is_eligible_search and is_eligible_checkout, two per-product control flags (OpenAI feed spec). Those flags are the underrated part of the spec. They let you switch a subset of the catalogue into AI surfaces as a test without handing over conversion control on everything, which is exactly the shape of pilot most ecommerce directors will actually approve.

A few conditional rules bite in practice. gtin or mpn is required unless identifier_exists is set to no — and populating identifiers is what lets OpenAI match your listing to the same product sold elsewhere, which is what puts you in a comparison rather than beside it. availability_date is required for pre-order and backorder items, and seller_privacy_policy and seller_tos become required the moment checkout eligibility is switched on. The recommended fields include several with no equivalent in a standard Google feed: q_and_a, reviews, group_id and listing_has_variations for variant grouping, related_product_id for cross-sell. The q_and_a field in particular is a place to answer real buyer objections — fit, ingredients, compatibility — in a structure a model can lift verbatim. Most feeds leave it blank.

Now the honest part, which the guides tend to skip. The documented ingestion failure modes are missing required fields, outdated or non-spec field names, and malformed values — and feed rejection is a silent visibility problem. Nothing on your site changes, no alert fires, the products simply are not there. Access is also gated: direct submission is described as invite-based for enterprise retailers, with most merchants syndicating through a commerce platform such as Shopify, Salesforce Commerce Cloud or commercetools, or through a feed-management vendor, and with a sample or full feed validated before going live (Lengow).

And most importantly: no study in the current literature isolates whether submitting an OpenAI feed improves organic carousel presence over and above Google Shopping rank. Its confirmed value is checkout eligibility, data freshness and paid-placement eligibility. If someone tells your client the OpenAI feed is the front door to organic carousel visibility, ask them for the study. The evidence points at Merchant Center.

Fulfilment moved from the PDP into the feed

The second half of the change is easy to miss because it looks like plumbing. Shipping is not a page detail any more; it is a structured field the answer is assembled from. The ACP feed spec makes shipping required where applicable, formatted as country:region:service_class:price with multiple entries allowed, and supports an optional ISO-8601 delivery_estimate that must be a future date.

Think about what that means for a shopper who asks for something they need by Friday. The engine does not have to parse a shipping table buried three clicks into your site — it has a machine-readable claim about which service class reaches which region at what price, and a date. "In stock, ships Thursday" has become a retrieval input rather than a reassurance you offer after the click.

That reading is consistent with the only ranking rubric OpenAI has published. Its help documentation states that product results are organic and unsponsored, ranked on relevance to the user rather than on partnerships, and names the tie-breakers where multiple merchants sell the same item as availability, price, quality, and whether the seller is the maker or primary seller — as quoted in third-party summaries of the help-centre article, since the page itself is not publicly fetchable. Treat the wording as second-hand. But note the shape of it: three of those four inputs are feed fields, and the fourth is a brand fact you can assert with clean identifiers and seller data. Stale prices and drifting stock status are no longer cosmetic errors; they are ranking errors.

Brand-level prompts didn't change at all

Everything above concerns products. The moment a buyer asks "what are the best sustainable running shoe brands" or "is [brand] worth the money," you are back in ordinary AI answer territory — retrieval from the open web, editorial sources, communities and review sites — and none of your feed work helps.

The scale of that opportunity is larger than most strategists assume. Across 1,094 US product and service categories tracked in ChatGPT from January to June 2026, Semrush found that only 15.2% had a clear owner brand (appearing in at least four of five category prompts with a five-point lead), 31.2% had an emerging leader, and 53.7% were unsettled, with no brand appearing in three or more prompts (Semrush). More than half of categories currently have nobody in the chair. For a mid-size DTC client, that is a far better bet than trying to displace an incumbent.

Classic SEO metrics only partly predict who ends up owning a category. Comparing owners to runners-up, owners had higher branded search volume just 55.7% of the time, higher Authority Score 52.5%, higher organic traffic 48.4% — barely better than coin flips. Kevin Indig's summary is the one to quote to a sceptical client: "Traditional SEO metrics aren't enough to explain who owns a topic. While they play their role, there's more to it." And a counterintuitive finding worth planning around: only 11.3% of high-demand topics had clear owners, against 19% of lower-demand ones. The big categories are less settled, not more.

Once won, the position is durable — but only with margin. Categories where leadership held had a 2.9-percentage-point median lead; those that flipped were sitting on about 1.3 points. A one-point lead is not a moat, it is a coin balanced on its edge, and it will read as volatility in your monthly report when it is really a genuine contest.

What moves this layer is editorial and community presence rather than feed fields. Digital PR and listicles are reported to account for 41% of commercial-intent AI citations (Precis), which is why the work looks like review placements, roundups and managing the "[product] review" SERP — the same territory covered in our guide to getting into the best-tools lists AI engines actually cite. It also helps that ChatGPT enriches its shopping fan-outs with modifiers like "best," "reviews," "comparison" and "vs" — the editorial layer and the carousel layer touch at exactly that point.

One hard gate applies to this path and not the feed path: crawler access. Amazon blocks OpenAI's crawlers in robots.txt, and OpenAI honours it — which is why Amazon products are largely absent from ChatGPT's shopping research. Isa Fulford, who leads OpenAI's Deep Research and ChatGPT agent teams, put it flatly: "We respect all of the OpenAI robots.txt. Anything that allows us to access their site, our product will access, and anything that we don't, we won't access" (Modern Retail). A feed does not substitute for letting the retrieval crawlers in. Before touching any feed, confirm the client's site is readable — our 20-minute walkthrough of llms.txt and AI crawler access covers which bots matter and which are noise, and Geoptimizer's free AI Crawler Checker tests GPTBot, ClaudeBot and eight others in a single pass.

How to measure this without misleading the client

Now the awkward question: how do you prove any of it worked?

Click-based analytics will understate the channel structurally, not marginally. Clicks from native ChatGPT apps frequently pass no referrer, so GA4 buckets those sessions into Direct — your measured AI referral number is a floor, never a total. And the influence largely happens before a visit exists to measure: in electronics, 38% of AI prompts occur at the interest stage and only 11% reach evaluation, meaning roughly 89% of AI-driven influence happens before a retailer sees a session (Similarweb). You can widen the net with a custom GA4 channel group, and you should — we walk through that instrumentation in connecting an AI visibility score to GA4 — but the honest framing for a client deck is that clicks are the visible tail of a mostly invisible channel.

That is why answer-side measurement is the complement, not a nice-to-have. Three instruments, matched to the three layers:

  1. Google Shopping organic rank for priority SKUs — the closest available leading indicator of carousel eligibility, and the one that moves fastest. Track top-20 share, not top-40.
  2. Product-prompt presence — run the actual buyer phrasings ("best merino base layer for winter running") and record whether the client's SKUs appear, and where in the carousel.
  3. Brand-prompt presence — mention rate, citation rate, prominence and sentiment on the category and comparison prompts, tracked across engines rather than in ChatGPT alone.

The objection every strategist raises here is legitimate: the answer changes each time you run it. It does. AI answers are nondeterministic, which is precisely why a screenshot is not a measurement. Geoptimizer runs your prompt set live on ChatGPT, Gemini, Claude and Grok with web search enabled and reports a 0–100 AI Visibility Score as a 7-day rolling window with a confidence band, using a published formula — mention rate 35%, citation rate 25%, prominence 20%, sentiment 20% — so when the number moves you can see which component moved it. Distribution over repeated runs, not a single capture. That distinction is the difference between a report a client trusts and one they argue with.

A 30/60/90 that respects both clocks

Days 1–30 — unblock and fix the feed. Confirm AI crawler access and check for anything that silently removes the client from retrieval. Audit Merchant Center for disapprovals and, critically, free-listings eligibility — including CSS configurations that break it. Rewrite titles as brand + model + key specs. Populate gtin/mpn. Fix any hero SKU under three stars before anything else. Establish baseline Shopping organic rank for the top 20 SKUs.

Days 31–60 — enrich and syndicate. Build the organic supplementary feed and work through the ~36 additional attributes, prioritising the re-ranking attributes the research names: comfort, durability, versatility, material quality. Write descriptions around use cases, not adjectives. If the client is on Shopify, understand what Shopify Catalog is already syndicating on their behalf — it "automatically structures, cleans, and syndicates product data across all connected AI channels," with eligible products listed by default on ChatGPT, Microsoft Copilot, AI Mode in Google Search and the Gemini app (Shopify). Discovery is default-on; paid checkout channels are opt-in, and merchants can toggle individual platforms (PYMNTS).

Days 61–90 — work the brand layer. Product PR, review placements, roundup features, and content built against the "best / review / comparison / vs" modifiers ChatGPT adds to its fan-outs. This is the slow programme; set expectations accordingly and report it separately from feed movement.

Put the caveats in the deck yourself, before the client finds them. AI-referred traffic to US retail sites grew 138% year over year in May 2026 and 1,324% since October 2024, and those visitors converted 54% better than non-AI traffic (Adobe via Digital Commerce 360) — but that is measured across Adobe's own US retail analytics customers, and the report does not state AI referrals as a share of total traffic. The conversion picture is genuinely contested, too: a peer-reviewed study across 973 ecommerce sites with $20bn in combined annual revenue found organic LLM traffic converting better than paid social but worse than every other traditional channel (Marketing Science). Both can be true across different samples and periods — but a deck that cites only the flattering number will not survive contact with a CFO.

Finally, the platform has already changed its mind once. By March 2026 OpenAI had begun routing buyers out to merchant storefronts via an in-app browser rather than completing purchases in chat, with a spokesperson saying "We're evolving how we approach commerce in ChatGPT to better meet merchants and users where they are" (Modern Retail). Brands that had invested only in checkout integration got less than they expected. Brands that invested in feed quality kept the discovery benefit either way — and the same catalogue now also powers ChatGPT's product-feed-driven ads, including the multi-product ad carousels OpenAI added on 6 August 2026 that pull directly from retailer feeds (Digiday). One clean feed, three returns: Google Shopping performance, organic ChatGPT surfacing, and paid placement eligibility.

FAQ

Do I need an OpenAI product feed to appear in ChatGPT Shopping? The evidence says no, not for organic carousel presence. Over 83% of carousel products matched Google Shopping's organic top 40, and no published study isolates an independent effect of the OpenAI feed on organic carousel selection. What the OpenAI feed reliably provides is checkout eligibility, faster refresh (updates accepted every 15 minutes) and eligibility for feed-driven ChatGPT ads. Fix Merchant Center first, then decide whether the OpenAI feed earns the engineering time.

How fast can a feed change show up in ChatGPT? Fast. Precis documents a food brand whose products appeared in ChatGPT Shopping within one day of connecting its Merchant Center feed, with live pricing and availability. That speed is the argument for treating feed work as the first 30 days rather than a later phase — it is the only lever in AI commerce that pays back inside a reporting cycle.

What Google Shopping rank do I actually need? Aim for the top 20. About 60% of carousel matches came from organic positions 1–10 and roughly 84% from 1–20, leaving positions 21–40 contributing only about 16%. Products outside the top 40 are effectively unreachable for the carousel.

Why do my products show up one day and not the next? Partly nondeterminism — AI answers vary between identical runs — and partly genuine competition, since ChatGPT re-ranks Google's results by around five positions on average using its own attribute weighting. That is why visibility should be measured as a rolling window with a confidence band rather than as a single screenshot, and why one disappearance is not yet a finding.

Does any of this help brand-level prompts like "best running shoe brands"? Very little. Those run through the ordinary retrieval path and are won with editorial coverage, reviews, community presence and crawler access. Track them as a separate programme with a months-long horizon, not a weekly one.

Where to start this week

The uncomfortable truth in the research is also the encouraging one: for most DTC brands, the ChatGPT Shopping strategy already exists — it is sitting in a Merchant Center account that nobody has audited in eighteen months. Start there, because it is fast and cheap. Then treat the brand layer as the separate, slower programme it actually is, and instrument both so you can tell which one moved.

If you want the answer-side half of that measurement running before Q4 planning, Geoptimizer's free AI Visibility Check shows whether ChatGPT, Gemini, Claude and Grok currently name your brand, and the Prompt Ideas Generator will turn a domain into 20 buyer-intent prompts worth tracking. When you are ready to run product and brand prompt sets across a client roster, the Agency plan's multi-brand workspaces and competitor tracking are built for exactly that shape of work. Start free — upgrade when the data earns it.

Keep reading

See it on your own domain.

Free visibility check across ChatGPT, Gemini, Claude, and Grok — about 30 seconds.

Run the free check