eg

ecommerce feed checker.

drop in your product feed, see what breaks listings and what stops ai answering questions about you

drop your feed here, or

csv, tsv, txt or google shopping xml. comma, tab, semicolon or pipe separated.

selling market
what to check
scan depth

your file is read in this browser tab. nothing is uploaded, stored or sent anywhere.

this scores how well the feed reads to shopping surfaces and ai assistants. to check whether google will approve each item against the merchant center spec for your country, try the merchant feed validator.

> why run this at all

your feed is the product page now

Shopping surfaces and AI assistants increasingly answer from structured product data rather than from your page. When someone asks an assistant for a navy merino jumper in a medium under 80 pounds, the answer is assembled from feed attributes. If colour, size and price are not in the file, you are not in the answer, however good the product page is.

the expensive failures are the quiet ones

Merchant Center will tell you an item was disapproved. Nothing tells you that 3,000 of your descriptions are 40 characters long, that half your GTINs fail their check digit, or that every variant in a group looks identical because nobody populated colour. Those products still list. They just never get chosen.

agentic checkout runs on facts, not prose

An agent putting an item in a basket needs an id that does not move, a price with a currency, a stock state it can trust, a delivery cost and a returns position. Those are feed fields. Missing them is the difference between being bought and being described.

it costs you one export

You already generate this file every day. Running it through a checker takes a few seconds and gives you a ranked list of what to change, rather than a wall of validation output nobody reads.

> worked example

A Shopify merchant drops in a 4,200-row CSV. It parses as comma separated with 31 columns, 24 of them recognised. Structure scores 94, required attributes 88, recommended 61, AI answer readiness 34. Top of the fix list: 2,914 rows with a description under 160 characters, then 1,180 rows with no GTIN and no MPN, then 640 rows where sale_price is not lower than price. Nothing there is a disapproval, which is why nobody had spotted it.

takeaway, A feed can be perfectly valid and still be useless to an assistant. Passing validation and being able to answer a question are two different bars.

> when operators reach for this

  • Ecommerce managers checking a new feed export before it goes anywhere near Merchant Center, so the first sync is not a wall of disapprovals.
  • Agencies auditing a client feed on day one, when they need a ranked list of problems and a document they can hand over.
  • Brands who have started appearing in AI shopping answers for some products and not others, and want to see what the missing ones have in common.
  • Developers building a feed integration who want a second opinion on delimiters, quoting and encoding before they trust their own parser.
  • Merchandisers deciding where to spend copywriting budget, by seeing how many rows actually have a usable description.

> the calculation

  • feed structureparse integrity, consistent columns, unique ids, core attributes found
  • required attributesweighted fill rate of google shopping required fields, minus rows that fail validation
  • recommended attributesweighted fill rate of the fields that drive classification, grouping and filtering
  • ai answer readinessweighted fill rate of the attributes an assistant needs to describe, compare and check out
  • overall scorestructure 15% + required 35% + recommended 20% + ai readiness 30%Weights shift when you pick google shopping only or ai answers only. A row that fails validation counts as missing, a row with a warning counts as half.
  • fix orderingshare of rows affected × severity × how much the attribute mattersSo a warning on 90% of rows outranks an error on three of them.

Frequently asked questions

Does my feed get uploaded anywhere?
No. The file is read by your browser and parsed in the tab you are looking at. Nothing is sent to a server, nothing is stored, and there is no account or email step. You can check this by opening your network tab and running the tool, or by disconnecting from the internet after the page loads.
What file types can I check?
CSV, TSV and TXT files separated by commas, tabs, semicolons or pipes, and Google Shopping XML feeds using item or entry elements. The delimiter is detected from the header row, and quoted fields containing commas or line breaks are handled. If you have a Shopify or WooCommerce feed URL, save it locally first and drop in the file.
What rules is it checking against?
Two things at once. Google Shopping product data specification rules, which cover required attributes, allowed values for fields like availability and condition, price formatting, title and description limits, and GTIN check digits. And a second set covering the attributes an AI assistant needs in order to answer questions and complete a purchase, such as structured product details, highlights, delivery and returns information.
What is a good score?
Above 85 means the feed will parse cleanly and carries the detail needed to be quoted in an answer. 70 to 85 usually means the Google side is fine and the gaps are in answer readiness. Below 50 there is normally something structural, a missing required column or a parsing problem, that should be fixed before anything else.
Why flag a missing GTIN when my products list without one?
Listing and being matched are different things. The GTIN is what tells a shopping surface that your item and the one on three other sites are the same product, which is what puts you into comparisons and price rankings. Without it you are an unmatched listing. If a product genuinely has no barcode, set identifier_exists to no and supply brand and MPN, and the check stops flagging it.
Does this replace Merchant Center diagnostics?
No, it runs before it. Merchant Center tells you what was rejected after you have uploaded and waited. This tells you what will be rejected, plus the large category of problems Merchant Center never mentions because they are not policy violations, they are just thin data.
What can it not check?
Anything that needs to fetch your site or your account. It cannot confirm the price in the feed matches the price on the landing page, cannot check image resolution or whether an image loads, cannot see your Merchant Center account status or policy strikes, and cannot tell you whether a stock value is true. It checks the file, thoroughly, and is honest about the rest.
How often should I run it?
Whenever the feed changes shape. A new export script, a platform migration, a new market, a bulk catalogue import, or a supplier feed you have just started ingesting. Beyond that, once a quarter catches the slow drift that happens when hundreds of products get added by different people.
My feed has hundreds of thousands of rows. Will it cope?
It parses up to 200,000 rows in the browser. Above that, or if your machine struggles, use the scan depth option to check the first 25% or 50%. Feed problems are almost always systematic rather than isolated, so a sample of that size gives you the same fix list.

> related calculators, ai & llm visibility