No product data
Nothing a cart can read
The page sends no Product data before any script runs, so a shopping agent has nothing to buy from.
Shop Ready, on WordPress
7 product pages read, 6 with Product data, stating 6.2 of the 12 fields a cart reads on average. Read October 22, 2026.
Each field the store's products leave out, the most products first. One change to the store's product template fixes every product at once.
Some product pages send no Product data before any script runs, so a shopping agent has nothing to read. Write it into the product template.
Give each product its barcode (GTIN), or at least its SKU, from the product itself.
State what delivery costs, where it goes and how long it takes, once for the store or on each offer.
State the return policy: the window, the countries and who pays, once for the store.
Say each product is new, or how it is used or refurbished.
State the price as a number, such as 68.00, never text with a symbol in it.
Give each product a full image address, starting https://, not one starting //.
Name the brand, so the product can be matched across stores.
Give each product the description its page shows.
State stock as a schema.org value, such as https://schema.org/InStock, for each variant.
The fewest fields first. The price and stock on each listing are what its data states, not what the page shows.
Nothing a cart can read
The page sends no Product data before any script runs, so a shopping agent has nothing to buy from.
$3.49 USDStock not stated
See the product page| Name | Stated |
|---|---|
| Image | Missing |
| An offer | Stated |
| Price | Stated |
| Currency | Stated |
| In stock or not | Missing |
| Brand | Missing |
| Product identifier | Missing |
| Description | Missing |
| Condition | Missing |
| Shipping | Missing |
| Returns | Missing |
5 Product blocks on one page. Two answers for one product is worse than one: an app and the theme often each write their own.
$14.99 USDStock stated
See the product page| Name | Stated |
|---|---|
| Image | Missing |
| An offer | Stated |
| Price | Stated |
| Currency | Stated |
| In stock or not | Stated |
| Brand | Missing |
| Product identifier | Missing |
| Description | Missing |
| Condition | Stated |
| Shipping | Missing |
| Returns | Missing |
6 Product blocks on one page. Two answers for one product is worse than one: an app and the theme often each write their own.
No price in the dataStock stated
See the product page| Name | Stated |
|---|---|
| Image | Missing |
| An offer | Stated |
| Price | Wrong |
| Currency | Stated |
| In stock or not | Stated |
| Brand | Stated |
| Product identifier | Missing |
| Description | Stated |
| Condition | Missing |
| Shipping | Missing |
| Returns | Missing |
No price in the dataStock stated
See the product page| Name | Stated |
|---|---|
| Image | Stated |
| An offer | Stated |
| Price | Wrong |
| Currency | Stated |
| In stock or not | Stated |
| Brand | Stated |
| Product identifier | Missing |
| Description | Stated |
| Condition | Missing |
| Shipping | Missing |
| Returns | Missing |
No price in the dataStock stated
See the product page| Name | Stated |
|---|---|
| Image | Stated |
| An offer | Stated |
| Price | Wrong |
| Currency | Stated |
| In stock or not | Stated |
| Brand | Stated |
| Product identifier | Missing |
| Description | Stated |
| Condition | Missing |
| Shipping | Missing |
| Returns | Missing |
No price in the dataStock stated
See the product page| Name | Stated |
|---|---|
| Image | Stated |
| An offer | Stated |
| Price | Wrong |
| Currency | Stated |
| In stock or not | Stated |
| Brand | Stated |
| Product identifier | Missing |
| Description | Stated |
| Condition | Missing |
| Shipping | Missing |
| Returns | Missing |
A count of fields says what a page's data states, read before any script runs. It does not decide eligibility: Merchant Center and Google's own review decide whether a product shows in merchant listings, Universal Cart or any other Google feature.
Every page of cartlens.co against mttr's rulebook: 88 pages read.
The Shop Ready skill works in your store's own theme with Claude Code, Codex or Cursor, writes every field from the product's own data, and checks the live pages with mttr after. On Shopify, mttr can do it from the admin: that is in beta.