// Ecommerce // Structured Data

    Product schema in 2026: category, variants, and penalties.

    Google added an explicit category property, expanded ProductGroup for multi-variant catalogs, and started penalizing markup that does not match the page. Most Shopify and headless stores are currently non-compliant on all three. Here's the migration.

    Product markup stopped being a rich-snippet nicety the moment shopping answers became generative. Price, availability, variant, and category data are now the raw inputs an AI surface uses to decide whether your product can be recommended at all.

    Three 2026 changes matter: the explicit category property mapping to Google's merchant taxonomy, expanded ProductGroup support for multi-variant items, and formal penalties for content-schema mismatches. The first two are opportunities. The third is a liability sitting in most theme templates right now.

    // Taxonomy

    Declare category explicitly

    Set the new category property on every Product and ProductGroup, aligned with the google_product_category in your merchant feed. Feed and page must agree — conflicting signals get both discounted.

    // Variants

    One entity, many variants

    Collapse variant URLs into a ProductGroup with variesBy and hasVariant. Each variant keeps its own sku, gtin, price, and availability; the group keeps the name, brand, description, and reviews.

    // Offers

    Offers that match the page

    Price, currency, availability, and shipping details in markup must match what a user sees. Stale offer data is the most common trigger for a misleading-markup flag on ecommerce templates.

    // Reviews

    Only mark up visible reviews

    AggregateRating must reflect reviews rendered on the page. Feed-only, off-page, or aggregated third-party ratings shipped as your own are a manual-action risk.

    // Identity

    Anchor products to the brand graph

    Reference your Organization entity by @id from every product rather than repeating a brand string. That is how product-level trust rolls up into brand-level authority.

    // Validation

    Fail the build, not the SERP

    Run schema validation in CI so malformed or misleading markup never ships. Rich Results Test after deploy is a lagging indicator.

    // ProductGroup_Example

    A compliant multi-variant product.

    {
      "@context": "https://schema.org",
      "@type": "ProductGroup",
      "@id": "https://example.com/products/trail-jacket#group",
      "name": "Trail Jacket",
      "category": "Apparel & Accessories > Clothing > Outerwear",
      "brand": { "@id": "https://example.com/#organization" },
      "productGroupID": "TRAIL-JKT",
      "variesBy": ["https://schema.org/color", "https://schema.org/size"],
      "hasVariant": [
        {
          "@type": "Product",
          "@id": "https://example.com/products/trail-jacket?v=blk-m#product",
          "sku": "TRAIL-JKT-BLK-M",
          "color": "Black",
          "size": "M",
          "offers": {
            "@type": "Offer",
            "price": "189.00",
            "priceCurrency": "USD",
            "availability": "https://schema.org/InStock"
          }
        }
      ]
    }

    The full entity model behind this — @id, sameAs, knowsAbout, about — is covered in schema and entity optimization. For store-wide fixes, see the Shopify SEO audit.

    // The_Contract

    The 180-day money-back guarantee.

    We can promise this because our methodology already works. Hundreds of pages now sit in position #1 across our clients' catalogs. The risk shouldn't be on you — it's on us.

    • 01We run the full 10-stage audit and deliver a sequenced 90-day plan.
    • 02You implement our recommendations (or hire us to implement them).
    • 03If you don't see measurable ranking and revenue improvement in 3–6 months — we refund you. In full.
    Lock in your audit slot →
    // Frequently_Asked

    Product schema questions.

    What is the new Product category property?+

    Google added an explicit category field to Product structured data. It maps each listing to Google's internal merchant product taxonomy instead of leaving Google to infer a category from your breadcrumbs, collection names, or title text. Declaring it correctly places your product in the right comparison set across Shopping surfaces, AI Overviews, and agentic shopping flows.

    When should I use ProductGroup instead of Product?+

    Use ProductGroup whenever a single item ships in multiple purchasable variations — size, colour, material, capacity. The group carries the shared attributes and lists variesBy plus hasVariant; each variant carries its own sku, gtin, price, and availability. Shipping a flat Product per variant splits your review, price, and availability signals across URLs that should be one entity.

    What counts as misleading markup?+

    Product markup on a page with nothing purchasable, prices or availability that do not match the visible page, Review or AggregateRating markup for reviews users cannot see, FAQPage markup where the Q&As are not on the page, and shipping or returns data that contradicts your policy pages. Google now treats these as misleading rather than ignoring them, which risks a structured data manual action.

    How do I map my catalog to Google's product taxonomy?+

    Start from your existing merchant feed's google_product_category values where they exist, reconcile them against your on-site collection structure, then declare the resulting value in the Product category property so feed and page agree. Where they disagree, the page markup and the feed compete — and Google trusts neither.

    Does product schema affect AI shopping answers?+

    Heavily. Agentic and generative shopping surfaces need structured availability, price, variant, and review data to assemble an answer at all. A product with clean ProductGroup markup, correct category, and verifiable offers is eligible for those answers. A product whose facts are only in rendered HTML frequently is not.

    Audit your catalog markup before Google does.

    We'll flag every misleading tag, map your catalog to the merchant taxonomy, and hand you the ProductGroup templates.