Metafields, Explained for People Who Don't Code
- Crystal Waddell

- Jul 11
- 7 min read

"Metafield" is a terrible word for a simple thing.
Here's the whole idea: a metafield is a box for information that Shopify didn't give you a box for.
Shopify gives you boxes for title, description, price, weight.
It does not give you a box for occasion, or audience, or what room this goes in, or how to care for it.
Your business needs those.
Shopify's default product page doesn't have them.
So you add them.
The box you add is a metafield. That's it. That's the concept.
Shopify's own documentation says as much: metafields let you save specialized information that isn't usually captured in the Shopify admin.
The word sounds technical because a developer named it.
The thing itself is a box on a form.
The part that actually matters: the definition
If a metafield is a box, the definition is the rulebook for that box.
This is the part people skim past, and it's the part that determines whether your data ends up clean or ends up garbage.
Shopify's docs list what a definition contains, and every item is doing real work.
Name. What you call it.
Occasion.
Namespace and key. The unique identifier for the field, like custom.occasion. The namespace groups related fields together; the key names the field itself. This is the address every other system uses to find your data: your theme, your feed, your apps, any integration you add later.
Accept whatever Shopify auto-generates and you end up with fields nobody can read. Name them deliberately and your whole store speaks one language.
This is design work, not plumbing, and it's the part I do for clients.
Description. A note to yourself (or whoever fills this in) about what to enter.
Type. What kind of data the box holds: text, date, number, file, URL.
Validations. The rules for what's allowed in. Character limits. Minimum and maximum values.
Options. Where the field can be used, including two switches that matter enormously.
Those last two switches, in Shopify's own words, are:
use as filter in admin, which lets you filter your product list by that field, and
use in automated collections, which lets a collection be built as a rule on that field.
That second one is the whole ballgame. A collection that maintains itself is built on a metafield, and a metafield can only be used that way if someone ticked the box on its definition.
This is why people conclude "Shopify can't do this" when Shopify absolutely can. The switch just wasn't on.
Definition vs value (the distinction that unlocks everything)
Two words, and once you separate them the whole system makes sense.
The definition is the box and its rules. You create it once, in Settings.
The value is what's actually in the box on a given product.
Shopify's docs put it plainly: a definition is the storage area for values created with it, and a single product metafield definition can hold thousands of values.
So: you define Occasion once.
Then 300 products each carry their own value for it: wedding, closing, housewarming.
Here's why this matters more than it sounds.
If the definition has good rules, all 300 values are consistent, and every rule, filter, and feed downstream works.
If the definition has no rules, you'll get wedding, weddings, and Wedding, and everything downstream is quietly broken.
The definition is where you win or lose. Not the values. The values just follow orders.
The villain: unstructured metafields
Now the part almost nobody tells you, and it's straight from Shopify's documentation.
An unstructured metafield is a metafield without a definition. Shopify says these are typically made by apps, and that they don't have the validations a structured metafield would have.
Read that again, because it explains a lot of mysterious mess.
You install an app.
The app quietly writes data onto your products, in fields you never created, with no rules, no allowed values, and no validation.
It works fine inside that app.
And it is invisible and useless everywhere else, because nothing else knows the field exists or what it's supposed to contain.
Then you cancel the app, and the data stays, orphaned.
Or you try to build a collection rule on it and can't.
Or you look at your product data one day and find fields you don't recognize holding values you didn't choose.
Structured metafields, by contrast, are the ones you create in your store settings, with a definition and rules.
Shopify explicitly lets you migrate unstructured metafields to a definition, which is the fix, and it's worth doing.
The rule of thumb: if you didn't define it, you don't control it.
What Shopify hands you for free
Before you go creating fields, know that some already exist.
When you assign a product to a standard category in Shopify's taxonomy, Shopify unlocks category metafields for it:
the attributes that belong to that kind of product.
Assign Shirts and you get size, neckline, sleeve length, fabric, colour, and more.
These come with default entries you can use as-is or customize.
Shopify's example: the fabric field arrives pre-loaded with cotton, silk, denim.
There's also a quiet feature here that's very clever.
Shopify's docs describe base values: you might sell a yellow t-shirt that you call sunny in your store. You set the base colour to yellow, and your product still displays correctly in search and stays clear across selling and advertising platforms.
That's the ideal: your language on the front, standard language underneath.
You keep your brand voice.
Google still understands you.
So the order of operations is: take the category metafields Shopify gives you, then create your own definitions only for the axes Shopify can't know about, the reasons people actually buy from you.
What to actually create (and what not to)
Restraint is the skill here.
Every field you add is a field someone has to fill in, forever.
Create a metafield when the information changes what a customer sees or what a rule needs to know.
Occasion.
Audience.
Material.
Room.
Care instructions.
These earn their keep: they drive collections, filters, and your Google feed.
Don't create a metafield for something you'll never sort, filter, or display.
If you can't say the sentence "I want a collection, filter, or feed of all products where this equals X," you probably don't need the field yet.
And when you do create one, set the rules while you're there.
Give it a plain-English name: Occasion, not custom_attr_2.
Pick the right type; if it's a date, make it a date, because types enforce the format for you.
Write the description, because future-you will not remember what you meant. FACTS.
Set the validations, so the box can't accept nonsense.
And turn on use in automated collections if you'll ever build a rule on it.
You will.
That's a five-minute job that saves a two-year mess.
Do I need an app for this?
No. Metafield definitions are created in your Shopify settings. It's built in.
Apps can help you fill fields faster, and a feed app may still be worth having once your data is clean.
But no app is a prerequisite for defining your own fields, and installing one before your data has structure just means the mess travels further, faster.
Fix the fields first. Then decide what, if anything, you need to buy.
Why any of this matters
Here's the payoff, and it's bigger than tidiness.
The fields you define are the fields your collections read to build themselves.
They're the fields your storefront filters read when a shopper narrows down to "wedding gifts under $50."
And they're the fields Google reads when it decides whether your product deserves to appear at all.
One set of fields.
Three systems.
That's why the boring work of defining a field properly (name, type, rules, switches) pays off in three places at once, and why skipping it breaks all three at once, silently.
You don't need to code.
You need to decide what your products are, write it down as a rule, and let Shopify enforce it.
Frequently asked questions
What are Shopify metafields in plain English?
They're extra boxes you add to a product (or customer, or order) to hold information Shopify doesn't give you a field for, like occasion, audience, or care instructions.
Shopify describes them as a way to save specialized information that isn't usually captured in the admin.
What's the difference between a metafield and a metafield definition?
The definition is the box and its rules:
name,
type,
allowed values,
and where it can be used.
The value is what's in the box on a specific product. You create the definition once; it can hold thousands of values across your catalog.
Get the definition right and every value stays clean.
What is an unstructured metafield?
A metafield without a definition.
Shopify's docs note these are typically created by apps, and they lack the validations a structured metafield has. It's data on your products that has no rules and no owner.
You can migrate unstructured metafields to a proper definition, and you should.
Do I need an app or a developer to use metafields?
Neither. Metafield definitions are created in your Shopify settings, and category metafields appear automatically once you assign a standard product category. A developer is only needed if you want to display a field somewhere your theme doesn't already support.
Can I build collections and filters from metafields?
Yes, but only if the definition allows it.
Shopify's metafield definition has options for "use as filter in admin" and "use in automated collections."
If a field isn't showing up as a collection condition, it's almost always because that switch is off.
Can I delete a metafield I created by mistake?
Yes, and Shopify gives you two very different options, so read the buttons carefully.
Delete field only removes the definition but leaves the values sitting on your products — you can recover them later by creating a new definition with the same namespace and key.
Delete field and its saved values wipes the data off every product, permanently.
One is reversible; the other isn't.
And before you delete anything, check that the field isn't connected to a block or section in your live theme. Shopify warns that deleting a metafield your theme is using can cause display errors for customers.
Want to know which of your metafields are already a mess?
The 5 Signs Your Shopify Feed Is Leaking Money checklist walks you through it in about five minutes, no technical knowledge required.
And if you'd rather have someone map it for you, my Catalog Health Audit shows exactly which fields exist, which are half-filled, and which values are too inconsistent to build anything on.
I'm Crystal.

I run my own Shopify store, collageandwood.com, where I took the catalog from 322 feed and taxonomy errors to zero and built the audit that tells me the moment it drifts.
Now I do the same for other Shopify stores.




Comments