Do your product pages describe each product to AI in a way it can shop with?
Confirms each product detail page emits Product structured data with name, image, description, and price or reviews.
What this signal tests
We check every product detail page for a Product block in JSON-LD that includes the product's name, at least one image, a description, and either an offer (with price) or a review or aggregate rating. This is the minimum information an AI shopping agent needs to understand what is being sold and whether it is worth presenting to a buyer.
Why it matters for your visibility in AI
AI shopping is rapidly becoming a primary discovery channel. ChatGPT has launched shopping features, Google's AI shopping graph powers AI Overviews for purchase intent, and Perplexity surfaces buyable items directly. All of these systems extract products from Product structured data; pages without it are invisible to them, regardless of how good the product or how strong the classic SEO. The gap between merchants with and without Product schema is widening. A competitor with full structured data appears in AI shopping results even when their classic search ranking is lower than yours. If your products do not emit Product schema, you are conceding the AI shopping channel entirely, often without knowing it.
Pass criteria at a glance
| Criterion | Passes when |
|---|---|
| Product JSON-LD with required fields on every PDP. |
How we test it
We crawl a sample of your product URLs and look inside their JSON-LD blocks for a type of Product. We confirm name, at least one image URL, a description, and either an offers field with a price or a review or aggregateRating field. We then check that those fields contain real values rather than empty strings or placeholders. Any missing required field fails the signal for that page.
Show technical detection method
@type Product with name, image, and (offers OR review) on PDP URLs.
If your site fails: how to fix it
- Identify your product detail page template. On most e-commerce platforms there is only one. Updating it once covers every product.
- If you use Shopify, WooCommerce, BigCommerce, or a similar mainstream platform, install or enable the built-in Product schema feature (usually under SEO settings). It will populate name, image, description, and offer from your existing product fields.
- For custom builds, add a JSON-LD block to your product template that emits @type Product with name, image (an array of all gallery images), description, sku, brand, and nested Offer with price, priceCurrency, and availability.
- Make sure the description is the same as what shoppers see on the page. Differences between visible description and schema description can be flagged as deceptive markup.
- Add the optional but valuable fields next: gtin or mpn for product identifiers, aggregateRating from your review system, and a hasMerchantReturnPolicy block. These improve your standing in AI shopping comparisons.
- Validate three to five representative URLs in Google's Rich Results Test under the Product test type. Fix any error before launching.
Quick facts
| Maturity | ESTABLISHED |
|---|---|
| Weight | high |
| Category | Structured Data |
Primary sources
Related signals
Frequently asked questions
Will this make my products appear in Google Shopping?
Product schema is necessary but not sufficient. Free Google Shopping listings require valid Product schema plus a connected Merchant Center account. The schema is what makes you eligible. For AI shopping in ChatGPT and Perplexity, the schema alone is usually enough to be discovered.
Do I need Product schema on category pages too?
Not on the category page itself, but each linked product should emit Product schema on its own detail page. Category pages can optionally emit an ItemList of the products they contain, which helps AI tools understand the listing structure, but the bulk of the value sits on individual product detail pages.
What if I have hundreds of thousands of products?
You update the template once and every product inherits the change automatically. The work is not per-product; it is per-template. This is the same model behind every modern e-commerce platform's structured data, and it scales fine to catalogues of any size.
How is this different from the product feed I send to Google Merchant Center?
A merchant feed is a separate XML or CSV file you send to a specific platform. Product schema is metadata embedded on the actual page, readable by any AI tool that visits. Sending a feed does not replace on-page Product schema; both should be in place, because different consumers use different sources.
Run your own scan
Run a free scan and see how your site grades across all 155 AI-readiness signals.