UXFixUXFix
Language
Free tool · one agent rule · PDP-A01

Is your Product schema complete enough for AI agents?

Free 20-second check. We fetch one product page the way AI crawlers do, scripts off, parse the JSON-LD and tell you which of six fields agents need are present.

About 20 seconds · no sign-up · paste a product URL, or your store root and we pick a product · nothing is written to your store
What the agent reads · then what we recommendPDP-A01
view-source: /products/royal-oud
application/ld+json@type Product
{"name": "Royal Oud 50ml","offers": {"price": "420","availability": "In stock"}// no gtin, no sku// no aggregateRating// no shippingDetails}✕ 2 of 6 fields
{"offers": {"price": "420.00", "priceCurrency": "SAR","availability": "schema.org/InStock","shippingDetails": { "shippingRate"}},"gtin13": "6281234567890","aggregateRating": { "ratingValue": 4.7}}✓ 6 of 6 · pass
Raw HTML fetch · no JavaScript · the way AI crawlers read it~20 s
1

It fetches one product page, scripts off

The raw HTML, the way AI crawlers read it. Whatever JavaScript would add later is not counted, because agents do not wait for it.

2

It parses every JSON-LD block for a Product

Then checks six fields: price, availability, brand, an identifier, shipping details and rating. The same detector the full 115-rule audit runs.

3

Pass, partial or fail, field by field

With the block we found shown back to you. If the page blocks crawlers we say so rather than guess. Free, no sign-up.

What we check: rule PDP-A01 in six parts

Full rule page ›

The rule requires a schema.org Product with the fields shopping agents read before they will quote, compare or buy an item. The verdict comes from the same detector the full audit runs: five or six fields is a pass, three or four is a partial, fewer is a fail.

RuleWhat we checkPasses when
PDP-A01 · aPrice in the offeroffers.price, the one number an agent must have before it can quote you at all.✓ pass a price is declared in the Product's offer.
PDP-A01 · bAvailability declaredoffers.availability. Use the schema.org vocabulary (InStock, OutOfStock): free text like 'In stock' means nothing to a parser.✓ pass an availability value is declared.
PDP-A01 · cBrand namedbrand on the Product. Agents group and filter offers by brand; an unbranded product is a text match only.✓ pass a brand is declared.
PDP-A01 · dAn identifier: GTIN or SKUgtin, gtin13, gtin12 or sku. An identifier lets an agent confirm you sell the same item as other stores and compare on price.✓ pass any product identifier is present and non-empty.
PDP-A01 · eShipping details in the offeroffers.shippingDetails. This is how an agent quotes a landed price without opening your checkout.✓ pass shipping details are declared in the offer.
PDP-A01 · fAggregate ratingaggregateRating with a value and a count. Agents use it to rank between comparable offers.✓ pass an aggregate rating is declared.

Best practices any store should adopt

Each point comes with the reason it matters and the spec it rests on. None of it is visible to shoppers; all of it decides whether an agent quotes your product or a competitor's.

1
Put the schema in the server response, not in a script

AI crawlers fetch HTML and leave. Schema added by a reviews app or a tag manager after load is invisible to them, even though it passes browser-based validators.

EvidenceMost AI crawlers do not execute JavaScript; JSON-LD must be in the initial response. · OpenAI crawler docs · Google Search Central
2
Use the schema.org vocabulary for availability, not words

'In stock' means nothing to a parser. https://schema.org/InStock does. The same goes for conditions and price validity dates.

EvidenceOffers with an invalid availability value are treated as unknown stock and can be dropped from purchasable results. · schema.org Offer · Google Merchant listings
3
Ship an identifier on every variant

A GTIN lets an agent confirm you sell the same item as three other stores and compare on price. A SKU at least makes the variant addressable.

EvidenceProducts with a GTIN are matched to catalogue entries and appear in comparisons; unidentified products are text-matched only. · Google Merchant Center product data spec
4
Declare shipping in the offer

It is the field stores most often skip and the one agents most often need. An agent quoting a landed price will skip a store that makes it open checkout to find out.

Evidenceoffers.shippingDetails is how structured data carries shipping cost to a machine reader. · schema.org OfferShippingDetails · Google Search Central
5
Keep the schema and the page in agreement

A price that changed on the page but not in the schema is worse than no schema. Machine readers cross-check, and a mismatch reads as unreliable.

EvidenceStructured data that misrepresents page content violates Google's structured data guidelines. · Google Search Central structured data policies
How common is this? · September 2026
5.1%
of 451 audited stores have a complete Product schema · 74.3% fail outright · 20.6% partial
PDP-A01Complete Product schema.org: price, availability, GTIN/SKU, rating, shipping details
All statistics →
Pass rate per rule · audited stores% pass cleanly
CHK-001Guest checkout offered as first-class option (no account wall)54%
n=226 · 19.5% fail outright · 26.5% partial
PDP-004Shipping cost or estimate discoverable from PDP34.5%
n=383 · 43.6% fail outright · 21.9% partial
PDP-A02Price and availability present in DOM as text (not JS/image only)85.6%
n=395 · 4.3% fail outright · 10.1% partial

Three stores that get it right

All 4 passing stores ›
TThebrickproduct page
All required + all recommended fields present.
This store's audit stored no picture for this rule.Audited 2026-09-11
Thebrickshopify61

passes this rule · PDP-A01

DDavidsbridalproduct page
All required + all recommended fields present.
This store's audit stored no picture for this rule.Audited 2026-09-08
Davidsbridalshopify58

passes this rule · PDP-A01

TTomsproduct page
All required + all recommended fields present.
This store's audit stored no picture for this rule.Audited 2026-09-08
Tomsshopify52

passes this rule · PDP-A01

Related articles

Resources ›
Audit findings · 17 min readShipping Cost on the Product Page: How PDP-004 Is Scored

PDP-004 is one of the most-failed critical rules in our audits: here is exactly what a passing product page shows, where it shows it, and how to make the data readable by AI shopping agents.

Read →
Audit findings · 13 min readAll 115 Ecommerce Checkout UX Rules We Audit Against

A full breakdown of the 115-rule checklist UXFix uses to audit product pages, carts and checkout for both human shoppers and AI shopping agents.

Read →
Agent UX · 8 min readWhy ChatGPT and Gemini Don't Recommend Your Store

If your product pages are indexed and correctly priced but AI shopping agents still skip you, the problem is almost always missing schema, an incomplete feed, or no structured reviews.

Read →
Isn't this the same as Google's Rich Results test?

Partly. Google tests validity for search snippets. We test the six fields shopping agents need to quote and compare a product, with the same detector our full 115-rule audit runs, and we show you exactly which block we read.

My schema is injected by an app after page load. Does it count?

No. Agents read the raw HTML. The result will say no Product JSON-LD was found in the server response, which is exactly what an AI crawler concludes.

Is this the same as the AI shoppers check?

It is one of its 12 agent rules, gone deep. The full audit runs all 12 across product page, cart and checkout; this tool checks the first one field by field.

Free · no card · about 2 minutes

This is one rule. The full audit runs 115.

Product page, cart and checkout, scored for human shoppers and for AI shopping agents, with a revenue band on every failing issue.