A variant is not a separate product. It is one row in a product family, distinguished by option values, with its own SKU, price, and inventory.

The rules

  • One Handle for every row in a product family.
  • Option names must be consistent across rows: pick "Color" and keep it, do not alternate with "Colour" or "color".
  • SKU, price, inventory, and variant image belong on the row they describe.
  • The first row of a family carries the product-level fields: title, body, tags, product images.

Why duplicates appear

Two rows with different Handles that were meant to be the same product; or the same Handle reused for two unrelated products. Both produce a store that cannot be updated cleanly later.

Test before scaling

Import three cases: a simple product with no options, a two-option product, and a product with an incomplete combination (for example a size that only exists in one color). The third case is where option menus usually break.

Generate the matrix

Writing 3 colors × 4 sizes by hand is where mistakes enter. Variant Builder expands the combinations, and SKU & Handle Generator keeps the handle stable while the SKU pattern stays readable.