DocsSpecification tables

Per-variant attributes

When variants of a product have different specifications, per-variant attributes keep tables accurate: values update as soon as the customer selects another variant.

When to use per-variant attributes

Use them when a value differs between variants of the same product: the capacity of each size of a backpack, the weight of each length of a bike frame, the resolution of each screen size…

If the value is the same for all variants, keep a product-level attribute: there’s less to fill in.

Create a per-variant attribute

There are three ways to get values per variant:

  1. Values managed in the app — when you create the attribute, choose Attribute value is different for each variant.
  2. Variant metafields — create a Metafield reference attribute and choose Connect a variant metafield. Learn more.
  3. Variant information — the SKU, Barcode and Weight product information types, and the Price and Product option types set to show the selected variant, update automatically.

Changing the scope later

You can change the scope of an existing attribute. For values managed in the app, product values and variant values are stored separately: after switching, the values entered with the previous scope are hidden (not deleted), and come back if you switch again.

Fill in variant values

In Products, open the product. Per-variant attributes show an Edit variant attributes button: a window opens with one field per variant. Fill in each variant, then save.

Variant values window

How variant values are displayed

WhereWhich variant is shown
Specification tableThe variant selected by the customer. The table refreshes when they pick another variant.
Comparison tableThe first available variant of each product, unless you enable the variant selector. With the selector, customers choose the variant of each column, and the main product follows the variant selected on the page.
Variant comparison table Pro planEach column is one variant. Learn more.

Works with most themes

The app detects variant changes on product pages automatically, even when the table is added as its own section or when the page has no “Add to cart” button. If a table doesn’t refresh on your theme, contact support.

Variant metafield fallback

When you connect a variant metafield, the app automatically uses the product metafield with the same namespace and key if the variant value is empty.

This saves a lot of data entry when most variants share the same value. For example, connect the variant metafield custom.battery_life, set custom.battery_life once on the product, and only fill in the variant metafield for the variants that differ.

This fallback is always on. It only works when the namespace and key are identical.

Still stuck?

Our support team answers every email, usually within one business day.

Contact support