What you will learn
On this pageContentsCloseOpen
Material, country of origin, size chart, certification marks. Shopify metafields feel great right up until two things happen: the definitions pile up, and you need to update them in bulk.
Try to answer "how many definitions can I create?" and you hit a wall immediately. Three Shopify-owned pages give three different numbers.
- shopify.dev, "Metafield limits" → 256 per resource type
- shopify.dev, "Manage metafield definitions" → 128 per owner type
- help.shopify.com, "Adding metafield definitions" → 250, with no unit specified at all
Below: every documented limit, the boundary where native tooling stops working, and how three custom-data apps meter on incompatible units. Research date: September 1, 2026.
The short version
The definition cap cannot be confirmed from the docs. With three values in circulation, design against the strictest one — 250 — and revisit your structure when you approach it.
The only plan-tiered cap is metaobject definitions. 128 on Basic, Shopify, and Advanced; 256 on Plus and Enterprise. There is no equivalent plan table for metafields anywhere.
Product CSV supports 26 metafield types. Shopify offers roughly 46 scalar/measurement types plus 12 reference types. CSV covers 26 of them. json, rich_text_field, file_reference, and rating are not among them.
Variant metafields are entirely unsupported in CSV. "Variant metafields aren't supported for product CSV import/export." This is the cleanest technical boundary for needing an app.
Shopify explicitly points at third-party apps for one area. Bulk editing of blog posts, pages, and URL redirects was removed from the admin, and the Help Center links out to apps as the replacement.
Every documented limit, in one place
Definition counts
| What | Limit | Source |
|---|---|---|
| Metafield definitions (app) | 256 per resource type | shopify.dev, Metafield limits |
| Metafield definitions (merchant) | 256 per resource type | Same |
| Metafield definitions (TOML-declared) | 128 per owner type | shopify.dev, Manage metafield definitions |
| Metafield definitions (admin) | 250 | help.shopify.com |
| Pinned definitions | 50 per resource type | shopify.dev |
The 128 is framed as an app-scoped constraint on definitions declared in shopify.app.toml, so its scope may genuinely differ from the 256. But both pages say "per owner/resource type," and they don't reconcile.
Standard metafield definitions don't count against these: "Standard metafield definitions don't count towards limits unless specified."
Value size
Most types cap at 64KB (65,536 bytes). The exceptions:
| Type | Limit |
|---|---|
id | 2KB |
json | 128KB |
url | 2KB |
JSON carries a dated clause:
Apps using JSON fields before April 1, 2026 will be grandfathered at the current 2MB limit.
The JSON ceiling dropped from 2MB to 128KB, and only apps that were already using JSON fields before April 1, 2026 keep 2MB. Anything built now assumes 128KB.
There's also this, flagged as a Caution in the docs:
Shopify Functions input queries don't return metafield values larger than 10,000 bytes. The value is still stored, and the GraphQL Admin API still returns it, but a function receives
nullfor it.
Stored fine. Returned fine by the Admin API. null inside a Function. If you're reading metafields from a delivery customization or discount Function, this is the bug you won't find.
List item counts
All list types cap at 128 items, with one exception: list.metaobject_reference supports 1,024. Each item obeys the size limit of its underlying single-value type.
Metaobjects
This is the one place plans matter.
| Plan | Metaobject definitions |
|---|---|
| Basic | 128 |
| Shopify | 128 |
| Advanced | 128 |
| Plus | 256 |
| Enterprise | 256 |
(Quoting the table as written — it still uses the older "Shopify" plan name.)
Entries per definition: 1,000,000. Fields per definition are given as 40 on the Metaobject limits page and 64 in the TOML app-scoped table. Since app-scoped limits aren't usually looser than general ones, treat 40 as the design ceiling.
There is no plan table for metafield definitions. Meaning: no documentation supports the idea that upgrading to Plus raises your metafield definition count.
Admin options have their own caps
| Option | Limit |
|---|---|
| Filter in product index | 50 definitions |
| Filter in orders index | 5 definitions |
| Filter in company / company location index | 50 definitions |
| Use in smart collections | 128 definitions |
| Filter in metaobject index | 50 definitions |
Five for orders is tight. Check it first if order-level filtering is part of the plan.
Things you can never change afterward
Some fields on a metafield definition are permanent.
- Type — cannot be changed
- Namespace / key — immutable
- Owner type — cannot be migrated
Only Name, Description, Validations, and Access are updatable. Changing a namespace or key means creating a new definition, copying values, updating every reference, then deleting the old one. Settle your naming convention before you start.
There are also capabilities TOML can't set:
| Capability | Settable via TOML |
|---|---|
| Smart collections | No |
| Admin filterable | Yes |
| Unique values | Yes |
| Cart to order copyable | Yes |
| Analytics queryable | No — fails silently |
| Pinning | No |
On that last one, the docs are specific: "shopify.app.toml accepts capabilities.analytics_queryable, and your app deploys without an error, but the capability isn't set." No error, no capability. It only works through metafieldDefinitionCreate and metafieldDefinitionUpdate.
Liquid access: the docs contradict each other
You will hit this during theme work. Does storefront access affect Liquid?
shopify.dev:
storefrontcontrols permissions for the Storefront API (used by headless and custom storefronts). This setting doesn't affect Liquid templates - metafields are always accessible in Liquid regardless of this setting.
help.shopify.com:
Storefronts access … Allows you to use the metafield in your Online Store either through Liquid or the Storefront API.
Those read as opposites. Both agree the default is off (access.storefront = "none" / storefront: NONE), but the Liquid question can't be settled from the documentation. Test it on your own store before building on it.
One more correction: visibleToStorefrontApi, which appears in a lot of older writing, isn't present in the current GraphQL Admin API or REST Admin API reference. Current control is access.storefront on the definition. The REST Admin API itself became legacy on October 1, 2024, and from April 1, 2025 new public apps must be built exclusively on the GraphQL Admin API.
How far native bulk editing and CSV actually reach
The admin bulk editor
Covers metafields on products, variants, collections, and customers. Select items, Edit products, then add metafield columns from Columns.
No record-count limit is documented. What you get instead is "the more information you try to bulk change at one time, the longer your bulk changes will take," plus this:
If you use the Microsoft Edge web browser to edit product metafields in bulk, then it can cause errors due a limited URL length.
Which implies URL-length dependence, but no number is published.
A practical gotcha: the "Update the invalid values, then save again" error can be triggered by validation failures in columns you aren't displaying. Shopify suggests clearing metafield validation errors in the metafield bulk editor first when you have a lot of definitions.
CSV covers 26 types
The supported list is explicit:
boolean, color, date, date_time, dimension, list.color, list.date, list.date_time, list.dimension, list.metaobject_reference, list.number_decimal, list.number_integer, list.product_reference, list.url, list.volume, list.weight, money, multi_line_text_field, number_decimal, number_integer, product_reference, shopify.disclosure, single_line_text_field, url, volume, weight
Notable absences: json, rich_text_field, file_reference, rating, id, link, language, standalone metaobject_reference, page_reference, collection_reference, variant_reference, customer_reference, company_reference, order_reference, article_reference, mixed_reference, and most measurement types (area, duration, frequency, power, pressure, speed, temperature).
Rich text copy. Image and PDF references. Ratings. None of them round-trip through CSV.
And then:
Variant metafields aren't supported for product CSV import/export. To edit your variant metafields in bulk, you need to use the variant bulk editor, and then add metafield columns.
Variant metafields don't work in CSV at all. If your data model puts per-size or per-color attributes on variants, native CSV is out.
Column headers take the form <name> (product.metafields.<namespace>.<key>), or just product.metafields.<namespace>.<key>.
Also worth noting: no native CSV import/export exists for metaobject definitions or entries themselves. Product CSV can reference them via list.metaobject_reference, and that's it.
Where Shopify points you at apps
From the top of the Help Center's bulk editing page:
The bulk editing feature for blog posts, pages, and URL redirects is no longer available.
Followed by links to third-party apps. As primary sources for "when do I need an app" go, it doesn't get more direct. We covered that territory in our piece on Shopify's bulk edit and CSV limits.
Three custom-data apps, compared on the meter
All three carry a Built for Shopify badge — which means the badge decides nothing here. The billing units do.
| Metafields Guru | Accentuate Custom Fields (ACF) | Matrixify | |
|---|---|---|---|
| App Store URL | /metafields-editor-2 | /accentuate | /excel-export-import |
| Rating / reviews | 5.0 / 219 | 4.8 / 156 | 4.9 / 1,444 |
| Built for Shopify | Yes | Yes | Yes |
| Billing unit | Flat + resource cap + usage credits | Pure flat rate | Flat + records per file |
| Free plan | Free to install + usage | Yes (theme blocks only) | Yes (10 of each) |
| Paid entry | $9/mo | $25/mo | $20/mo |
| Top tier | $59/mo | $50/mo | $200/mo |
| Metaobjects | Yes | Yes | Yes (10 / 50 / 500 / ∞ by plan) |
| Non-English UI listed | No | Yes (20 languages) | No |
(Pulled from the Shopify App Store on September 1, 2026.)
Three readings.
They scale on entirely different things. Accentuate is pure flat rate — unaffected by catalog size or operation volume. Metafields Guru is flat plus a resource ceiling (2K / 20K / 100K) with overage billed as "app credits" at $1 per 1,000. Matrixify tiers on records per file.
The free tiers reflect three different philosophies. Metafields Guru's ROOKIE is free to install, supports every metafield type, includes the metaobject editor, and bundles 1,000 credits of bulk operations (overage bills at $1 per 1,000 credits). Accentuate's free tier contains only premade theme blocks — no bulk editing, no import/export, no version control. For metafield management it effectively starts at $25/mo. Matrixify's free tier caps at 10 records per resource per file, which isn't enough to test against real data.
Serious metaobject use makes Matrixify expensive fast. Demo 10, Basic ($20) 50, Big ($50) 500, Enterprise ($200) unlimited. Metafields are unlimited on every plan; metaobjects are tiered aggressively. If you're managing content as metaobjects, that single row decides the plan.
Metafields Guru
From 256 Development. 219 reviews at 5.0, and not a single review below 4 stars (216 five-star, 3 four-star).
ROOKIE, ADEPT $9, GURU $19, GURU PLUS $59. ROOKIE is "free to install" with no monthly fee, and supports all metafield types, the metaobject editor, a WYSIWYG editor for text metafields, and 1,000 free app credits for bulk actions. It isn't free without limit, though: bulk actions past those 1,000 credits bill at $1 per 1,000 app credits, and that same usage rate applies to overage on the paid tiers. Paid tiers add the Excel-like editor, theme extension blocks, the browser extension, metafield sets and definitions, Shopify Flow integration, and unlimited bulk editing and import/export.
The browser extension is the distinctive piece: "Use browser extension to manage metafields directly in the Shopify admin panel." A March 14, 2022 review (Roff Milling, South Africa) praises it and asks for blog and page support.
English only.
Accentuate Custom Fields (ACF)
From Accentuate Digital, whose site footer reads "Powered by Shop Circle" — an acquired app. 156 reviews at 4.8.
The only one of the three listing non-English UI support (20 languages).
Free, Professional $25, Professional Plus $50. Pure flat rate — no coupling to catalog size or operation count, which makes cost predictable at scale.
Professional unlocks the bulk editor, unlimited import and export, filter and group, the reference manager, and multi-store linking. Professional Plus adds webhooks plus 90-day edit history with restore, and version control for both metaobjects and metafields. Image resize/crop and store-to-store transfer via Excel are also listed.
Two cautions. First, the free tier's practical value: it contains only premade theme blocks (product promotion, SEO keywords, countdown timer, promo banner). A January 24, 2026 review (atvs-vape, Poland, 14 minutes on the app) reads: "Why is it completely unusable after selecting the free plan?"
Second, billing history. A December 12, 2023 review reports being asked to pay a second annual charge six months into an annual subscription following a price increase, with access cut off until payment. Worth weighing as a general risk with acquired apps.
Matrixify
The heavyweight for bulk import/export, with 1,444 reviews. Metafields are unlimited on all plans.
What matters in this context is the metaobject ceiling. Demo 10 records per file, Basic ($20) 50, Big ($50) 500, Enterprise ($200) unlimited. Manage FAQs, store locations, or recipes as metaobjects and you'll clear 500 quickly.
We compared it for general bulk import/export in a separate article, so we won't repeat that here. One addition: a May 7, 2026 review (Weston Nurseries, US, ~2 years on the app) reports "no notice before adding three items to the API access needed by Matrixify," which blocked usage until the store Owner updated settings. Scope changes can stop work — decide in advance who approves them.
Picking by situation
Under 50 definitions, a few hundred products
Native is fine. The admin bulk editor and CSV will cover it. Just confirm you aren't relying on variant metafields, since those don't round-trip through CSV.
You need a non-English admin UI
Accentuate Custom Fields (ACF) is the only option here — and metafield management starts at Professional ($25), not free.
100,000 products, metafield edits about monthly
Accentuate Professional ($25) comes out cheapest. Flat rate means catalog size doesn't move the bill.
2,000 products, daily imports
Metafields Guru ADEPT ($9). Within the 2K resource ceiling it stays flat; beyond that it's $1 per 1,000 credits.
500+ metaobjects to manage in bulk
Matrixify Big ($50) or higher. Basic ($20) caps at 50 records per file.
Bulk-updating json or rich_text_field
Native CSV can't. All three apps list JSON and text among supported types.
Bulk-editing variant-level metafields
Use the admin's variant bulk editor, or an app. Product CSV is not an option.
Pre-purchase checklist
- Will your definition count stay under 250? (Design to the strictest published value)
- Will metaobject definitions exceed 128? (If so, that's a Plus requirement)
- Are order-index filter definitions within the cap of 5?
- Is your namespace/key convention final? (It can't be changed later)
- Are you using variant metafields? (Then CSV is out)
- Do
jsonvalues fit in 128KB? (New builds after April 1, 2026 get 128KB) - Are values read by Shopify Functions under 10,000 bytes?
- Have you tested Liquid access against storefront permissions on your own store?
- Is the app metered flat, by resource count, or by records per file?
- Can the staff who configure it read the admin UI language?
Wrapping up
Four steps, in order.
1. Design assuming the cap is unconfirmable. 256, 128, and 250 all appear in Shopify-owned documentation. Use 250 as the working ceiling and reassess your structure as you approach it.
2. Only metaobjects are plan-gated. 128 on Basic through Advanced, 256 on Plus and Enterprise. Metafields have no plan table at all.
3. Draw the app boundary at "does it round-trip through CSV?" Variant metafields, and any type outside the 26. Bulk operations on that data can't run natively.
4. Choose the app by its meter. Accentuate is flat, Metafields Guru is resource count plus usage, Matrixify is records per file. At identical store size, the cheapest option flips depending on what data you handle.
Pricing, features, and review counts change. Re-check each app's Shopify App Store listing before you commit.
References
- Metafield limits — Shopify.dev
- Manage metafield definitions — Shopify.dev
- List of metafield data types — Shopify.dev
- Metaobject limits — Shopify.dev
- Metafield definitions — Shopify Help Center
- Metafield and metaobject options — Shopify Help Center
- Bulk edit metafields — Shopify Help Center
- Using CSV files — Shopify Help Center
Shopify syncs nothing between two stores you own. Locations live inside one store, Markets serve many countries from one store, and Shopify Collective is a dropship relationship with a 100-variant cap that zeroes your inventory when you uninstall it. So multi-store sync is an app decision — and the six real apps meter six different things. Syncio charges the destination for products and the source for orders. Tipo charges for every variant in the destination store, including the ones you never sync. Synkro's $25 plan is $25 per connected store. Trunk bills a rolling three-month order average across all your channels. Priced against one identical two-store setup, the spread runs from about $10 to about $119 a month. Verified on the Shopify App Store September 2, 2026.