価格・在庫エラーでは、Shopify管理画面の値、商品ページに表示される値、Merchant Centerに届いているフィード値を同じ商品で見比べます。price mismatch や availability mismatch は、CSVの値だけでなく、セール価格、Marketsの通貨、在庫ロケーション、テーマや構造化データの表示とも関係します。まず1商品で差分の場所を特定してから、全体の修正方針を決めます。価格変更や在庫更新が頻繁に起きる店舗では、同期のタイミング差がエラーとして出ることも多いため、「値が違う」ことと「直すべき値が違う」ことを分けて考えます。
価格・在庫エラーは3つの値を比べる
Merchant Centerで price mismatch や availability mismatch が出たとき、最初にやることは「同じ商品の値を3カ所で見比べる」ことです。
- Shopify管理画面の値(商品詳細画面の価格・在庫フィールド)
- 商品ページに実際に表示される値(ブラウザで開いて見える価格・在庫状態)
- Merchant Center商品詳細画面の値([商品] > [商品一覧] > 対象商品の詳細)
この3カ所で値がすべて同じであれば、一時的な同期遅れやクロールタイミングのズレの可能性があります。どこかが違っていれば、その差がエラーの原因です。
具体的には、Merchant Centerの商品詳細画面を開き、price 属性と availability 属性の値を確認します。次に、Shopify管理画面で同じ商品(SKU または handle で検索)を開き、Variant Price と inventory_quantity を確認します。最後に、その商品ページをブラウザのシークレットモードで開き、表示されている価格と在庫状態を確認します。
3カ所確認のチェックリスト
- ☐ Merchant Center商品詳細の price(例: 3980 JPY)をメモ
- ☐ Shopify管理画面の Variant Price(例: 3,980円)をメモ
- ☐ 商品ページの表示価格(税込/税抜に注意)をメモ
- ☐ Merchant Centerの availability(in stock / out of stock)をメモ
- ☐ Shopify管理画面の在庫数と在庫ポリシーをメモ
- ☐ 商品ページの購入ボタンの状態(購入可/売切れ)をメモ
price mismatch で見る価格項目
price mismatch は「Merchant Centerに届いている価格が、ランディングページ(商品ページ)の表示価格と一致していない」というエラーです。ここでいう「一致」は、完全に同じ数字でなければならないわけではなく、消費者が商品ページを開いて確認できる価格と、フィードで送っている価格が矛盾していないことが基準になります。
通常価格(Variant Price)のズレ
Shopify管理画面の Variant Price が Merchant Center の price 属性に反映されます。この間にズレが起きるケースは以下の通りです。
- セール価格を設定したが、フィードアプリの同期がまだ走っていない
- Google & YouTubeアプリの同期間隔(通常15〜30分)の間に価格を変更した
- CSV一括更新で Variant Price を変えたが、商品が再同期されていない
- Markets機能で通貨変換しており、日本円とドルで違う値が送られている
比較価格(Compare-at price)とセール価格のズレ
Shopifyの Compare-at price は「以前の価格」を示すフィールドで、これが設定されているとテーマによってはセール表示になります。Merchant Center 側では sale_price 属性に相当します。ここでよくあるズレは以下の通りです。
- Compare-at price を設定したが、フィードアプリが sale_price として送っていない
- セール期間(開始日・終了日)がShopify側とフィード側でずれている
- Compare-at price の値が Variant Price より低い(設定ミス)
- セール終了後に Compare-at price を消し忘れている
通貨と税込・税抜のズレ
日本のECでは税込価格で表示することが多いですが、Merchant Center に送る価格が税抜になっているケースがあります。また、Shopify Markets で複数通貨を扱っている場合、日本円の商品をドル圏向けに自動変換した価格がフィードに入るため、価格表示と一致しないことがあります。
確認ポイント:
- Shopify管理画面の [設定] > [ストア詳細] > 「税を価格に含める」のオン/オフ
- Markets で有効にしている通貨と、Merchant Center のターゲット国の通貨
- フィードアプリの価格送信設定(税込送信か税抜送信か)
availability mismatch で見る在庫項目
availability mismatch は「Merchant Centerに届いている在庫状態が、商品ページの在庫状態と一致していない」というエラーです。在庫状態は単純な「あり/なし」だけでなく、予約販売や取り寄せの扱いも関係します。
在庫あり・なしのズレ
Merchant Center の availability 属性には in stock か out of stock を送ります。この値と商品ページの在庫状態がズレるケースは以下の通りです。
- Shopifyで在庫を0にしたが、フィード同期がまだ走っていない
- 在庫を追加した直後で、Merchant Centerのクロールが新しい状態を反映していない
- フィードアプリが inventory_quantity を見ずに固定値(常に in stock)を送っている
- 在庫ポリシーが「在庫切れ時も購入を許可する」になっている
予約販売・取り寄せの扱い
Shopifyでは「予約販売」や「取り寄せ」の概念がありますが、Merchant Center側では preorder や backorder として扱うかどうかがフィードアプリの設定に依存します。商品ページに「予約販売」と書いてあるのに、フィードでは in stock として送られていると、availability mismatch の対象になります。
確認ポイント:
- フィードアプリの在庫マッピング設定(在庫数0のときにどう送るか)
- 予約販売商品の在庫ポリシーと表示設定
- 取り寄せ商品のフィード上の取り扱い
在庫ロケーションのズレ
複数の在庫拠点(ロケーション)がある場合、特定の拠点だけ在庫が0になっていることがあります。Shopifyの在庫数はロケーションごとに管理されているため、全体の在庫はあるのに特定の販売チャネル向けには在庫なしになっているケースがあります。
確認ポイント:
- [管理画面] > [在庫] でロケーションごとの在庫数を確認
- 商品の販売チャネル設定で、Google & YouTubeチャネルが有効か
- 特定ロケーションを除外する設定がないか
更新タイミングと同期遅れを分ける
価格や在庫は変更頻度が高いため、「値が違う」と検出されたとき、それが「値の設定ミス」なのか「同期タイミングのズレ」なのかを分ける必要があります。
セール開始直後のタイミングズレ
セール価格を一括で設定した直後は、以下のタイムラグが発生します。
- Shopify管理画面で価格変更 → 即時反映
- フィードアプリが変更を検知 → 通常5〜30分
- Merchant Centerがフィードを受信 → 通常15〜60分
- Googleのクローラーが商品ページを確認 → 数時間〜1日
セール開始直後に price mismatch が出た場合、数時間待ってから再度確認します。解消されていれば同期遅れ、残っていれば設定ミスです。
在庫更新直後のタイミングズレ
在庫も同様で、入荷・売切れのたびにフィード更新とMerchant Centerの再クロールが必要です。高回転商品では、常に price mismatch / availability mismatch が出たり消えたりを繰り返すことがあります。
フィードアプリの同期間隔を確認する
Google & YouTubeアプリを使っている場合は、アプリ設定画面で同期間隔を確認できます。サードパーティのフィードアプリを使っている場合は、そのアプリのスケジュール設定を確認します。リアルタイム同期を謳うアプリでも、実際には数分〜数十分の遅れが出ることがあります。
一覧化して優先順位を付ける
価格・在庫エラーが多数出ている場合、すべてを一度に直すのは現実的ではありません。以下の基準で優先順位を付けます。
| 優先順位 | 対象 | 理由 | 確認すること |
|---|---|---|---|
| 高 | 広告配信中の商品 | クリック単価が無駄になる | Merchant Centerのキャンペーン対象商品を確認 |
| 高 | 高額商品 | 価格ズレの金額差が大きい | 商品ページ価格とフィード価格の差分を確認 |
| 中 | セール対象商品 | セール期間中にズレると機会損失 | セール開始・終了のタイミングと同期状況 |
| 中 | 対象国別の商品 | 通貨変換のズレが起きやすい | Markets設定とフィードの通貨・価格 |
| 低 | 在庫切れの常時商品 | 広告配信に影響しにくい | availability の送信設定 |
エラー商品の一覧表テンプレート
| 商品名 | handle / SKU | Merchant Center価格 | 商品ページ価格 | Shopify価格 | 差分原因 | 対応状況 |
|---|---|---|---|---|---|---|
| (例)Tシャツ白M | tshirt-white-m | 2,980 JPY | 3,280円(税込) | 2,980 | 税込/税抜 | 未対応 |
| (例)バッグ黒 | bag-black | 5,500 JPY | 5,500円 | 5,500 | 同期遅れ | 経過観察 |
自動化できる確認作業
以下の確認は、CSVやスクリプトを使って一括で処理できます。
- 価格差分の抽出:Shopify商品CSVの Variant Price 列と、フィードCSVの price 列を SKU で突き合わせ、差がある商品を抽出
- 0在庫・在庫ありの不一致検出:Shopify CSV の inventory_quantity が0の商品に対して、フィードの availability が in stock になっているものを抽出
- 通貨コード・価格形式の検査:フィードCSVの price 列に通貨コード(JPY、USD等)が正しく付いているか、数値以外の文字が混入していないかを確認
- セール価格の期間チェック:sale_price が設定されている商品で、開始日・終了日が現在日に対して適切かを確認
- Compare-at price の整合性チェック:Compare-at price が Variant Price より低い商品(設定ミスの疑い)を抽出
人間判断が必要な確認作業
以下は自動化で候補を出しても、最終的な判断は人間が行う必要があります。
- セール価格の運用方針:どの商品をいつセール対象にするかは事業判断です。自動で価格を変えるルールを導入するかどうかも運用次第です。
- 予約販売・取り寄せの表示:商品ページに「予約販売」と書くべきか、在庫ありとして表示するかは、顧客期待と販売方針に関わります。
- どの在庫ロケーションを正とするか:複数拠点がある場合、Google Shopping向けにどの拠点の在庫を基準にするかは配送方針に関わります。
- 税込・税抜の表示方針:フィード価格を税込にするか税抜にするかは、店舗の価格表示方針と対象国の慣習によります。
- 価格ズレを直ちに修正すべきか待つべきか:同期遅れの可能性がある場合、何時間待つかは運用判断です。
断定してはいけない注意点
- Google Merchant Center の価格・在庫データ仕様は変更される可能性があります。最新の公式ヘルプで price 属性と availability 属性の要件を確認してください。
- Shopify Google & YouTubeアプリやサードパーティフィードアプリの同期動作は、アプリのバージョンや設定によって異なります。アプリの最新ヘルプも参照してください。
- price mismatch / availability mismatch の判定タイミングは Google 側のクロールに依存するため、修正後に即座にエラーが消えるとは限りません。
- 税務や消費税の計算方法については、税理士等の専門家にご確認ください。
price mismatch や availability mismatch が出て、どの値がずれているか分からない場合はご相談ください。対象商品数、価格変更の頻度、在庫管理の方法をお伺いすれば、確認すべきポイントをご案内します。初回相談では、機密CSVや管理画面のスクリーンショットの送付は不要です。
参考にした公式情報
- https://support.google.com/merchants/answer/6324371
- https://support.google.com/merchants/answer/6324448
- https://support.google.com/merchants/answer/6324468
Merchant Center / 商品フィード まわりの作業整理、小さな自動化、簡易チェックツール化について相談できます。初回相談で機密CSVやスクリーンショットを送る必要はありません。
無料相談する
