Structured data
HIGHProduct JSON-LD present on PDPs
Each sampled PDP exposes a Product JSON-LD node in its initial HTML. Product JSON-LD is how agents identify the canonical product entity without running JavaScript.
What this check looks for
Product JSON-LD is the foundational structured-data signal for every agentic-commerce surface — without it, agents have to scrape visible DOM text or rely on a feed they may not have access to. v2 walks each PDP's parsed `jsonLdBlocks`, flattens `@graph` containers, and counts the page as passing if at least one node has `@type` `Product`, `ProductGroup`, `IndividualProduct`, or `ProductModel`. Coverage ≥ 95% across the sample is a pass; ≥ 50% is partial; otherwise fail.
Which AI surfaces it affects
- Google AI Mode (UCP)100
- ChatGPT (ACP)90
- Microsoft Copilot70
- Meta AI70
- Perplexity60
Weighted against the live specs — ACP 2026-04-17, UCP 2026-04-08.
How to fix it
Publish a Product JSON-LD block on every PDP
Shopify
Developer- Most modern Shopify themes ship Product JSON-LD by default. Confirm: Online Store → Themes → Customize → Theme settings → Search engine listings.
- If your theme is custom or pre-2022, paste Shopify's Product schema snippet into `templates/product.liquid` or `sections/main-product.liquid`.
- Validate one PDP at https://validator.schema.org/.
BigCommerce
Developer- Storefront → My Themes → Customize → Advanced → Edit Theme Files.
- Edit `templates/components/products/product-view.html`; add the Product JSON-LD block referencing `{{product.title}}`, `{{product.sku}}`, `{{product.calculated_price}}`.
- Alternatively install "Product Schema by SEO" from the BigCommerce App Marketplace.
WooCommerce
A few minutes- WooCommerce core ships minimal JSON-LD on purpose. Install Yoast SEO, Rank Math, or "Product Structured Data for WooCommerce".
- Activate; the plugin emits Product schema on every PDP from existing fields (name, SKU, regular_price, in_stock).
- Verify with https://validator.schema.org/ against a PDP.
Custom / headless
Developer- Server-render a Product JSON-LD block in the `<head>` of every PDP.
- Bind `name`, `image`, `description`, and an `offers` object to your product model fields.
- Re-validate with https://validator.schema.org/.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Example Hat",
"description": "Black wide-brim fedora, wool felt.",
"image": "https://example.com/hat.jpg",
"brand": {
"@type": "Brand",
"name": "Acme"
},
"offers": {
"@type": "Offer",
"price": "49.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
}
}
</script>The spec it's pinned to
schema.org/Product
Every product detail page should expose a `<script type="application/ld+json">` block whose `@type` is Product (or ProductGroup). Agents read this to identify the canonical product entity without rendering JavaScript.
Google merchant listing — Product structured data
Google's merchant listing rich result requires `Product` structured data on the PDP with at minimum `name`, `image`, and an `offers` block.
Does your store pass this check?
Run the full audit — 82 checks across five AI shopping surfaces. Most tools only check whether you get mentioned; we check whether an agent can buy from you.