はじめに
「メタフィールドの上限が変わるって聞いたけど、自分のアプリに影響はあるの?」
「16KBって噂を聞いて焦ったけど、結局どうなったの?」
2026年4月1日リリースのAPI version 2026-04で、ShopifyのJSONメタフィールドに大きな変更が入ります。
結論から言うと、4月1日より前からJSONメタフィールドを使っているアプリは影響なしです。
ただし、今後の開発方針に関わる重要な変更なので、一通り把握しておく価値はあります。
本記事では、この変更の背景から具体的な影響範囲まで解説していきます。
そもそも何が変わるのか
API version 2026-04以降で、メタフィールドの書き込み(write)上限が変わります。
メタフィールドのtype | 従来の上限 | 2026-04以降の上限 |
|---|---|---|
json | 2MB(2,000,000文字) | 128KB |
その他(single_line_text_field、multi_line_text_field 等) | 65,536文字 | 変更なし |
ポイントは以下の3つです。
- 書き込みのみが制限される。 既存の大きなデータの読み取りは全APIバージョンで引き続き可能。
- typeがjsonのメタフィールドすべてが対象。 商品メタフィールド、注文メタフィールド、顧客メタフィールド、アプリが作ったもの...「誰が作ったか」「どのリソースに紐づくか」は関係ない。
- json以外のtypeは上限据え置き。 今回の変更は「JSONだけ」の話。
「16KB」と「128KB」、2つの数字が出回っている理由
SNSやコミュニティで情報が錯綜していた理由は、Shopifyが途中で方針を変更したからです。
時系列を整理すると以下のようになります。
2月19日:Shopifyが「16KB」制限を発表
当初の発表では、メタフィールドの書き込み上限を16KBに引き下げるという内容でした。
2MBからの99.2%削減です。
開発者コミュニティの反応は即座で、かなり厳しいもので、Shopify Developer Community Forumでも活発な議論が巻き起こりました。
その後数週間:Shopifyが方針を修正
コミュニティとの対話を経て、Shopifyは最終的な仕様を以下のように修正しました。
- JSONメタフィールド → 128KB(16KBから大幅緩和)
- その他のメタフィールド → 従来通り(変更なし)
- 既存アプリにはgrandfathering(救済措置)を適用
開発者の声を受けてShopifyが方針転換したのは、プラットフォームとコミュニティの健全な関係を示す事例かと思います。
既存アプリへのGrandfathering(救済措置)
ここが最も重要なポイントです。
2026年4月1日より前にJSONメタフィールドを使っている全アプリは、従来の2MB上限が維持されます。
Shopifyのスタッフ(Darius-Shopify)がDeveloper Community Forumで明確に回答しています(2026年2月26日、Page 3 #41)。
2026-04やそれ以降のAPIバージョンを使っていても、grandfatherは適用される。つまり、既存アプリは将来のバージョンでも2MB上限が維持される。
(出典:Shopify Developer Community Forums — Metafield values limited to 16KB, Page 3)

Grandfatheringの条件
- 判定単位はアプリ単位
- APIバージョンをアップグレードしても引き続き有効
128KB制限が適用されるケース
- 4月1日以降に新しく作られるアプリ
- ただし、128KBを超えるユースケースがある場合はShopifyに申請可能。審査の上、最大2MBまでの上限が許可される(同フォーラム #44、Darius-Shopifyの投稿)
ストア構築者への影響は?
ここまで「アプリ開発者」の視点で書いてきましたが、テーマカスタマイズやストア構築を行っている方も気になるところだと思います。
結論:ストア構築者が実務で影響を受けることは、ほぼありません。
その理由は以下の通りです。
- そもそもサイズが小さい。 構築者がJSONメタフィールドを使う典型的なケースは、商品の追加情報(サイズチャート、カスタム仕様データなど)や、テーマ設定用の構造化データです。これらは数百バイト〜数KBが普通で、128KBに達することはまずありません。
- 管理画面からの操作が中心。 Shopify管理画面のメタフィールドエディタから手入力するデータ量で128KBを超えるのは、現実的に考えにくいです。
- Grandfatheringの判定は「アプリ単位」。 管理画面から直接作成したメタフィールド(アプリを経由しないもの)がどう扱われるかは、Shopifyから明確な説明がまだありません。ただし前述の通り、構築レベルのデータ量であれば128KB制限の中で十分収まるため、実質的に問題になりません。
注意が必要なのは、以下のような特殊なケースくらいです。
- ページビルダー系アプリのデータをJSONメタフィールド経由でテーマに渡している場合(この場合はアプリ側のgrandfatheringが適用される)
- Shopify Flowなどで大量のJSONデータを自動書き込みしている場合
普通にストアを構築・運営している分には、今回の変更を意識する必要はないと思って大丈夫です。
なぜShopifyはこの変更をしたのか
Shopifyが公式に挙げている理由はストアフロントのパフォーマンスです。
コミュニティでは、以下のようなパターンが影響を受けやすいケースとして議論されていました。
- 商品コンフィギュレーター — 部品構成・価格ルール・ビジュアルプレビューを1つのJSONに全部格納
- ページビルダーアプリ — セクションの構造データを丸ごと1フィールドに保存
- B2Bストア — 顧客別の価格ティアをJSONで管理
128KBを超えるデータを扱う場合の代替手段
今後新しくアプリを開発する場合や、既存のデータ設計を見直したい場合は、Shopifyが推奨する以下の代替手段を検討してください。
1. Metaobject references
構造化データをMetaobjectに分割して、メタフィールドからはリファレンスで参照する方法です。
たとえば、商品コンフィギュレーターのデータを「ステップ」「オプション」「価格ルール」のMetaobjectに分割し、商品メタフィールドからはそれぞれへの参照を持つ形にします。
2. Listタイプのメタフィールド
list.single_line_text_fieldやlist.metaobject_referenceなど、Listタイプを活用して複数の値を分散させる方法です。
3. 複数メタフィールドへの論理的な分割
1つの大きなJSONを、意味のある単位で複数のメタフィールドに分割します。たとえば「設定」「コンテンツ」「レイアウト」のように分けるイメージです。
4. Files API
画像やPDFなどのバイナリデータだけでなく、大きなJSONファイルの保存にもFiles APIが使えます。
Shopify側の環境整備
Shopifyはこの制限変更と合わせて、以下の改善を行っています。
- Metaobjectのエントリ上限の引き上げ — より多くのデータをMetaobjectに移行できるように
- メタフィールド定義数の増加 — リソースあたりのメタフィールド定義数が増え、分割しやすくなった
- アプリ単位の上限管理 — メタフィールドの上限がショップ全体ではなくアプリごとに管理されるようになった
つまり「JSONを小さく保つ代わりに、データの整理手段は充実させた」という方向性です。
まとめ
今回の変更のポイントを整理します。
- API 2026-04から、JSONメタフィールドの書き込み上限が2MB → 128KBに縮小
- 既存アプリはgrandfathered(2MB上限が維持される)
- 当初の16KB制限は開発者コミュニティの声を受けて128KBに修正された
- 読み取りには制限なし。既存データが壊れることはない
- 新規アプリで128KB超が必要な場合はShopifyに申請可能(最大2MB)
- ストア構築者は実務上ほぼ影響なし
- 代替手段としてMetaobject、Listタイプ、Files APIなどが推奨されている
既存アプリの開発者は「すぐに何かしないと壊れる」という状況ではありません。
ただし、Shopifyのデータアーキテクチャの方向性として「メタフィールドは小さく、構造化データはMetaobjectに」というメッセージは明確です。
今後のアプリ設計では、この方向性を意識しておくといいかと思います。
