Product schema tells search engines and AI assistants what each product is, what it costs, whether it's in stock, how it ships, your return policy, and how customers have rated it. InstaIndex publishes it on every product page automatically. Use the settings under Schema markup → Product to fine-tune what's included.
If you haven't run guided setup yet, start with How to set up schema markup with InstaIndex
What InstaIndex publishes automatically
Product schema is assembled from your Shopify catalog — no per-product configuration is required for the basics. The output includes:
Product / ProductGroup — name, description, images, brand/vendor, SKU, GTIN, MPN, item condition, and variants. Products with multiple variants are published as ProductGroup with each variant as a nested Product.
Offers — currency, price, availability, item condition, price valid until, and the storefront URL.
AggregateRating — pulled from your selected review app (see below).
Shopify product category and Category metafields — the assigned Shopify product category, plus the Category metafields Shopify auto-suggests for that category: color, material, pattern, size, target audience (PeopleAudience), and suggested gender, when filled in. These give AI tools richer context for recommendations.
Additional properties — any other product metafields you have (excluding Category metafields, which are handled above) are published as additionalProperty entries so AI assistants can read your full product context.
MerchantReturnPolicy and OfferShippingDetails — attached to each offer based on the settings below.
Settings
Review app
Select the review app your store uses. InstaIndex reads its widget on your storefront and merges the aggregate rating and review count into product schema, so the ratings in schema match what shoppers see on the page.
If you select a review app here, turn off the review app's own structured-data output in its settings to avoid duplicate Product/Review schema — see How to fix duplicate schema issues.
Choose None if you don't use a review app.
Shipping details
Add one or more OfferShippingDetails entries describing how you ship. Each entry covers:
Destination countries — one or more ISO country codes (US, CA, GB, etc.) or Anywhere.
Currency — three-letter ISO currency code (USD, EUR).
Shipping rate — the flat shipping cost for orders to this destination.
Handling time — minimum and maximum business days to prepare the order before it ships.
Transit time — minimum and maximum business days in transit after shipping.
You can add multiple entries for different regions or shipping methods.
Return policy
Configure a MerchantReturnPolicy:
Applicable countries — where this policy applies.
Return policy category — Limited time returns, No returns accepted, or Unlimited returns.
Return window (for limited time) — number of days customers have to return.
Return fees — Free returns, Customer arranges own return shipping, or Customer pays fixed return shipping fees.
Return shipping cost (when customer pays fees) — amount and currency.
Refund type — Full refund, Store credit refund, or Exchange only.
Return methods — Mail/shipping returns, In-store returns, Kiosk/drop-off returns (any combination).
Match these values to your actual return policy page so search engines see consistent information.
Item condition
Default condition for products in your catalog: New, Refurbished, Damaged, or Used.
Price modifier
Optionally apply a price modifier to the prices published in schema (for example, to reflect tax-inclusive vs tax-exclusive pricing). Leave empty to publish prices exactly as they are in Shopify.
Book schema
Book schema is available on the Premium and Business plans (and legacy equivalents). When enabled, InstaIndex merges Book (or Audiobook) into the product's schema as a multi-type entry ("@type": ["Product", "Book"] or ["ProductGroup", "Book"]).
Toggle Book schema on in the Book schema section of the Product settings page.
Map your metafields
Book properties are read from Shopify product metafields:
ISBN (required) — products without an ISBN value are skipped, so the rest of your catalog isn't affected.
Author — Shopify metafield containing the author name. Published as Person.
Publisher — Shopify metafield containing the publisher name. Published as Organization.
bookFormat — per-product format value. If unmapped or empty, InstaIndex uses the default below.
Number of pages
Language (inLanguage) — per-product language code. If unmapped or empty, InstaIndex uses the default below.
Date published — publication date.
Set defaults
If your catalog is uniform, set store-wide defaults instead of mapping per-product metafields:
Default bookFormat — Paperback, Hardcover, E-book, Audiobook, or Graphic novel.
Default language — IETF language tag (en, en-US, fr).
Per-product metafield values, when present, override these defaults.
How it appears in schema
For a product with ISBN 9781234567890, format Paperback, 320 pages, in English, InstaIndex publishes something like:
{
"@type": ["Product", "Book"],
"name": "The Great Novel",
"isbn": "9781234567890",
"bookFormat": "https://schema.org/Paperback",
"numberOfPages": 320,
"inLanguage": "en",
"author": { "@type": "Person", "name": "Jane Smith" },
"publisher": { "@type": "Organization", "name": "Acme Books" },
"datePublished": "2024-05-10",
"offers": { … }
}
If you only sell some books, leave the ISBN metafield empty on non-book products. They'll continue to publish standard Product schema.
sc
Validate your changes
After saving, paste a product URL into Google's Rich Results Test or the Schema Markup Validator to confirm Product, Offer, MerchantReturnPolicy, OfferShippingDetails, AggregateRating, and (if enabled) Book appear correctly.
If you see duplicate Product or Review entries from another app or your theme, see How to fix duplicate schema issues.
