Add custom fields to products and variants

Record details like material, care instructions, or weight in your own terms, choose which ones shoppers see, and use them to filter products and build collections.

Custom fields let you store extra details about a product or a variant that don't have a place in the standard form – a material, a care guide, a weight, a list of scent notes. You decide what each field is called, what kind of value it holds, and whether shoppers can see it.

They replace the old free-text variant attributes. Existing attributes keep showing on your storefront, and are converted to custom fields the first time you open the product in the editor.

Where to find them

Open Catalog → Custom fields to create and manage your fields. (They used to live under Settings; they moved to Catalog next to your products.) You fill in the values on each product's edit page, in the Custom fields section.

Create a field

  1. Go to Catalog → Custom fields and add a new field, or choose Create new field from a product's Custom fields section.
  2. Pick whether it is for products (each product holds one value) or variants (each variant holds its own value).
  3. Give it a name, and pick a type.
  4. Save.

Note: The type and the key (the short identifier made from the name) can't be changed once the field exists. Everything else – the name, description, options, and the settings below – can be edited later. A key uses lowercase letters, digits, - and _.

You can create up to 128 fields for products and 128 for variants.

Field types

TypeUse it for
Single-line textA short value such as a brand line or a model name
Multi-line text / Rich textLonger text such as care instructions
List of single-line textsSeveral short values, such as scent notes
Integer / DecimalNumbers such as a pack size or a rating
MeasurementA number with a unit, such as 1.5 kg
Yes / NoA true-or-false detail such as "Organic"
Date / Date and timeDates such as a harvest date
URLA link, such as a manual
ColorA color picked from a color picker
Choice / List of choicesA value picked from options you define, such as Wool, Cotton, Silk

Choices store the option itself, so renaming an option later doesn't break the products that use it. Removing an option archives it – products that already hold it keep the value.

Choose what shoppers see

Each field has three settings:

SettingWhat it does
Shown on storefrontShoppers (and your storefront's public API) can see the field. Off by default, so internal notes such as supplier costs never appear by accident.
Usable as filterShoppers can filter product lists by this field. Available for choices, numbers, measurements, and yes/no fields, and only while the field is shown on the storefront.
TranslatableText values can be translated into your store's other languages. Available for text fields.

You can also hide a single value without hiding the whole field: the field stays visible for other products, but not for this one.

Fill in values on a product

  1. Open the product.
  2. In Custom fields, choose Add field and pick a field, then enter its value. Drag to reorder fields.
  3. For variant fields, fill in each variant. Copy custom fields to all variants applies the same values to every variant at once.
  4. Save the product.

Use Clear to remove a value you no longer want.

When variants get recreated

Adding or removing an option (like a new size) makes the product's variants be recreated. Your variant custom field values are carried over automatically: when you add an option, each old variant's values are copied to the new variants it became. If you remove an option and the merged variants disagree, the oldest variant's value is kept – and if any values would be lost, you're asked to confirm before saving.

Translate custom fields

If the Translations module is on, you can translate field names, descriptions and option labels on the field itself, and translate text values on each product's Translations tab. An empty translation means "use the original value". You can also translate missing values with AI, which runs only when you ask for it or when you switch on a new language.

Filter products and build collections

Fields marked Usable as filter (and shown on the storefront) become filters on your storefront's product lists.

You can also build a collection from them: in a collection, choose By custom field values and add rules – any of these values, a number range, or yes/no. A product is included automatically when it matches every rule. If a rule's field is later archived or stops being a filter, the collection shows no products until you fix or remove that rule, so a broken rule never shows the wrong products.

Text fields can't be filtered directly. To make a text field filterable, open it and use Convert, which turns the distinct texts into choices and rewrites the values for you. Near-duplicates such as "Wool" and "wool " are suggested as one option.

Import and export with CSV

Product CSV files have one column per custom field. When you import a file with columns that match no existing field, you're asked to pick a type to create each new field or skip the column before the import starts. New fields from an import are not shown on the storefront until you turn that on. See Import products in bulk.

Archive or delete a field

Deleting a field archives it: it disappears everywhere but keeps its values, and you can restore it as it was. To remove it for good, purge an archived field and confirm the number of values that will be deleted.

What's next