# Product variants

Sell one product in several sizes, colors, or materials by defining attributes and generating a variant for each combination

Source: https://getolet.com/resources/help/catalog/product-variants/
Updated: 2026-10-15

A variant is one version of a product that comes in more than one form. A t-shirt is one product; small blue, medium blue, and medium red are three of its variants. Each variant carries its own SKU, its own price, and its own stock, so the register knows exactly which one was sold.

OLET calls the t-shirt the variant parent and each version a variant. The parent is never sold directly. When a cashier picks it on the register, the app asks which variant before it adds the line.

## Create the family

Variants start at creation, not afterwards. On [**Catalog > Products**](/resources/help/catalog/products-overview/), select **Create product**, choose **Variants** as the product type, then name and price it as usual. **A product's type cannot be changed once it is saved**, so a standard product can never become a variant parent later.

Open the saved product and go to the **Variants** tab.

## Step 1, define the attributes

An attribute is the thing that differs between versions: Color, Size, Material. Type it into **New attribute** and select **Add attribute**. You can define up to three.

Attributes are locked as soon as the first variant exists. Get them right before you move on, because the only way to change them afterwards is to delete every variant under the parent.

## Step 2, add the values

Under **Variant values**, each attribute gets its own field. Type a value and press Enter, or select **Add**, once for every version you sell. Small, Medium, Large under Size. Blue, Red under Color.

OLET counts the combinations as you go, for example "6 combinations will be generated". Every attribute needs at least one value before you can continue. Select **Preview combinations**.

## Step 3, review and save

The review table has one row per combination, already filled in with the attribute values. Set what differs per row:

- **SKU**, unique for every variant. Two rows with the same SKU cannot be saved.
- **Retail price**, required on every row.
- **Supply price**, optional.
- **Active**, on by default.

Remove any combination you do not actually sell with the trash icon on its row.

Select **Save variants**. OLET creates one product per row and links them to the parent.

## Work with the variants you have

Once variants exist, the tab shows **Variants (n)** with every one of them in a table. Prices and the active switch are editable in place: change a value and it saves when you leave the field.

- **Add more** reopens the value step so you can add a color or a size. Growth is additive, so existing variants are untouched and combinations you already have are not duplicated.
- **Export** starts a CSV export of this product's variants alone. It runs in the background like any other export, and the file is waiting under [**Settings > Activity**](/resources/help/setup/olet-activity-log/). See [Export your products](/resources/help/catalog/export-your-products/).
- The edit icon on a row opens that variant as a product of its own, where it gets its own image, codes, suppliers, and stock. Its name belongs to the parent and cannot be edited from the child.
- The trash icon deletes a single variant.

Tick several rows to enable, disable, or delete them together, then select **Apply**.

There is a ceiling of 200 variants under one parent. If you need more than that, it is usually two products rather than one.

## If it goes wrong

- **Each variant needs a unique SKU.** Two rows in the review table carry the same SKU. Change one of them.
- **Retail price is required for every variant.** A row is missing its price. Zero is a valid price.
- **Attributes are locked.** Variants already exist under this parent. Delete them all if you truly need a different set of attributes.
- **The combination already exists.** You are adding a size and color pair that this parent already has. Remove that row before saving.

## What next

- The rest of the product record: [Create a product](/resources/help/catalog/create-a-product/)
- Editing many products in a spreadsheet: [Import products from a CSV](/resources/help/catalog/import-products-from-a-csv/), and read [Export your products](/resources/help/catalog/export-your-products/) first. A variant family imports with a `variant parent` row and one `variant` row for each variant
