Skip to main content

Pick the right type first

It’s the field that decides what else you’ll be asked for. Physical and digital sit separately in your catalogue, so a shop selling both doesn’t have to keep filtering one out.

The fields

The URL comes from the name, and you can edit it. Change it later and old links break — add a redirect at the same time.
In your shop’s currency. Individual variants can override it.
One main image, plus up to 20 more.
Turn on stock tracking and the product can sell out. Leave it off and it never does.Warn me at is where you want to start worrying. Set it to the number where you’d reorder — not zero, because by zero it’s too late.
Draft means hidden, from the moment you save. A half-finished product won’t appear in your shop by accident, and won’t get lost either.Scheduling is separate. A publish date on a live product controls when it turns up.
Every image gets its own, additional ones included. It’s what a screen reader says out loud and what image search reads. Keep it under 125 characters — assistive tech cuts off around there.Describe what’s in the photo, not that it’s a photo. “Charcoal hoodie, front, on a hanger” — not “product image 1”.
A title and description for Google and for link previews on Facebook and X, all from one place.Leave them blank and your product name and description get used, which is fine. Fill them in for the products you actually want found.
In grams, and you need it for live carrier rates. Without it a product either quotes badly or stops the whole cart being quotable.
Only appears once you’ve got two or more locations. Anything unassigned ships from your default.

Variants

Name the options; the combinations get worked out for you. Add a group — Size, Colour, Material — then type its values. Every combination turns up as a row you can price and count stock against. Call a group Colour (or Color, Colourway, Shade, Finish) and you get colour chips instead of plain text, with common colour names filled in for you.
1

Add an option

Name it, type its values. “Small, Medium, Large”.
2

Add another if you need one

Colour, Material, Length. Each one multiplies the combinations.
3

Price the rows

Leave a price blank and that combination sells at the product’s own price, which is what you want for most of them.
Rows are matched by their options, not their position — so adding “Red” to a colour group doesn’t shift every price down a row. Each combination keeps the price and stock you typed against it. Apply to all sets a price or stock count across every row at once. There’s a ceiling of 250 combinations. Go past it and nothing changes at all — the editor stops and tells you, instead of quietly trimming the list. A trimmed list looks exactly like a shorter one, and you’d lose the prices you’d already typed without noticing.

Copying a product

Duplicate opens a fresh product form filled in from an existing one, asking first what to bring across. It asks because guessing gets it wrong half the time: someone making the same shirt in another colour wants the options and the price but not the photos, and someone making a seasonal variant wants the opposite. Nothing’s written until you save, and the copy arrives as a draft. Three things never come across:
  • Digital files. Two products sharing a file would mean deleting it from one deletes it from the other. Upload them again.
  • The catalogue number and the URL, which belong to one product for its whole life.

What catches people out

Carrier rates need it. Imported catalogues frequently arrive without weights.
Existing customers keep the file they bought — orders remember the exact file. New orders get the new one. → Digital products
Add a redirect. Google and anyone who linked to you won’t find the new URL on their own.
Files move into your shop’s storage when you save, not when you upload. An abandoned draft leaves them behind.

Import a shop

Bring a Shopify or Etsy catalogue across.

Digital products

Downloads, and bundling one with a physical product.

Collections

Grouping products for your navigation.

API

Create and update products in code.