All articles
WooCommerce · 3 min read

Product schema for WooCommerce: the fields AI systems actually read

Not all structured data is equal. Here are the Product fields that change whether an answer engine can use your listing, and how WooCommerce fills them.

Structured data is the machine-readable version of your product page. Schema.org defines the Product vocabulary, while Google documents which Product and Offer properties its shopping experiences can use. WooCommerce generates a reasonable Product node by default, but "present" and "complete" are different things.

The fields that matter, in order

Tier 1: the core commerce facts

  • name — the product title. Always present.
  • offers.price and offers.priceCurrency — a shopping answer without a price is not a shopping answer.
  • offers.availability — in stock or not. Answers that recommend an unbuyable product get corrected fast, so systems are cautious about products with no availability signal.
  • image — a core recommended product property for visual and shopping experiences.

Google's merchant listing documentation gives the current required and recommended properties, including price, currency, availability, shipping and return information. Eligibility never guarantees that a result will be shown.

Tier 2: product identity

  • gtin (or gtin8 / gtin12 / gtin13 / gtin14) — the global barcode. This is what lets anything said elsewhere about the product attach to your listing.
  • brand — most buyer questions contain a brand. No brand, no retrieval for those questions.
  • sku — useful internally and fills a field that is otherwise dropped, though it identifies nothing outside your store.
  • mpn — the manufacturer part number, valuable in categories where GTINs are inconsistently assigned.

Tier 3: the ones that improve quality of citation

  • description — should be the useful summary, not marketing copy.
  • aggregateRating and review — corroboration. Systems prefer recommending things other people have evidently bought.
  • color, material, size — specification facts that let you match narrower questions.
  • itemCondition — matters more than people expect in refurbished and second-hand categories.

What WooCommerce gives you—and what you still need to verify

WooCommerce can expose name, description, image, url, sku, offers and review data from the product record. The exact output depends on your WooCommerce version, theme and SEO extensions, so treat the rendered page—not a checklist—as the source of truth.

What it does not populate unless you have supplied the underlying data: gtin, brand, mpn, and the specification fields. Those come from your product admin, and if the fields are empty the schema simply omits them.

The duplicate schema trap

This is the most common way a well-meaning fix makes things worse.

If you install a plugin that "adds product schema", and WooCommerce or your SEO plugin is already generating a Product node, the page now has two competing Product entities. A consumer has to decide which is authoritative. Some pick one, some merge them badly, some discard both.

The safer approach is to enhance the existing node rather than emit a conflicting second one. WooCommerce exposes woocommerce_structured_data_product; Yoast exposes wpseo_schema_product; Rank Math exposes rank_math/snippet/rich_snippet_product_entity. Filling gaps through whichever filter is live keeps one coherent product description on the page.

Before adding any schema plugin, check what is already there:

  1. View source on a product page.
  2. Search for "@type":"Product".
  3. Count the matches. The answer should be one.

Verifying rather than assuming

Setting a field in the WooCommerce admin does not guarantee it appears in the markup, because the component generating your schema may not read that source. The only reliable check is the rendered page.

A quick audit loop:

  • Pick your best-selling product.
  • View source, find the Product JSON-LD.
  • List which of the Tier 1 and Tier 2 fields are present.
  • Every absent field is either missing data in the admin, or a plugin not reading it.

Those are different problems with different fixes, and telling them apart takes thirty seconds once you look at the actual output.

A note on honesty

Structured data describes your product to a machine that cannot verify it. Inflating specifications, inventing GTINs or claiming ratings you do not have is a fast way to be demoted, and in some categories it is a legal problem rather than an SEO one.

Complete, accurate markup is the goal. Complete and false is worse than incomplete and true.

Primary sources

See what AI systems say about your products

Connect WooCommerce and get your AI readiness audit, buyer prompts and first recommendations on day one.

Start free AI audit