All errorsNo Product markup found

Why your product page has no Product schema, even on a modern theme

What the error means

The page carries no Product JSON-LD that a parser can read, so search engines and assistants have no structured price, availability or name to work from.

Why Google rejects it

Most themes ship Product markup. It disappears for three reasons: a custom product template that dropped the schema snippet, an app that rewrote the head, or markup emitted only after JavaScript runs — which a crawler fetching raw HTML never sees. A fourth case looks identical but is not: the theme emits ProductGroup with the real products nested under hasVariant, which naïve validators report as missing.

How to fix it

  1. View source on the live page — not the inspector, which shows the page after scripts have run — and search for application/ld+json.
  2. If a block is there but broken, validate the JSON. One trailing comma makes the whole block invisible.
  3. If the markup only appears in the inspector, it is injected client-side. Move it into the server-rendered template.
  4. If you see ProductGroup, that is valid — check that each entry under hasVariant carries its own offer.
Find out if this is happening to you

Shipwork fetches the raw HTML, parses every JSON-LD block including nested ProductGroup and hasVariant, and names each missing field. Free, no account, no signup — paste your store address.

Check my store

Go deeper: Product schema, fully explained

Other errors like this