Skip to main content
AI and automation

Shopify Documents the Metafield Definition Cap Three Times, With Three Different Numbers — 256, 128, and 250

Three Shopify-owned pages give three different metafield definition limits. The only plan-tiered cap is on metaobject definitions: 128 on Basic through Advanced, 256 on Plus. Product CSV supports exactly 26 metafield types, and variant metafields are not supported at all. JSON fields dropped from 2MB to 128KB with April 1, 2026 as the cutoff, and Shopify Functions silently return null for anything over 10,000 bytes. A tour of the limits that let you save data you can't read back. Researched September 1, 2026.

AIEC App Lab AI Editorial TeamPublished Updated Read 14 min#AI and writing#App comparisons#Shopify blog operations

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

WhatLimitSource
Metafield definitions (app)256 per resource typeshopify.dev, Metafield limits
Metafield definitions (merchant)256 per resource typeSame
Metafield definitions (TOML-declared)128 per owner typeshopify.dev, Manage metafield definitions
Metafield definitions (admin)250help.shopify.com
Pinned definitions50 per resource typeshopify.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:

TypeLimit
id2KB
json128KB
url2KB

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 null for 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.

PlanMetaobject definitions
Basic128
Shopify128
Advanced128
Plus256
Enterprise256

(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

OptionLimit
Filter in product index50 definitions
Filter in orders index5 definitions
Filter in company / company location index50 definitions
Use in smart collections128 definitions
Filter in metaobject index50 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:

CapabilitySettable via TOML
Smart collectionsNo
Admin filterableYes
Unique valuesYes
Cart to order copyableYes
Analytics queryableNo — fails silently
PinningNo

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:

storefront controls 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 GuruAccentuate Custom Fields (ACF)Matrixify
App Store URL/metafields-editor-2/accentuate/excel-export-import
Rating / reviews5.0 / 2194.8 / 1564.9 / 1,444
Built for ShopifyYesYesYes
Billing unitFlat + resource cap + usage creditsPure flat rateFlat + records per file
Free planFree to install + usageYes (theme blocks only)Yes (10 of each)
Paid entry$9/mo$25/mo$20/mo
Top tier$59/mo$50/mo$200/mo
MetaobjectsYesYesYes (10 / 50 / 500 / ∞ by plan)
Non-English UI listedNoYes (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

  1. Will your definition count stay under 250? (Design to the strictest published value)
  2. Will metaobject definitions exceed 128? (If so, that's a Plus requirement)
  3. Are order-index filter definitions within the cap of 5?
  4. Is your namespace/key convention final? (It can't be changed later)
  5. Are you using variant metafields? (Then CSV is out)
  6. Do json values fit in 128KB? (New builds after April 1, 2026 get 128KB)
  7. Are values read by Shopify Functions under 10,000 bytes?
  8. Have you tested Liquid access against storefront permissions on your own store?
  9. Is the app metered flat, by resource count, or by records per file?
  10. 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

RelatedShopify Stores Barcodes but Never Checks Them — Pick-and-Pack Scanning Costs $9.99 to $938 a Month Depending on What Gets Metered

Every Shopify variant has a barcode field, and Shopify now has native bin locations and a native pick list. What it still has no screen for is the one moment that actually prevents a mispick: scanning an item at the packing bench and having Shopify say yes or no. Shopify POS barcode scanning is documented for adding products to a cart, searching, and receiving transfers — not for verifying the line items of an online order. We priced seven real US App Store apps on September 2, 2026 and found they meter five different things: orders, scanning stations, users, fulfillments, and flat rate. At 5,000 orders a month the same job costs $14.99 with Fulfil-IT ‑ Scan & Pack and $938 with Pickware ERP & WMS.