Learn / Fixes
How to publish a product feed for AI agents
A product feed lets an agent read your whole catalogue in one request instead of fetching and parsing every product page. That matters because an agent answering a question does not survey your store, it takes the cheapest path to an answer, and a store that is expensive to enumerate gets skipped rather than ranked lower.
A product feed lets an agent read your catalogue in one request rather than reconstructing it page by page. That is the entire argument for it, and it is a stronger argument than it sounds, because an agent answering a shopper’s question is not surveying your store. It takes the cheapest path to an answer.
A store that is expensive to enumerate does not get ranked lower. It gets skipped. This is the fix for no product feed.
What has to be in it
The feed exists to answer the questions a comparison asks. Anything that does not help answer one of those is weight.
- A stable identifier per item, and a GTIN where one exists, so you can be matched against the same product elsewhere.
- Price and currency, matching what a shopper actually pays.
- Availability, at variant level rather than product level.
- A canonical URL per item, pointing at the page you want a shopper sent to.
- Enough attribute detail to answer a constraint: size, colour, material, whatever your category is chosen on.
What to leave out
Marketing copy, long descriptions and anything that only makes sense rendered. A feed is not a second storefront. Every field that does not answer a question makes the file larger and slower without making you more likely to be chosen.
The failure that is worse than not having one
A stale feed is confidently wrong. An absent feed makes an agent fetch your pages, which is slow but accurate. A feed carrying last month’s prices makes it fast and incorrect, and it will not check your page to see whether the feed was right.
So a feed is a commitment to refreshing it, not a file you publish once. See how to keep a product feed fresh and stale feed.
Check it the way an agent would
Fetch the URL cold, from outside your network, with no credentials. Confirm it resolves without a challenge, completes in a reasonable time, and contains a product you added recently and a price you changed recently. Those two spot checks catch most of what goes wrong.
Then confirm the feed and your product pages agree. Where they disagree, decide which is authoritative and fix the other, because an agent that sees both will not know which one you meant.
Questions
I already have a sitemap. Why do I need a feed?
A sitemap says your product pages exist. A feed says what they contain. With only a sitemap, an agent has to fetch and parse every page to learn your prices, which is expensive enough that it often will not.
Can I reuse my shopping ads feed?
Usually yes, and it is the fastest way to start. Check two things: that it covers your whole catalogue rather than only the products you advertise, and that it refreshes on the same schedule as your prices. Advertising feeds are often deliberately partial.
What if my catalogue is very large?
Split it and reference the parts from an index, the way large sitemaps work. A single enormous file that times out is functionally the same as no feed, and it fails in a way nobody notices because the URL still resolves.