
商品の構造化データ入門|AIとSEOに効くschemaの書き方
検索結果に、自分の商品が並んでいる。けれど、すぐ隣の競合店には価格と星マークがついていて、自分のところは味気ないテキストだけ——。 「同じ商品を売っているのに、どうしてあっちだけ目立つんだろう」。そう感じたこと、ありませんか。
その差は、商品力でも広告費でもなく、ページの「裏側」にある小さな情報整理かもしれません。今日は、そのしくみ=構造化データを、専門用語に飲み込まれないようにやさしくほどいていきます。読み終えるころには、「これなら明日ひとつ試せそう」と思えるはずです。
結論:構造化データ(schema.org / JSON-LD)は、商品ページの「価格・在庫・評価」などを検索エンジンやAIが読み取りやすい形で添える“注釈”です。
入れても順位が必ず上がるわけではありませんが、検索結果に価格や星が表示されやすくなり(リッチリザルト)、AIにも要点が正しく伝わりやすくなります。まずは商品(Product)・FAQ・レビューの3つから始めるのが現実的です。
構造化データとは何か
構造化データとは、ページの内容を「これは商品名」「これは価格」「これは在庫状況」と機械にラベル付けして伝えるしくみです。人間は写真や文章を見れば「2,980円の在庫ありね」と分かりますが、検索エンジンやAIにとっては、ラベルが添えてあるほうが確実に読み取れます。
代表的な決まりごとが schema.org という共通の語彙で、それをページに埋め込む書き方が JSON-LD(JavaScriptの記法でまとめて書く方式)です。Googleも、HTML本文と別にまとめて書ける JSON-LD を推奨しています。
ここで大事な前提を1つ。構造化データは「ページに書いてある事実」を正しく伝えるためのものです。ページに無い価格やウソの在庫を書いてはいけません。表示内容と一致していることが、すべての土台になります。
いま検索とAIで何が起きているか

変化は大きく2つあります。
- 検索結果の見た目が変わる:商品(Product)構造化データを正しく入れると、価格・在庫・レビューの星が検索結果に表示されることがあります(リッチリザルト)。同じ並びでも目に留まりやすく、クリック前の信頼につながります。
- AIが要点を読み取りやすくなる:AI検索や対話型AIは、ページの要点を抜き出して回答を作ります。価格や仕様がラベル付けされていると、AIが事実を取り違えにくくなり、引用や言及の精度が上がります。これはAI検索に引用されるEC対策で触れた「要点をはっきり伝える」の、機械向けの一手でもあります。
ただし注意したいのは、構造化データは順位を直接上げる魔法ではないこと。Googleも「リッチリザルトの対象になりやすくなるが、ランキング要因として保証するものではない」という趣旨を案内しています。過度な期待ではなく、「正しく伝わる土台づくり」と捉えるのが健全です。
具体例:商品ページに入れる3つのschema
まずは効果が分かりやすい3つから。コードは「こういう要素を書くんだ」というイメージで眺めてください。すべて、ページに実際に表示している内容と一致させるのが大原則です。
① 商品(Product)
価格・在庫・通貨を伝える、いちばん基本の型です。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "オーガニック保湿クリーム 50g",
"image": "https://example.com/img/cream.jpg",
"description": "乾燥が気になる季節の肌をやさしく保湿するクリームです。",
"brand": { "@type": "Brand", "name": "あなたの店名" },
"offers": {
"@type": "Offer",
"price": "2980",
"priceCurrency": "JPY",
"availability": "https://schema.org/InStock"
}
}
</script>
price はページの表示価格と必ず一致させます。在庫切れなら availability を OutOfStock に。実態と違う表示は、景品表示法上の有利誤認につながりかねないので、ここは丁寧に。
② FAQ(よくある質問)
「問いと答え」をラベル付けする型です。FAQ・問い合わせ対応を効率化するで作った質問集を、そのまま機械にも読める形にできます。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "開封後の使用期限はどのくらいですか?",
"acceptedAnswer": {
"@type": "Answer",
"text": "開封後はおよそ3か月を目安に使い切ることをおすすめします。"
}
}]
}
</script>
ページに表示しているFAQと同じ内容にすること。表示していない質問を構造化データにだけ書くのはガイドライン違反になります。
③ レビュー・評価(Review / AggregateRating)
星の平均と件数を伝える型です。低評価レビューを活かす返信で集めた本物の声を、正しく要約して伝えます。
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.3",
"reviewCount": "128"
}
ここは特に注意が必要です。自作・水増しのレビューや、実在しない評価を載せるのは禁止です。Googleのスパムポリシー違反であると同時に、サクラレビューは景品表示法(やらせ・口コミ規制)の観点でも問題になります。実際に集まった声だけを、誠実に。
あなたへの影響
- 価格・在庫・星が検索結果に出やすくなり、同じ順位でもクリックされやすくなります。
- AIに事実が正しく伝わり、引用・言及の取り違えが減る——情報発信の精度が上がります。
- 一方で、表示と構造化データがズレていると逆効果。Googleの手動対策(リッチリザルトの非表示)を受けることもあります。「盛る」ためではなく「正しく伝える」ために使う、という線引きが何より大切です。
- カートシステム(Shopify・BASE・楽天など)によっては、商品schemaが最初から自動で入っていることもあります。まずは現状確認から。
明日やること
- 売れ筋商品ページのURLを Googleの「リッチリザルト テスト」 にかけ、いま構造化データが入っているか・エラーがないかを確認する。
- もし未対応なら、Product(価格・在庫・通貨)から1ページだけ試しに追加する。テーマやアプリの設定で入れられる場合も多いので、まず管理画面を探す。
- FAQを載せているページがあれば、表示中の質問と同じ内容で FAQ構造化データを1つ足してみる。
- レビューを扱うなら、実在の評価だけを
AggregateRatingで。水増しは絶対にしない、と社内ルールに一言加える。
裏側の小さな情報整理は、派手ではありません。でも、誠実に作ったページを「正しく伝わる」状態に整えるだけで、検索でもAIでも、あなたの商品はちゃんと見つけてもらいやすくなります。今日は1ページ、テストにかけてみるところから始めましょう。

チェックリスト
- 売れ筋ページを「リッチリザルト テスト」で確認した
- Product schemaの価格・在庫がページ表示と一致している
- 在庫切れ時に
availabilityを切り替える運用になっている - FAQ構造化データはページに表示中の質問と同じ内容
- レビュー・評価は実在の声だけ(水増し・自作なし)
- 通貨(JPY)・画像URLなど必須項目が埋まっている
- 構造化データを「盛る」目的で使っていない
関連テンプレート・無料ツール
あなたの商品ページは、価格や評価が「正しく伝わる」状態になっていますか。気になるページのURLを見せていただければ、無料診断で構造化データとAI検索向けの改善ポイントを3つお返しします。