Shopify store improvements

Shopify product variant setup

Variants are the versions of a product a shopper can choose: sizes, colours, materials, pack sizes. Each variant can have its own price, SKU, stock level and image. Getting the structure right makes products easy to buy, keeps stock accurate and lets filters and search work properly.

This page explains how Shopify variants work, their limits and the decisions that matter when setting them up.

Service overview · Web & E-commerce · Custom quotations only

Illustrative diagram

Product

  • Option: Size
    • S
    • M
    • L
  • Option: Colour
    • Navy
    • Sand
  • Each variant has
    • Price
    • SKU
    • Stock
  • And can have
    • Image
    • Barcode
How a Shopify product's variants are structured. Up to three options; each combination is a variant with its own details.

How variants work

A product has up to three options, such as Size, Colour and Material, and each combination of option values is a variant. Shopify's documentation states that each product can have up to three options and up to 2,048 variants. Each variant can carry its own price, SKU, barcode, weight, stock level and image.

Because options multiply, three options with several values each create many variants quickly, so it is worth planning which combinations you actually sell.

Variant or separate product

When to use variants and when to use separate products
SituationUsually best asWhy
Same item in several sizesVariantsShoppers choose a size on one page
Same item in several coloursVariants, or separate products if each colour needs its own pageSeparate pages can help colour-specific search and collections
Different designs in a rangeSeparate productsEach has its own images, description and reviews
Pack sizes of the same itemVariantsClear price comparison on one page
Personalised details such as engravingNot variants; custom fieldsFree-text input is not an option value

Consistency across the range

Option names

  • The same name everywhere, such as 'Size' not 'Sizes'
  • The same option order on every product
  • Names shoppers understand

Option values

  • One spelling per value
  • Sizes in a consistent format and order
  • Colour names that match your filters

Variant images

Assigning an image to each colour variant lets the product page switch photos when a shopper picks a colour, which reduces mistakes and returns. Themes handle this differently; many show the assigned image when the variant is selected, and some can show only the selected colour's images. Checking how your theme behaves before photographing or uploading saves rework.

Stock and SKUs

  • One SKU per variant

    Unique SKUs make fulfilment, stock counts and integrations reliable.

  • Stock tracked per variant

    Each size or colour has its own inventory, so sold-out variants show correctly.

  • Unavailable combinations

    Remove combinations you never sell rather than leaving them permanently sold out.

  • Barcodes

    Add them where marketplaces or warehouses need them.

How variants appear to shoppers

The theme decides whether options appear as buttons, swatches or dropdowns. Buttons and swatches show availability at a glance and are easier to tap on phones; dropdowns hide choices. Sold-out values should be visibly unavailable but still shown, so shoppers know the option exists. If variants differ in price, the displayed price should update as options change.

Setting up variants in bulk

For large ranges, variants are best created or corrected by CSV import, where each row is a variant with its option values, price, SKU and stock. Shopify's import rules require care: the handle groups rows into one product, and option names must match exactly. Testing an import on a few products before the full range avoids widespread errors.

Pricing variants clearly

When variants have different prices, such as larger sizes costing more, the price shown should change as the shopper selects options, and collection cards should make it clear when a price is a starting price. Sale prices set per variant need care so that the compare-at price is genuine for each variant. Clear pricing avoids surprises at the cart and keeps sale claims accurate.

Variants, filters and search

Size and colour filters usually read variant option values, so consistent options are what make those filters work. Search can also match option values where the theme and search settings allow. A shopper filtering for 'Navy' in size 'M' should see exactly the products available in that combination, which only happens when every product uses the same option names and values.

Questions about Shopify product variant setup

How many options can a product have?

Shopify's documentation states up to three options per product.

How many variants can a product have?

Up to 2,048, according to Shopify's documentation.

Should colours be variants or separate products?

Variants for simple ranges; separate products if each colour needs its own page and collections.

Can each variant have its own image?

Yes. Assigned images can switch when the variant is selected, depending on the theme.

Can variants have different prices?

Yes. Each variant has its own price.

How do we handle engraving or custom text?

With custom fields on the product page, not variants.

Can variants be imported by CSV?

Yes. Each row represents a variant, grouped into products by handle.

Can sale prices differ by variant?

Yes. Each variant has its own price and compare-at price; make sure each sale price is genuine.

Sources referenced

Platform features, guidance and rules change. We check the current versions before committing to an approach. This page is general information, not legal advice.

Request a Custom Quote

Ask about Shopify product variant setup

Project details

Enquiry about: Shopify product variant setup

Fields marked with an asterisk are required.

What do you want to achieve, what exists today, and any deadlines or constraints.

Include your country code.

Request a quote