Skip to content
Log in

Product rich data snippet

On this page

StoreConnect generates product JSON-LD structured data using a built-in snippet. In v21, this snippet was renamed and extended with new fields for richer Google search results.

Template rename

The product JSON-LD snippet was renamed from:

snippets/products/product/json-ld.liquid

to:

snippets/products/product/rich_data_json.liquid

A backward-compatible shim means the old path (snippets/products/product/json-ld.liquid) continues to work without changes. You do not need to update any existing theme templates that reference the old snippet name.

:::note The shim provides backward compatibility for the old snippet name. Check with StoreConnect support for the timeline if you want to migrate to the new name. :::

What’s new in the rich data snippet

Multiple product images

Multiple product images are now included in the JSON-LD output, in line with Google’s recommendations. Previously, only the primary image was included.

```json

“image”: [ “https://example.com/image1.jpg”, “https://example.com/image2.jpg” ] ```

Price range for variant products

Variant products now output a price range using lowPrice and highPrice (schema.org Offer fields) when variants have different prices. When all variants share the same price, a single price field is used instead.

```json

{ “@type”: “Offer”, “lowPrice”: “29.99”, “highPrice”: “59.99”, “priceCurrency”: “USD” } ```

Variant relationship fields

The following fields are now included for variant products to help Google correctly understand product relationships:

Field Description
isVariantOf References the parent ProductGroup object
variesBy Array of DefinedTerm objects representing the attributes variants differ by (for example, [{"@type": "DefinedTerm", "name": "https://schema.org/color"}]) — note the lowercase schema.org URL format
productGroupID The Salesforce SFID of the parent product group. This is a stable internal identifier, not the product code

Availability and price

The snippet always outputs a price value (the sale price if set, otherwise the list price). Availability is always InStock unless Track Inventory is enabled on the product and the item is out of stock.

Additional fields

The following fields are included in the JSON-LD output when the relevant data is present on the product:

Field Condition Notes
brand Set on the product Output as a Brand object with name
gtin UPC is present Prefixed with "0" to produce a 13-digit GTIN-13 (for example, "0123456789012")
itemCondition Always https://schema.org/NewCondition or https://schema.org/UsedCondition

Schema types used

The snippet uses the following schema.org types:

Type Used for
ProductGroup The parent product (with variants)
Product An individual product or variant
Offer Price for a single product, variant, or price range across a product group
Brand Brand associated with the product
DefinedTerm Individual variant attributes within variesBy

Open Graph price meta tags

In addition to the JSON-LD block, StoreConnect adds Open Graph price meta tags to the <head> of each product page via snippets/meta_data.liquid:

```html

```

These tags are used by social platforms and some shopping integrations to read the product price directly from the page head, independently of the JSON-LD block. They reflect the same price used in the JSON-LD output (sale price if set, otherwise list price).

Customizing the snippet

If you want to override the built-in JSON-LD output, create a snippet template in your theme with the key:

snippets/products/product/rich_data_json

Your custom snippet replaces the built-in output entirely. See Theme templates for how to create snippet templates.

Was this article helpful?

Was this article helpful?