Product Feeds for AI

How to build and audit a product feed AI shopping agents can read and transact against — the three formats (Merchant Center, OpenAI ACP, schema.org), real-time accuracy, and the feed-quality failures that break agentic checkout.

First published: Jul 3, 2026 · Last updated: Jul 18, 2026 · Advanced
demand #6 in AI Commerce#23 in Ecommerce SEO#381 on the site

A product feed for AI is the structured data file — identifiers, price, availability, policies — that AI shopping agents read directly. There's no single universal 'AI feed': OpenAI's docs describe the feed as the way you supply ChatGPT commerce data with no stated crawling fallback, while Google's docs describe combining crawling, on-page structured data, and your Merchant Center feed together. Serious merchants reconcile three parallel formats: the Google Merchant Center feed (which now has six optional AI-facing Conversational Attributes), OpenAI's ACP feed spec (Parquet/JSONL by SFTP, a daily full snapshot plus an intraday API for price/stock/promos), and schema.org Product/Offer markup as a cross-verification channel. Identifiers (GTIN, or brand + MPN) are the backbone across all three — never fabricate one. The thing that's genuinely different from Shopping-ads feed work is tolerance for staleness: a human double-checks a price on the page before buying, but an agent commits programmatically, so a feed/checkout price mismatch or phantom stock is a real risk to the transaction. One myth to drop: OpenAI's docs don't state a '15-minute update' rule — the documented model is a daily snapshot plus an intraday API. Instant Checkout in ChatGPT is currently partner-approved, not open to everyone. And feed quality gets you discovered and eligible; it doesn't guarantee conversion.

TL;DR — There’s no single universal “AI feed” — each provider’s contract differs. For ChatGPT’s commerce flows, OpenAI documents the feed as the way you supply product data, with no stated crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. fallback; Google’s own docs describe combining crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor., on-page structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding., and your Merchant CenterGoogle Merchant Center (GMC) is a free platform where retailers upload and manage product data so their products can appear across Google — Shopping, organic Search product grids, Images, Lens, and AI surfaces. Since 2020 it powers free (organic) product listings, not just paid Shopping ads. feed together, not one replacing the other. Reconcile three formats: the Google Merchant CenterGoogle Merchant Center (GMC) is a free platform where retailers upload and manage product data so their products can appear across Google — Shopping, organic Search product grids, Images, Lens, and AI surfaces. Since 2020 it powers free (organic) product listings, not just paid Shopping ads. feed (now with six optional AI-only Conversational Attributes), OpenAI’s ACPThe Agentic Commerce Protocol (ACP) is an open standard/protocol whose first implementing AI platform is OpenAI and first compatible payment provider is Stripe, defining how AI shopping agents discover products, manage carts, and complete purchases on a buyer's behalf — by reading a merchant's product feed and APIs instead of crawling the website. feed spec (Parquet/JSONL over SFTP — a daily full snapshot plus an intraday API for price, stock, and promotions), and schema.orgSchema markup is code that uses the schema.org vocabulary to label what your content means so search engines can understand it and show rich results. It's most often written in JSON-LD, and it's not a direct ranking factor. Product/Offer markup as a cross-verification layer. Identifiers (GTINProduct identifiers are the standardized values — GTIN (Global Trade Item Number), MPN (Manufacturer Part Number), and brand — that shopping feeds like Google Merchant Center and Microsoft Merchant Center use to match a product listing to the correct item in their catalog. A GTIN alone is usually enough; without one, brand + MPN is the fallback; products with none declare that with the identifier_exists attribute., or brand + MPN) are the backbone across all three; never fabricate one. The real differentiator versus a Shopping-ads feed is staleness tolerance: a human double-checks a price before buying, an agent commits programmatically — so feed/checkout price mismatch, phantom stock, a missing return policy blocking checkout eligibility, or an unstable item_id is a real risk to the transaction. Drop the “OpenAI requires 15-minute updates” claim — it isn’t in OpenAI’s docs. Instant Checkout is currently partner-approved, not open to everyone. And feed quality drives discovery and eligibility, not conversion.

Evidence for this claim OpenAI publishes a merchant product-feed specification for supplying structured catalog data to supported commerce experiences. Scope: OpenAI commerce integrations; a feed supplements rather than universally replaces crawled pages. Confidence: high · Verified: OpenAI Commerce: Product feeds Evidence for this claim Google Merchant Center product data uses identifiers, price, availability, and other attributes to represent offers in Google surfaces. Scope: Google Merchant Center; requirements vary by destination, country, and product type. Confidence: high · Verified: Google Merchant Center: Product data specification

There’s no one universal “AI feed” — providers differ

I keep coming back to one framing because it reorganizes everything else, but it needs a caveat I didn’t give it strongly enough before: this isn’t one universal behavior, it’s a provider-specific contract.

For ChatGPT’s commerce flows, OpenAI’s own docs describe the feed as the way merchants supply product data — there’s no documented fallback to crawling your rendered page for that flow. For Google, it’s genuinely different: Google’s Search Central docs are explicit that Google combines crawling, on-page structured data, and your Merchant Center feed — “Google may at times use other approaches to extract data from pages” alongside both of the others — so the feed doesn’t replace your HTML there, it’s one of three channels Google cross-checks against each other. The Agentic Commerce ProtocolThe Agentic Commerce Protocol (ACP) is an open standard/protocol whose first implementing AI platform is OpenAI and first compatible payment provider is Stripe, defining how AI shopping agents discover products, manage carts, and complete purchases on a buyer's behalf — by reading a merchant's product feed and APIs instead of crawling the website. piece covers the ACP-specific mechanics in depth and I won’t re-derive that here. This article is the practical layer under it: what you actually put in the file, across the formats that matter, and what breaks a sale when you get it wrong.

The mechanism is still worth stating plainly because it changes your priorities, even with that caveat. Jason Barnard put it well in his AI-engine pipeline piece: structured feeds — Google Merchant Center and OpenAI’s Product Feed Specification — “bypass discovery, selection, crawling, and renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. altogether, delivering your content to the competitive phase with minimal attenuation.” That’s Barnard’s own framing of how a good feed can skip most of the SEO funnel, not a claim either platform makes in its docs — but it’s a useful mental model. The downside is that everything now rides on data quality, and there’s no rendered page for a human to sanity-check against mid-transaction the way there is with a search result.

Three formats, not one

A serious merchant doesn’t choose between these — they run all three at once, because each reaches a different set of agents and they cross-verify each other.

Google Merchant Center feedOpenAI ACP feed specschema.org Product/Offer
OwnerGoogleOpenAI (Agentic Commerce Protocol)Schema.org (open vocabulary)
Primary consumerShopping GraphThe Shopping Graph is Google's machine-learning-powered, real-time database of the world's products and sellers — the commerce equivalent of the Knowledge Graph. Built from Merchant Center feeds, crawled Product structured data, StoreBot verification, and broad web signals, it powers Shopping results, AI Overviews, AI Mode, and Gemini shopping answers. → Shopping ads, free listingsFree product listings (originally launched as \"Surfaces across Google\" in 2020) are unpaid, organic product placements Google generates from your Merchant Center feed or on-page Product structured data. There's no bid and no CPC — Google matches your product data to a query and decides whether and where to show it — across the Shopping tab, Google Search (Popular Products grids), Images, Lens, Maps/Business Profile, YouTube, and Gemini; AI Mode and AI Overviews aren't on Google's official surfaces list, though practitioner reporting links them to the same eligibility pool. They're enabled by default in most cases for new Merchant Center accounts., AI OverviewsAI Overviews are the AI-generated summary box Google shows above or within its regular search results, written by Gemini models from pages retrieved out of Google's normal Search index. It's a Search feature, not a separate platform or index., AI Mode, GeminiChatGPT search + Instant CheckoutAny crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index./agent reading page markup
FormatXML, TXT/CSV, Sheets, or Content APIParquet (zstd) preferred; jsonl.gz, csv.gz, tsv.gzJSON-LDJSON-LD (JavaScript Object Notation for Linked Data) is a script-based structured data format, typically paired with the schema.org vocabulary to describe page content for search engines and AI systems. Google recommends it over Microdata and RDFa because it's the easiest format to implement and maintain at scale — but all three work, and structured data isn't a ranking signal. (or Microdata/RDFa) in page HTML
DeliveryScheduled fetch, upload, or Content APISFTP push; stable filenames, overwriteRendered in the page, server- or client-side
IdentifiersGTIN where it exists, else brand + MPNgtin recommended; mpn fallbackgtin/gtin13/mpn/sku properties
FreshnessDaily minimum; hourly/API for fast moversFull snapshot ≥ daily + intraday APINo cadence defined — depends on page freshness
CheckoutFeeds listings; checkout happens elsewhereis_eligible_checkout + Agentic CheckoutAgentic checkout is the transaction-completion step of agentic commerce: the mechanism by which an AI agent creates, updates, and finalizes a purchase on a shopper's behalf — selecting fulfillment, calculating tax and shipping, passing a scoped payment token, and triggering order creation — often without the shopper visiting the merchant's site. APIcheckoutPageURLTemplate routes an agent
Owned in depth on this sitemerchant-center-feed-optimizationGoogle Merchant Center feed optimization is the process of improving the quality, accuracy, and completeness of the product data you submit to Google Merchant Center — titles, identifiers, images, and attributes — so your products show up more often and in more relevant places across Shopping ads, free listings, and AI shopping surfaces.agentic-commerce-protocolThe Agentic Commerce Protocol (ACP) is an open standard/protocol whose first implementing AI platform is OpenAI and first compatible payment provider is Stripe, defining how AI shopping agents discover products, manage carts, and complete purchases on a buyer's behalf — by reading a merchant's product feed and APIs instead of crawling the website.this article

The synthesis point: these aren’t competing choices. Google explicitly blends feed data and on-page structured data — “Providing both structured data on web pages and a Merchant Center feed maximizes your eligibility to experiences and helps Google correctly understand and verify your data,” and some experiences will pull, say, pricing from your feed when it’s missing from your markup. Which also means a mismatch between the two — feed price says one thing, on-page schema says another — is a trust-erosion and disapproval risk in every one of these systems. Google/Shopify’s UCPThe Universal Commerce Protocol (UCP) is an open-source standard (Apache 2.0) led by Google and co-developed with Shopify, Etsy, Wayfair, Target, and Walmart that lets AI agents, merchants, and payment providers transact through a common language instead of bespoke integrations. Merchants advertise their capabilities at /.well-known/ucp. leans on the same Merchant Center feed as its data backbone, so this work pays off there too.

The OpenAI ACP feed spec, field by field

This is the part most competing write-ups paraphrase secondhand. Here’s what OpenAI’s own product-feed spec actually requires (verified against the live docs):

Required fields

  • item_id — max 100 chars, and it must stay stable over time. This is the continuity key between snapshots; change it and the agent thinks the old product vanished and a new one appeared.
  • title — max 150 chars, avoid all-caps.
  • description — max 5,000 chars, plain text only.
  • url — must resolve 200; HTTPSHTTPS is the encrypted version of HTTP — it uses TLS to authenticate the server and protect data in transit between a browser and a website. Google announced it as a lightweight ranking signal in 2014 and today conditionally prefers HTTPS pages as canonical; Chrome marks plain HTTP pages 'Not Secure.' preferred.
  • brand — max 70 chars.
  • image_url — JPEG/PNG, HTTPS preferred.
  • price — with an ISO 4217 currency code.
  • availability — enum: in_stock, out_of_stock, pre_order, backorder, unknown.
  • seller_name (max 70), seller_url.
  • target_countries and store_countryISO 3166-1 alpha-2Two-letter country codes used in hreflang region targeting (us, gb, au)..
  • is_eligible_search — boolean, defaults false. You have to explicitly flip this to true to appear in ChatGPT search at all.
  • is_eligible_checkout — boolean; requires is_eligible_search = true.

Conditional requirements

  • availability_date is required if availability = pre_order.
  • seller_privacy_policy and seller_tos are required if is_eligible_checkout = true.
  • A return policy is required for checkout eligibility.

One scope caveat worth flagging: flipping is_eligible_checkout to true makes a product checkout-eligible in the feed, but it doesn’t by itself get you into ChatGPT checkout. Per OpenAI’s own docs, Instant Checkout in ChatGPT is currently limited to approved partners — you apply to participate — and even once approved, the merchant (not OpenAI) still performs order validation, determines fulfillment, calculates and charges tax, runs its own risk checks, charges the payment method through its own processor, and accepts or declines the order. OpenAI’s UI renders the session; your systems still own the transaction.

Field list confirmed live against the current spec on 2026-07-18. This schema is dynamic and versioned, though, so treat this as a snapshot, not a permanent list — recheck the live required-field table before you build to it, especially months from now.

Identifiers. gtin (numeric, 8–14 digits, no dashes or spaces — it accepts GTIN/UPC/ISBN in one field) is optional but strongly recommended; mpn (alphanumeric, max 70) is the fallback when GTIN is unavailable. Neither is “required” the way brand is, but OpenAI’s framing is that supplying them improves catalogue matching and reduces errors — functionally the same logic as Google’s GTIN-or-brand+MPN rule, just phrased as a strong recommendation.

The “15-minute update” myth — what OpenAI actually documents

Here’s a number I couldn’t verify, and I’d rather flag it than repeat it. Across trade coverage — and, I’ll admit, in an earlier version of our own ACP articleThe Agentic Commerce Protocol (ACP) is an open standard/protocol whose first implementing AI platform is OpenAI and first compatible payment provider is Stripe, defining how AI shopping agents discover products, manage carts, and complete purchases on a buyer's behalf — by reading a merchant's product feed and APIs instead of crawling the website. — you’ll see the claim that OpenAI requires feeds to update every 15 minutes. I went looking for it in OpenAI’s current commerce docs and couldn’t find that figure stated anywhere.

What the docs actually describe is a two-channel model, not a flat interval:

  • A full feed snapshot at least once a day, delivered as a file upload over SFTP using stable filenames that you overwrite (not versioned new files each time).
  • An API channel for intraday incremental updates — this is how price, stock, and (specifically) promotions changes propagate faster than the daily snapshot. Promotions data is API-only.

OpenAI’s own wording is roughly: provide the entire feed once a day via file upload, then send updates throughout the day via the API. There’s no separate “delete” call either — to pull a product you set is_eligible_search = false or drop it from the next full snapshot.

So “15 minutes” is best treated as a practitioner rule-of-thumb for how fresh your fast-moving SKUs should be, not a documented OpenAI requirement. The spec is versioned and moving fast, so check the current version before you quote any number — but the mechanism you should actually build for is daily snapshot + intraday API, and that’s more useful than the myth anyway.

Why real-time accuracy is non-negotiable for agents

This is the real difference between AI-feed work and Shopping-ads-feed work, and it’s worth being precise about why. A cached search snippet tolerates a little staleness because there’s a human in the loop who lands on your page and re-checks before paying. An agent completing a transaction has no such buffer — it acts on the price and stock state your feed asserts, so a stale value there is a real risk to the transaction in a way a stale search snippet isn’t. No official spec states that every stale value automatically breaks every transaction, and providers add validation steps of their own on top of the feed — but the mechanism itself (no human re-check before committing) is exactly why freshness matters more here than it does for an ad snippet.

Kate Ragotte, in Shopify’s enterprise guidance on preparing product data for AI channels, puts the consequence bluntly: “Price, availability, and return windows must be accurate and synced across every channel where they appear. Inconsistent or stale data is one of the fastest ways to get filtered out.” And on why structure matters at all: “AI agents can only recommend what they can understand, and that depends entirely on how well-structured your product data is” — machines can technically find loosely-structured information, “but they won’t confidently act on it. AI agents prefer structured, labeled data they can extract and trust.”

That’s the whole game: the agent has to trust the number enough to transact on it. The daily-snapshot-plus-intraday-API model is OpenAI’s concrete answer to closing the gap; on the Google side it’s the Shopping Graph, which Google says now includes “more than 50 billion product listings, 2 billion of which are updated every hour” — that hourly refresh benchmark is the pace the system expects your data to move at. (The Shopping Graph as a system is its own topic; this article just assumes your feed populates it.)

Google’s Conversational Attributes — the concrete “new for AI” layer

On the Google side, the specific thing that’s new for AI is a set of optional Merchant Center attributes announced at Google Marketing Live in May 2026, covered by Search Engine Land. The point of them is that Google’s AI systems “use that structured data to better match products with conversational shopping queries across AI Mode, Gemini and other AI-powered surfaces.” Google’s own attribute-help wording, as reported, is that these are “primarily intended for use in conversational experiences such as AI Mode in Google Search.”

Google’s Merchant Center Help documents six conversational attributes: question and answer, document link, related product, item group title, variant option, and popularity rank. product_highlight and product_detail are existing, pre-existing complementary fields — not two additional members of the new conversational set, despite that being how some trade coverage (including an earlier version of this article) grouped them.

Google is explicit that these are optional and that adding them doesn’t affect your existing product-approval status; the framing is that they can help product understanding and discovery in conversational surfaces, not that they’re required or that they guarantee inclusion, ranking, or citation in any AI Mode/Gemini response.

Attribute count and names confirmed against this site’s research packet (sourced from Google’s live Merchant Center Help page, captured 2026-07-16). A direct same-day refetch of support.google.com’s conversational-attributes page was attempted for this pass and blocked by Google’s bot-detection each time — treat this as verified against a recent capture rather than a same-day live refetch, and recheck before quoting exact wording.

Frame these as enrichment, not a replacement. They sit on top of your required attributes. If your base feed is disapproved for a bad price or a fabricated GTIN, a beautiful Q&A attribute doesn’t save you.

schema.org Product/Offer as the agent-facing markup layer

There is no “AI edition” of schema.org — the properties agents rely on are ordinary ecommerce vocabulary being read by a new class of consumer. Three matter most:

  • Offer.availability — “The availability of this item — for example In stock, Out of stock, Pre-order, etc.” The stock state an agent reads from your markup.
  • Offer.checkoutPageURLTemplate — “A URL template (RFC 6570) for a checkout page for an offer.” This is the property that lets an agent route a shopper to a pre-filled checkout from your markup alone.
  • Offer.acceptedPaymentMethod — the payment methods you accept, which an agent may check before attempting a transaction.

Keep this markup’s price and availability in lockstep with your feed. Google blends the two and cross-verifies them, so a divergence between on-page schema and feed is exactly the kind of inconsistency that erodes trust across all these surfaces.

Feed-quality failures that break agentic discovery and checkout

This is the practical payoff. These are the specific things that break an AI sale — not just an ad disapproval:

  1. Feed/checkout price mismatch. The feed says $40, checkout says $45. For ads it’s a disapproval; for an agent mid-transaction it’s a broken purchase.
  2. Phantom or stale stock. in_stock in the feed, sold out at checkout. The agent commits to buying something that isn’t there.
  3. Missing or wrong identifiers. No GTIN/MPN, or a fabricated one, causes the agent to mismatch you against the wrong product across formats. Google’s rule: don’t make up, guess, or copy identifiers from similar products; use identifier_exists = false for genuinely identifier-less goods.
  4. Missing return policy or seller ToS. In the ACP spec these are required for is_eligible_checkout = true. Omit them and you’re discoverable but can’t transact.
  5. Unstable item_id/SKU. If the identity key changes between snapshots, the agent loses continuity — the old product looks deleted and the new one looks unknown, wiping any accumulated matching.
  6. ALL-CAPS or promotional text in titles. A policy violation across Google and OpenAI alike (OpenAI’s spec says avoid all-caps outright).
  7. AI-generated images or descriptions with drift. Descriptions that invent specs not on the landing page, or AI-generated images missing required IPTC disclosure metadata, break the cross-verification between feed and page. (The feed-optimization guideGoogle Merchant Center feed optimization is the process of improving the quality, accuracy, and completeness of the product data you submit to Google Merchant Center — titles, identifiers, images, and attributes — so your products show up more often and in more relevant places across Shopping ads, free listings, and AI shopping surfaces. covers the “don’t invent facts” rule in depth.)
TIP Catch identity and image failures before the next feed push

Paste a representative Merchant feed sample and validate its product identity and image URLs with my free AI Commerce Validator Free

  1. Test a sample that includes variants and recently changed products, not only one clean row.
  2. Fix duplicate product IDs first so later snapshots preserve the right product identity.
  3. Replace missing or relative image paths with absolute HTTP(S) URLs, then rerun the same sample.
One sample exposes two different trust failures: the identity key is duplicated and the images cannot be fetched reliably.

The AI Commerce Validator passes the required merchant-feed fields, then warns that product ID sku-1 is duplicated in rows one and two. It also warns that both sampled rows have a missing or invalid absolute HTTP or HTTPS image URL. The result recommends correcting the feed and rerunning the check.

What feed quality does and doesn’t guarantee

One honest caveat so you don’t overclaim internally: a great feed gets you discovered and eligible. It does not guarantee conversion. Walmart’s own reported experience is the cleanest data point here — per Search Engine Land, its in-chat ChatGPT checkout converted at roughly one-third the rate of click-out transactions after testing around 200,000 items. Read the reporting carefully: the cited cause was checkout UX and trust (fear of split shipments, single-item-only checkout) — not feed data staleness. So don’t use it as evidence that feeds fail; use it as the reminder that getting into the feed is necessary, not sufficient. Discovery and checkout conversion are separate problems.

It’s worth keeping the whole chain separate in your head, because “my feed is accepted” answers a much narrower question than it sounds like: ingestion (the platform accepted your file) is not validation (it passed the field/policy checks), which is not eligibility (is_eligible_search/is_eligible_checkout are set and approved), which is not display (an agent actually surfaces the product), which is not ranking or citation (it’s the one recommended), which is not checkout approval (you’re an approved Instant Checkout partner), which is not conversion (the shopper buys). A clean feed raises your odds at every step; it doesn’t collapse the chain into one guaranteed outcome.

Where this fits

  • Agentic Commerce ProtocolThe Agentic Commerce Protocol (ACP) is an open standard/protocol whose first implementing AI platform is OpenAI and first compatible payment provider is Stripe, defining how AI shopping agents discover products, manage carts, and complete purchases on a buyer's behalf — by reading a merchant's product feed and APIs instead of crawling the website. — the protocol itself and its five building blocks (Product Feed is one of them).
  • Universal Commerce ProtocolThe Universal Commerce Protocol (UCP) is an open-source standard (Apache 2.0) led by Google and co-developed with Shopify, Etsy, Wayfair, Target, and Walmart that lets AI agents, merchants, and payment providers transact through a common language instead of bespoke integrations. Merchants advertise their capabilities at /.well-known/ucp. — Google/Shopify’s counterpart, same Merchant Center feed as its backbone.
  • Google Merchant CenterGoogle Merchant Center (GMC) is a free platform where retailers upload and manage product data so their products can appear across Google — Shopping, organic Search product grids, Images, Lens, and AI surfaces. Since 2020 it powers free (organic) product listings, not just paid Shopping ads. and Merchant Center feed optimizationGoogle Merchant Center feed optimization is the process of improving the quality, accuracy, and completeness of the product data you submit to Google Merchant Center — titles, identifiers, images, and attributes — so your products show up more often and in more relevant places across Shopping ads, free listings, and AI shopping surfaces. — the Google-side basics, title/image/attribute deep dives, and the GTIN-as-a-lever data I won’t repeat here.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.