A in Shopify is a single item you sell (e.g. "Merino Wool Sweater"). A product holds shared information — title, description, images, product type/category, and metafields — plus one or more .
A is a specific, buyable version of a product. Each variant is what actually carries a price, SKU, barcode, and inventory quantity.
- If a product has no meaningful choices (e.g. a single book), it has exactly .
- If a product comes in different colours and/or sizes, each concrete combination is its own variant.
Example — a sweater in {Black, Blue} × {S, M, L} produces :
Historically Shopify allowed up to 100 variants and 3 options per product; newer stores support up to ~2,000 variants. Every variant is a full combination of the options below.
are the dimensions of choice that generate variants. Each option has:
- a (e.g.
Color, Size), and - a set of (e.g.
Black, Blue / S, M, L).
The variants are the of all option values. In the example above there are two options (Color, Size) whose values multiply out to the 6 variants.
Options are how a storefront renders the swatches/dropdowns a shopper clicks; picking one value per option selects exactly one variant.
In the Shopify integration settings, the section controls how our data lines up with your store's options:
- / — the exact option names used on your Shopify products. We map our colour and size data onto options with these labels, so they must match what your store uses (defaults:
Color and Size).
Each label can be provided in
— a plain option name (e.g. literally "Size"). The option's values are written as free text.
— instead of plain text, the option is linked to a Shopify definition (e.g. ). This uses Shopify's structured, standardized values rather than loose text.
A is structured extra data attached to a product. Shopify ships some — including a built-in — that provide validated, category-aware values.
When the Size option is connected to Shopify's own Size metafield, there's an important nuance surfaced:
- For those, we fall back to the size field that fits the category — e.g. for bras, for belts.
- (e.g. bracelets, beach bags). For those we add the size as a plain instead.
When enabled, each product carries only a single colour, and separate colours are modelled as linked together via a . This is an alternative to putting every colour as a value under one product's Colour option.
The overall item; holds shared info + variants
A dimension of choice (name + values), e.g. Color/Size
One concrete combination of option values; carries price/SKU/stock
Structured extra data on a product.
A separate single-colour product linked to its colour counterparts