Skip to content
GetProfit

ChatGPT Shopping: How Products Get In and What Data to Send

See how ChatGPT picks the products it shows, which nine fields OpenAI's product feed requires, and how they map to your Merchant Center feed.

Products reach ChatGPT’s shopping answers in three ways. ChatGPT reads public product pages and product data from third-party providers. If you sell on Shopify or Etsy, your catalogue is already connected. Approved merchants send OpenAI a product feed. ChatGPT picks these results itself; they are not ads. OpenAI’s feed specification asks for nine fields for every product: item_id, title, description, url, brand, seller_name, image_url, availability and price. For now, shopping in ChatGPT is available to users in the US.

For your store, ChatGPT is one more place where products can appear without an ad, much like Google’s free listings. The rules differ, though. This article covers how ChatGPT picks products, how the product feed you already keep for Merchant Center maps to what OpenAI asks for, and what a store outside the US can do today.

How does ChatGPT decide which products to show?

When a question suggests that someone wants to buy, ChatGPT can show products with images, details and links to the sites that sell them. According to OpenAI’s help article Shopping with ChatGPT Search, ChatGPT selects these product results independently, and they are not ads. ChatGPT shows ads separately.

A product appears when ChatGPT judges it relevant to the request and to the shopper’s context, such as Memory or custom instructions. To choose, ChatGPT considers:

  • structured data such as price and product description, from first-party and third-party providers, plus other third-party content;
  • the answer the model had already formed before it looked at new search results;
  • OpenAI’s safety standards and product policies.

OpenAI does not name these providers. None of the OpenAI pages we checked for this article mentions Google Merchant Center among them.

When a shopper opens a product, ChatGPT may list the merchants that sell it. The same help article says ChatGPT ranks merchants on factors such as availability, price, quality and whether the merchant is the maker or primary seller of the item. When several merchants sell the product, the lowest price ChatGPT knows of may carry a “Best price” label.

ChatGPT may also rewrite product titles and descriptions to make them simpler. It can summarise reviews from public websites, and OpenAI does not verify those reviews. Prices come from third-party providers, and a change on your site can take a while to appear in ChatGPT.

Shopping research, ChatGPT’s longer comparison mode, goes deeper. According to Using shopping research in ChatGPT, it draws on merchant data sent through the Agentic Commerce Protocol, public product information and other retail sources. It also reads product pages directly. When a store blocks automated access, shopping research skips that site or uses other sites with similar products.

Three ways your products get into ChatGPT

RouteWho it is forWhat you doWhat you control
Crawled pages and third-party dataany store whose site ChatGPT can readallow OAI-SearchBot; keep price, stock and variants clear on product pageslittle: ChatGPT works from what is public and what data providers pass on
Platform cataloguestores on Shopify or Etsynothing: OpenAI says these catalogues are already connectedwhatever you keep in the platform
Direct product feedapproved merchants who applied through OpenAI’s merchants pagesend a full catalogue file at least daily over SFTP, an API or a supported feed providerthe most: titles, prices, stock, variants and which products may show

A feed is optional. OpenAI’s page for merchants, Power product discovery in ChatGPT, asks “Do I need a product feed if ChatGPT already crawls my site?” and answers no. A feed gives you more control over how products appear and helps keep product information accurate and up to date. Even with a feed, OpenAI’s feed specification says that eligibility does not guarantee display.

Can a store outside the US get in yet?

Not for shoppers in its own country, as of 2 October 2026. OpenAI’s merchants page says shopping in ChatGPT is available in the US and will reach other regions over time. It also announces a self-serve platform for merchants later this year. Merchants who have already applied stay on the waiting list.

OpenAI’s feed specification says the same in technical terms. A standard upload targets the US, and the shared format currently represents only the US, Canada and Mexico. You can add other markets only after OpenAI confirms your integration and the countries and currencies allowed for it. A currency or a country column in your file does not change that.

If your store is in Czechia, Poland or Ukraine, the useful work today is preparation. Two things help wherever you sell: letting OpenAI’s search crawler read your site, and keeping product data in a shape you can convert to OpenAI’s format.

Buying inside ChatGPT is a separate question. OpenAI’s merchants page says the company is moving away from a standalone Instant Checkout. Shoppers find and compare products in ChatGPT, then buy on your website or app, and there is no fee on purchases that start in ChatGPT. OpenAI’s help article Shopping with ChatGPT Search still mentions an Instant Checkout option for some eligible products and merchants, so treat in-chat checkout as unsettled.

The protocol behind in-chat checkout is OpenAI’s Agentic Commerce Protocol. Google’s developer documentation describes UCP as an open standard for buying in AI Mode and Gemini. We compare the two protocols in agentic commerce for online stores.

What does OpenAI’s product feed ask for?

OpenAI’s product feed specification asks for one row per product or variant, with nine required fields. Other fields are optional or needed only in specific cases: variants, ads and checkout. The specification also describes a Google-compatible format, and the table follows its mapping. OpenAI says that Google’s id, title, description, link, image_link, availability, price and brand match its own fields.

If your catalogue already lives in a Merchant Center feed, eight of the nine fields have a direct counterpart there. The last column of the table shows the weights in the portal’s feed score: nine checks on a Merchant Center feed with fixed weights that add up to 100. The weights are our own rule, not a formula from OpenAI or Google.

OpenAI fieldMerchant Center attributeWhat OpenAI asksWeight in the portal’s feed score
item_ididstable ID per item or variant, never reused for another item—
titletitleproduct name with the selected variant; aim for 150 characters at most14, shared with description
descriptiondescriptionfactual, plain text; aim for 5,000 characters at most(shared with title)
urllinkproduct page with the variant selected where possible; keep it stable—
brandbrandthe real brand, as shown on the product page8
seller_namenone: the Google-compatible path uses the merchant name you register with OpenAIthe seller’s real name, not a placeholder—
image_urlimage_linka direct, public image of this variant, such as a JPEG or PNG14
availabilityavailabilityin_stock, out_of_stock, pre_order, backorder or unknown; OpenAI rejects a row with an empty value4
pricepriceregular price written as 79.99 USD: decimal point, no thousands separators8

Three flags decide where OpenAI may use a row:

  • is_eligible_search is on by default. Setting it to false switches off both search and checkout for that product.
  • is_eligible_checkout is off by default. It works only when search eligibility is on and your integration has checkout turned on.
  • is_ads_eligible is for ChatGPT ads. OpenAI’s Ads product feeds guide uses the same file schema, and this flag works separately from search eligibility.

Optional fields fill in the rest: GTIN (the barcode number) and MPN (the manufacturer’s part number), a category path, condition, sale price, shipping price, extra images, variants, returns, and review counts with star ratings. OpenAI’s key concepts page says recommended attributes such as rich media and reviews improve ranking, relevance and user trust.

The portal’s feed score puts 48 of 100 points on OpenAI’s required fields

We compared the weights in the portal’s feed score with OpenAI’s list of required fields. The required fields carry 48 of the 100 points: title and description 14, images 14, brand 8, price 8, availability 4. Fields that OpenAI treats as optional carry 30: GTIN 16, category 12, condition 2. The remaining 22 points go to approval in Merchant Center, which has no direct counterpart on OpenAI’s side. OpenAI can reject malformed rows and applies its own policy on prohibited products instead.

The biggest difference between the two lists is GTIN. In OpenAI’s own format, it is optional: send it when the product has one, and never invent a value to replace a missing one. On the Google-compatible path the rule is stricter. A product needs a valid GTIN or an MPN unless you set identifier_exists to no. That path drops GTINs starting with 02, 04, 2, 05, 98 or 99, though a valid MPN can still meet the requirement.

The data itself is mostly in place. In 109 of 142 stores in our data, Merchant Center flags under 1% of the catalogue. In a sample of 400,000 flagged products, the most common flags were “not eligible in any campaign” and “out of stock”. Both reflect campaign and stock decisions rather than missing data (GetProfit data, catalogues of 142 stores with 100+ products, fact bank compiled in August 2026). For a store like that, building an OpenAI file is mostly conversion: rename columns, add a seller name, change some value spellings.

One product, converted from Merchant Center to OpenAI’s format

Example store, not client data.

A tableware store with 3,000 products sells a white stoneware dinner plate. In its Merchant Center feed, the plate is a row with id, title, description, link, image_link, brand, price, availability set to preorder, and an availability_date. It has no GTIN. In OpenAI’s JSONL format, the same product becomes one line:

{"item_id":"PLT-27-WHT","title":"Stoneware dinner plate, 27 cm, white","description":"Glazed stoneware dinner plate, 27 cm across.","url":"https://example.com/plates/plt-27-wht","brand":"Example Ceramics","seller_name":"Example Tableware","image_url":"https://example.com/images/plt-27-wht.jpg","availability":"pre_order","price":"12.00 USD"}

Three things changed: the column names, a new seller_name field, and the availability spelling, from preorder to pre_order. The file leaves out the release date, because OpenAI says uploaded dates neither display a pre-order date nor change stock. The missing GTIN stays missing: OpenAI asks you to leave the field out when a product has no GTIN, rather than invent one. The price is in US dollars because a standard upload targets the US.

Six rules that trip up a converted feed

  1. Format and delivery. You send OpenAI full snapshots of the catalogue over SFTP, and its file upload guide recommends sending them at least daily. OpenAI prefers Parquet and also accepts jsonl.gz, csv.gz and tsv.gz. Keep file names stable and overwrite them; if you split the catalogue into several files (shards), keep each to about 500,000 items and under about 500 MB. The Google-compatible path takes tab- or comma-delimited text only, and only after OpenAI confirms it; that path does not support JSON, spreadsheets, XML, RSS or Atom.
  2. Value spellings. OpenAI’s format writes pre_order; the Google-compatible path writes preorder and does not accept unknown.
  3. Empty means unknown. A missing shipping_price means unknown, not free shipping. Leave an unknown optional field empty: placeholders such as n/a or null are not valid values.
  4. Dates are for information only. OpenAI accepts sale dates, expiry dates and availability dates only as information. Update the price when a sale starts or ends, and update stock when it changes.
  5. Removal takes up to 14 days. OpenAI keeps the last record of a product that disappears from a snapshot for up to 14 days. To take a product out of search the next time OpenAI processes your file, set is_eligible_search to false. The Google-compatible path ignores that flag, so on that path, leave the product out of the file.
  6. Some categories are banned. OpenAI’s Get started guide bans adult content, alcohol, nicotine, gambling, weapons and prescription-only medicines, among others. OpenAI may remove a product or ban a seller who breaks the policy.

How do you keep your store open to ChatGPT’s crawler?

Without a feed, ChatGPT finds your products through its search crawler and third-party data. OpenAI’s Overview of OpenAI Crawlers lists four agents with different jobs:

AgentWhat it doesWhat blocking it means
OAI-SearchBotfinds sites to show in ChatGPT searchChatGPT search answers don’t show the site, though it can still appear as a navigational link
GPTBotcollects content that may be used to train OpenAI’s modelsthe content should not be used for training; search is a separate setting
ChatGPT-Uservisits a page when a user’s request needs itrobots.txt rules may not apply; it does not decide what appears in search
OAI-AdsBotchecks landing pages of ads submitted to ChatGPTit visits only pages submitted as ads

If you want to stay in ChatGPT search but keep your content out of model training, write:

User-agent: OAI-SearchBot
Allow: /

User-agent: GPTBot
Disallow: /

Whether to block GPTBot is up to you; the two settings work independently. After a robots.txt change, OpenAI’s systems need about 24 hours to adjust.

Robots.txt is only half of the check. OpenAI also recommends allowing requests from its published IP ranges (for OAI-SearchBot, the list is at openai.com/searchbot.json). Shopping research also skips sites that block automated access.

If your CDN, the service that delivers your site, has rules that challenge bots, it can keep your store out even when robots.txt allows the crawler. The check works the same way as verifying Googlebot behind bot protection.

How do you measure visits from ChatGPT?

According to OpenAI’s Publishers and Developers FAQ, ChatGPT adds utm_source=chatgpt.com to the links in its search answers. You can find those visits by source in Google Analytics or another analytics tool.

If you send a feed, OpenAI’s best practices suggest adding a parameter such as utm_medium=feed to each product url, so that feed clicks show up separately. OpenAI also advises keeping those parameters the same across snapshots. Our guide to products in AI search covers traffic from ChatGPT answers without a feed and from other assistants.

Your own analytics is the only source for these numbers. GetProfit’s data comes from Google Ads and Merchant Center accounts. It holds no ChatGPT clicks, traffic or sales, so this article gives no benchmark for them.

How to get your store ready for ChatGPT shopping

  1. Check that OAI-SearchBot can reach you. Look at robots.txt and at your CDN’s bot rules, and allow OpenAI’s published IP ranges.
  2. Make product pages say what a feed would say. Show price, stock, brand and the selected variant on the page itself. Without a feed, ChatGPT works from public pages and third-party data.
  3. Clean the Merchant Center feed first. The same product data serves Google and OpenAI, and eight of OpenAI’s nine required fields come straight from it. For the order of fixes, see Google Shopping feed optimisation.
  4. Fill real GTINs where they exist. They carry 16 points in the portal’s feed score, and OpenAI’s Google-compatible path needs a GTIN or an MPN unless you set identifier_exists to no. Never make one up.
  5. Draft the OpenAI file from that feed. Rename the columns, add seller_name, convert availability spellings and the price format, and write one row per variant. As OpenAI suggests, validate a sample of about 100 items first.
  6. Apply if you sell to US shoppers; prepare if you don’t. The application form is on OpenAI’s merchants page. According to OpenAI, stores on Shopify or Etsy are already connected and need no application.
  7. Plan a daily refresh. Send a full snapshot at least once a day, and tag product URLs so you can count the clicks.

The portal’s Feed and Merchant Center section runs nine checks on your Merchant Center data, including titles, descriptions, images, brand, price, availability and GTIN. For each field, it shows how many products have it empty and lets you download the list of those products as a table. The portal checks the feed for Google. Building and sending the OpenAI file is up to you.

The product is in the catalogue, but Google doesn’t have it. The portal goes through your feed and shows which fields are empty, on how many products, and what that does to impressions. The portal changes nothing without your consent.

Check your feed →

Sources

  • Shopping with ChatGPT Search — OpenAI Help Center: product results are selected independently and are not ads; what ChatGPT considers; how merchants are ranked; the “Best price” label; simplified titles and descriptions; review summaries from public websites; prices from third-party providers; Shopify Catalog; an Instant Checkout option for some eligible products and merchants. Checked 2 October 2026.
  • Using shopping research in ChatGPT — OpenAI Help Center: data sources of shopping research, including merchant data via the Agentic Commerce Protocol; reading product pages directly; sites that block automated access are skipped. Checked 2 October 2026.
  • Power product discovery in ChatGPT — OpenAI’s page for merchants: shopping live for US users, other regions over time; a self-serve merchant platform planned for later this year; waiting list; Shopify and Etsy catalogues already integrated; feeds via SFTP, APIs and feed providers; a feed is not required when ChatGPT crawls the site; moving away from a standalone Instant Checkout; no fees on purchases that start in ChatGPT. Checked 2 October 2026.
  • Products — OpenAI developer documentation, product feed specification: nine required fields and their rules; eligibility flags; GTIN and MPN rules; empty values; US targeting and the US, Canada and Mexico format; dates that schedule nothing; the Google-compatible format, its column mapping, GTIN prefixes and unsupported file types. Checked 2 October 2026.
  • Overview — OpenAI developer documentation, file upload: SFTP, at least daily full snapshots, file formats, shard size, 14-day retention, a sample of about 100 items. Checked 2 October 2026.
  • Get Started — OpenAI developer documentation: feeds for approved partners, file upload or API, prohibited products policy. Checked 2 October 2026.
  • Key concepts — OpenAI developer documentation: recommended attributes improve ranking, relevance and user trust. Checked 2 October 2026.
  • Best practices — OpenAI developer documentation: attribution parameters such as utm_medium=feed in product URLs. Checked 2 October 2026.
  • Product Feeds — OpenAI Ads documentation: ads product feeds use the same product file schema and the is_ads_eligible flag. Checked 2 October 2026.
  • Overview of OpenAI Crawlers — OpenAI developer documentation: OAI-SearchBot, GPTBot, ChatGPT-User and OAI-AdsBot; what blocking OAI-SearchBot does; about 24 hours to apply robots.txt changes; published IP ranges. Checked 2 October 2026.
  • Publishers and Developers - FAQ — OpenAI Help Center: ChatGPT adds utm_source=chatgpt.com to referral URLs from its search results. Checked 2 October 2026.
  • Universal Commerce Protocol (UCP) — Google developer documentation: an open standard for direct purchases on AI surfaces such as AI Mode in Google Search and the Gemini app. Checked 2 October 2026.
  • GetProfit data: catalogues of 142 stores with 100+ products, fact bank compiled in August 2026 — share of each store’s catalogue flagged by Merchant Center; the most common flags.
  • GetProfit portal methodology — feed score: nine checks and their weights.