How to Get Your Product Listed in ChatGPT Shopping (Step-by-Step Guide)
Direct answer
To get a product listed in ChatGPT Shopping, make it findable through two channels: pages crawled by OAI-SearchBot and a structured merchant feed. Allow the crawler in robots.txt and any firewall, publish Schema.org Product and Offer markup with a currency, price, availability and identifier, and send feed updates following OpenAI's specification. Keep the page, markup and feed in agreement, respond quickly, and test whether your products appear in shopping answers.
ChatGPT Shopping can recommend a product only when it can find, understand and trust the facts about it. It draws on two channels: pages crawled by OpenAI's OAI-SearchBot, and structured product data that merchants send in a feed. This guide walks through how those channels fit together and the steps a merchant can take to make a catalog eligible: allow the crawler, publish accurate Product and Offer markup, keep the feed and the pages consistent, keep both fresh, and check the result.
OpenAI documents its commerce programme and feed requirements on its own pages, listed in the references. Where this guide gives a pipeline or a scoring formula, it is a reference design for reasoning about the problem, not a statement of OpenAI's internal implementation. Always follow the current OpenAI specification for exact fields and update cadence.
How ChatGPT Shopping Combines Crawling and Merchant Feeds
Rather than ranking pages by keyword density, ChatGPT Shopping works as a dual-channel pipeline. One channel is web crawling: OAI-SearchBot reads product and category pages and extracts their content and structured data. The other is the merchant feed: a structured set of product records with attributes such as identifier, title, description, link, price, availability and brand, which the merchant keeps up to date.
A conversational query is turned into an embedding, a dense numeric representation of the shopper's intent. Candidate products are retrieved from a dense vector index, for example a Hierarchical Navigable Small World (HNSW) graph, alongside a lexical index such as BM25. The two candidate lists are merged with Reciprocal Rank Fusion (RRF), and a final stage weighs factors such as price competitiveness, reviews, stock status and the merchant's authority before products appear in a shopping carousel inside the conversation.
Entity resolution matters throughout. Each product should resolve to a single canonical entity, with variants such as size and colour attached to a parent product. Global Trade Item Numbers (GTINs) from GS1 and Schema.org Product graphs are the identifiers this step relies on.
Four-Phase Ingestion and Retrieval Protocol
-
Phase 1: Discovery and crawl validation.
OAI-SearchBotreadsrobots.txtunder RFC 9309 to learn which paths it may fetch. Product and category pages must return a successful response quickly, and rules that disallow cart and admin paths are respected. -
Phase 2: Feed ingestion and schema binding. The merchant sends product records through the feed, and the same facts appear in the page's JSON-LD
ProductandOffermarkup. The two sources are bound by the product identifier. -
Phase 3: Dense retrieval and rank fusion. The query is embedded, dense and lexical candidates are retrieved, and RRF merges them. Here is a smoothing constant traditionally set to 60 and weights each channel:
-
Phase 4: Multi-factor scoring and carousel emission. Top candidates are scored on price, reviews, availability and merchant authority, and the best are shown to the shopper.
| Attribute | Traditional lexical e-commerce engine | Dual-channel neural pipeline |
|---|---|---|
| Index structure | Inverted token index | Quantised vector graph plus an inverted index |
| Catalog updates | Periodic batch crawl | Pushed feed updates plus crawler validation |
| Query resolution | Exact tokens and keyword stems | Dense embeddings of conversational queries |
| Ranking | Manual boosting rules and link-based authority | Rank fusion plus session-aware reranking |
The difference in the last column is what makes natural, ambiguous, long-tail shopping questions answerable. The wider architecture of shopping agents is described in Amazon Buy for Me and the Transition to Agentic Commerce.
Preparing Your Store: Crawl Access, Feed Freshness and Origin Response
Getting listed is mostly a matter of removing obstacles. Work through these steps in order.
Step 1: Let OAI-SearchBot reach your product pages
Check robots.txt and your edge configuration. A web application firewall (WAF) from a provider such as Cloudflare or AWS can classify OAI-SearchBot as an untrusted scraper and block it, even when robots.txt allows it. Allow its user-agent token explicitly, and make sure your canonical product and category paths return HTTP 200. If OAI-SearchBot meets repeated 429 or 503 responses, it backs off, which slows how quickly your catalog is crawled.
Step 2: Publish accurate Product and Offer markup
Mark each product page up with Schema.org Product and a linked Offer, joined by explicit @id anchors. Include the properties a shopping system needs to ground an answer: priceCurrency as an ISO 4217 code, price, availability, itemCondition, brand and a global identifier such as a GTIN. Omitting the nested Offer, or leaving out itemCondition or availability, weakens the machine's confidence in the record.
Step 3: Send the merchant feed
Follow OpenAI's Product Feed specification for the required attributes and for how updates are delivered. The feed is how price and stock changes reach ChatGPT between crawls, so treat it as the primary source of truth for volatile facts.
Step 4: Keep the feed and the page in agreement
When the price on a page template changes but the JSON-LD or the feed still carries the old value, a consistency check can flag the product, and the system can suppress a recommendation it cannot trust. Update all three together.
Step 5: Keep origin response times low
A slow origin can make a crawl time out before the structured data is parsed. Use HTTP/2 and efficient caching, and revalidate with entity tags, as RFC 9110 describes.
Step 6: Verify, then monitor
Validate your markup with the Schema.org validator, check your server logs for OAI-SearchBot requests and their status codes, and ask ChatGPT shopping-style questions about your products to see whether they appear. Tracking those answers over time is covered in Tracking Brand in AI Responses.
For completing a purchase inside the conversation, OpenAI publishes separate checkout and payment specifications, listed in the references.
Scoring Products: Relevance, Data Consistency and Freshness
One way to reason about visibility is as a composite score over three kinds of evidence: how well the product matches the query, how reliable its data is, and how fresh that data is. For a product document and a conversational query , a conceptual score is:
with weights that sum to one. The first term is the cosine similarity between the query embedding and the product embedding:
The third term, factual grounding, measures how often your structured data and your feed agree over an attribute set , for example GTIN, price, currency, availability, brand and condition:
This ratio is a useful self-audit metric. A value below one means at least one attribute disagrees, and each disagreement is a reason a system might distrust the record. The fourth term models freshness as an exponential decay in the time since the last verified feed update:
OpenAI has not published weights or decay rates for any such score, so treat and as symbols. The takeaway is directional: relevance, consistency and freshness each matter, and consistency and freshness are the two a merchant fully controls.
| Component | What it rewards | What a merchant can do |
|---|---|---|
| Semantic similarity | Matching the shopper's intent | Write clear titles and descriptions that state what the product is for |
| Rank fusion | Agreement between lexical and dense retrieval | Use both exact attribute names and natural-language descriptions |
| Factual grounding | Agreement between markup and feed | Update page, markup and feed together |
| Freshness | Recent verified updates | Send feed updates promptly when price or stock changes |
The end-to-end time from request to answer is also bounded, so crawl and fetch delays count against a product. Conceptually, with a latency budget :
Fixing Missing Products: A Four-Phase Recovery Checklist
When products are absent from shopping answers, four failure modes cover most cases: crawler access denials, attribute mismatches between markup and feed, feed latency, and weak semantic match. Work through the checklist below.
- Phase 1: Crawl health. Audit
robots.txtsyntax and your edge access logs. Confirm thatOAI-SearchBotreceives HTTP 200 responses and that your origin responds quickly. - Phase 2: Schema and graph integrity. Run the Schema.org validator over your pages. Confirm every
Productlinks to itsOffer, and that identifiers such as GTINs are well formed. - Phase 3: Feed telemetry. Check that your feed endpoint accepts and acknowledges updates, and that the age of the last successful update matches how often your prices and stock change.
- Phase 4: Semantic match. Compare the questions shoppers ask with how your catalog describes the product. If there is a gap, enrich the metadata with GTINs, technical specifications and verified aggregate ratings.
| Failure signature | Root cause | How to detect it | Remediation |
|---|---|---|---|
OAI-SearchBot receives 403 or 429 | A WAF challenge or a robots.txt Disallow rule | No crawler requests in the access logs | Allow the OAI-SearchBot user agent and update robots.txt |
| Schema validation error | priceCurrency, price or itemCondition is missing | The Schema.org validator reports missing nodes | Add complete Product and Offer JSON-LD with an ISO 4217 currency |
| Feed synchronisation lag | A timed-out push or a stale scheduled job | Feed age is greater than your change rate, and stock diverges | Move to an asynchronous push service with retry queues |
| Carousel omission | Weak semantic match or too few reviews | The product does not appear for relevant questions | Enrich metadata with GTINs, specifications and verified ratings |
One simple way to track recovery effort is the expected time to fix, weighted by how often each fault occurs:
Product Markup and Identifier Standards for ChatGPT Shopping
Machine-readable catalog data depends on a few standards. JSON-LD 1.1 carries the structured data. RFC 9309 defines the robots directives that OAI-SearchBot follows. ISO 4217 defines currency codes. GS1 GTINs identify trade items globally, so one product resolves to one entity across merchants. RFC 9110 defines the HTTP semantics for caching and revalidation.
The Schema.org Product should link to one or more Offer entities through explicit @id anchors. This separates stable product facts such as brand, GTIN and specifications from transactional terms such as price, currency, stock, shipping and returns. The example uses placeholder values, including a placeholder identifier:
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Product",
"@id": "https://example.com/products/enterprise-edge-server#product",
"name": "Enterprise Edge Computing Server E-9000",
"description": "High-throughput edge computing server with dual redundant power supplies and hardware cryptographic acceleration.",
"image": "https://example.com/images/server-e9000.jpg",
"sku": "SRV-E9000-X1",
"gtin14": "00000000000000",
"brand": {
"@type": "Brand",
"name": "Example Brand"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "128",
"bestRating": "5",
"worstRating": "1"
},
"offers": {
"@type": "Offer",
"@id": "https://example.com/products/enterprise-edge-server#offer",
"url": "https://example.com/products/enterprise-edge-server",
"priceCurrency": "USD",
"price": "4299.00",
"priceValidUntil": "2026-12-31",
"itemCondition": "https://schema.org/NewCondition",
"availability": "https://schema.org/InStock",
"seller": {
"@type": "Organization",
"name": "Example Seller"
},
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"applicableCountry": "US",
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"merchantReturnDays": 30,
"returnMethod": "https://schema.org/ReturnByMail",
"returnFees": "https://schema.org/FreeReturn"
}
}
}
]
}Only mark up ratings and reviews that real customers wrote and that appear on the page. The values above are placeholders for the shape of the data.
| Standard | Governing organisation | What it governs |
|---|---|---|
| JSON-LD 1.1 | World Wide Web Consortium | Linked-data serialisation of the Product and Offer graph |
| RFC 9309 | Internet Engineering Task Force | Robots directives for OAI-SearchBot |
| ISO 4217 | International Organization for Standardization | Three-letter currency codes in priceCurrency |
| GS1 GTIN | GS1 | Global trade item identification |
| RFC 9110 | Internet Engineering Task Force | HTTP semantics, caching and revalidation |
Terms that recur in this area: OAI-SearchBot, ChatGPT Shopping, product feed specification, Schema.org JSON-LD, Neural Generative Retrieval, HNSW indexing, vector quantisation, Reciprocal Rank Fusion, entity resolution, GTIN, agentic checkout and conversational query optimisation. For how shopping fits into a wider brand plan, see How D2C and E-commerce Brands Win AI Search, and for advertising in the same surface see What We Know About Ads in ChatGPT.
References
- ChatGPT merchants page — OpenAI.
https://chatgpt.com/merchants - Product Feed Specification — OpenAI.
https://developers.openai.com/commerce/specs/feed - Get Started guide — OpenAI Commerce.
https://developers.openai.com/commerce/guides/get-started - Checkout Specification — OpenAI.
https://developers.openai.com/commerce/specs/checkout - Payment Specification — OpenAI.
https://developers.openai.com/commerce/specs/payment - Product — Schema.org.
https://schema.org/Product - Offer — Schema.org.
https://schema.org/Offer - AggregateRating — Schema.org.
https://schema.org/AggregateRating - Schema Markup Validator — Schema.org.
https://validator.schema.org - Robots Exclusion Protocol (RFC 9309) — IETF, 2022.
https://www.rfc-editor.org/rfc/rfc9309.html - JSON-LD 1.1 Specification — W3C, 2020.
https://www.w3.org/TR/json-ld11/ - HTTP Semantics (RFC 9110) — IETF, 2022.
https://www.rfc-editor.org/rfc/rfc9110
Cite this article
@misc{quasarank2026chatgptshopping,
author = {{Quasarank AI Research}},
title = {How to Get Your Product Listed in ChatGPT Shopping (Step-by-Step Guide)},
year = {2026},
howpublished = {\url{https://quasarank.com/blog/how-to-get-product-listed-chatgpt-shopping-guide}},
note = {Published 2026-10-04}
}Quasarank AI Research. (2026, October 4). How to Get Your Product Listed in ChatGPT Shopping (Step-by-Step Guide). Quasarank. https://quasarank.com/blog/how-to-get-product-listed-chatgpt-shopping-guide