この記事はGoogle Search CentralとSchema.orgの公開仕様を基準にしています。検索結果の表示や順位を保証するものではなく、実装後の検証と継続監視を前提に解説します。
構造化データは、ページに書かれている情報の「意味」を検索エンジンへ機械可読な形で伝えるマークアップです。正しく実装すると記事、商品、イベント、パンくずなどの検索機能に適格となる可能性があります。ただし、順位上昇やリッチリザルト表示を約束する魔法のコードではありません。
本文と一致する情報だけを、Googleが現在対応する型でJSON-LD化する
実務では、まずページの主目的を決め、Googleの機能別ガイドを確認し、テンプレートの正規データからJSON-LDを生成します。公開前はリッチリザルト テストとSchema Markup Validator、公開後はURL検査とSearch Consoleで確認します。
| 構造化データとは | ページ内容の意味や関係を、定められた語彙と形式で機械に伝えるマークアップ |
|---|---|
| 主な語彙 | Schema.org。Google検索での表示条件はGoogle Search Centralの機能別ガイドを優先 |
| 推奨形式 | JSON-LD。MicrodataとRDFaも対応形式だが、重複や不一致を避ける |
| 代表的な用途 | Article、Breadcrumb、Product、Event、JobPosting、LocalBusiness、VideoObjectなど |
| 主な検証 | リッチリザルト テスト、Schema Markup Validator、Search ConsoleのURL検査 |
| 最重要原則 | 構造化データの値を、ユーザーがページ上で確認できる内容と一致させる |
| 確認日 | 2026年7月29日 |
構造化データとは
通常のHTMLは、見出し、段落、画像、リンクといったページの構造を表します。しかし、同じ文字列でも「人名」「会社名」「商品の価格」「イベントの開催日時」など、意味までは常に一意に伝わりません。構造化データは、その意味と項目同士の関係を標準化された形で補足します。
たとえば記事ページなら、見出し文字列を単に表示するだけでなく、headline、author、datePublished、dateModified、imageとして明示できます。商品ページなら、商品名、価格、在庫状態、販売者を別々のプロパティとして表現できます。
構造化データとメタタグは別物
titleやmeta name="description"、og:imageも検索や共有表示に重要ですが、構造化データとは役割が異なります。どちらか一方で代用するのではなく、同じ正規データから一貫した値を出力するのが安全です。
構造化データのSEO効果
構造化データは「入れれば順位が上がる」という施策ではありません。主な価値は、検索エンジンがページ内容を解釈するための明示的な手掛かりを増やし、対応する検索機能に参加できる状態を作ることです。
ページの意味と関係を明示できる
記事と著者、商品と販売条件、イベントと会場などをノードとして結び、単なる文字列より具体的に伝えられます。
対応する検索機能への適格性を作れる
Article、Product、Eventなど、Googleが現在対応する機能の条件を満たすと、豊かな検索表示の候補になります。
タイトル・画像・日付・著者の理解を補助できる
記事では主要画像、公開日、更新日、著者を明示できます。画面、メタタグ、構造化データの値をそろえることが重要です。
検索結果のクリック行動に影響する可能性がある
リッチな表示が実際に出れば視認性が変わる場合があります。ただし、クエリや端末で表示が変わるため、Search Consoleで実測します。
理解と表示機会を支える
- 検索エンジンへの明示的な情報提供
- 対応リッチリザルトへの適格性
- 記事、商品、イベントなどの詳細表現
- テンプレート品質を機械的に監視しやすい
順位・表示・流入の自動増加
- 特定キーワードでの順位上昇
- リッチリザルトの常時表示
- クリック率や売上の改善
- 薄い本文や不正確な情報の補完
AI OverviewsやAI Mode専用の構造化データは必要か
Google検索のAI機能だけを対象にした特別なSchema.orgタイプを追加する考え方ではありません。通常のSEOと同様に、独自性のある本文を公開し、クロール可能にし、構造化データを使う場合は画面上の内容と一致させます。構造化データは情報を機械可読に共有する手段であり、本文そのものの価値を置き換えません。
構造化データの2026年最新動向
古い記事やプラグインの説明では、すでにGoogle検索で終了した機能が推奨されていることがあります。Schema.orgに型が存在するかどうかと、Google検索で現在リッチリザルトとして使われるかどうかは分けて確認してください。
レビューの透明性に関するガイドラインが追加
偽のレビューや、インセンティブ提供を開示していないレビューに関する注意が明確化されました。評価を構造化する前に、レビューの取得方法と表示方法を見直します。
EC向けの商品カテゴリとセール期間の説明が更新
Merchant listingでProduct.categoryの扱いと、validFrom、validThrough、priceValidUntilを使ったセール価格期間の考え方が整理されました。
FAQリッチリザルトのドキュメントが削除
FAQリッチリザルトは2026年5月7日からGoogle検索に表示されなくなりました。FAQ本文はユーザーの疑問解消に有益ですが、FAQPageマークアップを検索表示目的で追加する運用は見直します。
優先画像は構造化データとog:imageの両方が手掛かり
Googleが検索やDiscoverの画像候補を判断する際、Schema.orgのimageとog:imageの両方を情報源として利用することが明確化されました。
Practice problemの検索機能ドキュメントが削除
2025年にはCourse info、Estimated salary、Learning video、Special announcement、Vehicle listingなどもGoogle検索で終了しました。現在の検索ギャラリーを基準に選びます。
ページ別に選ぶ構造化データ
「使える型を全部入れる」のではなく、ページの主目的に最も合う型から選びます。Google検索での実装は、Schema.orgの定義だけでなく、検索ギャラリーと機能別ガイドの両方を確認します。
| ページ | 主な候補 | 伝える情報 | 実装時の注意 |
|---|---|---|---|
| ブログ・解説記事 | Article / BlogPostingBreadcrumbList | 見出し、著者、画像、公開日、更新日 | 実質的に更新した日だけdateModifiedを変更 |
| 商品詳細・EC | ProductOffer | 商品、価格、通貨、在庫、販売条件 | 価格・在庫・セール期間を画面と同期 |
| 店舗・事業所 | LocalBusiness系 | 名称、住所、電話、営業時間、位置 | 実在する拠点ページで、最新営業時間を表示 |
| イベント | Event | 日時、会場、出演者、販売状況 | 中止・延期・オンライン変更を速やかに反映 |
| 求人 | JobPosting | 職種、雇用形態、勤務地、給与、期限 | 募集終了後は削除・期限更新・ステータス管理 |
| 動画中心ページ | VideoObject | 名称、説明、サムネイル、公開日、長さ | 動画がページの主要コンテンツとして視聴可能 |
| Q&A・フォーラム | QAPageDiscussionForumPosting | 質問、回答、コメント、投票など | 運営者が作った通常FAQとは用途が異なる |
サイト共通情報とページ固有情報を分ける
OrganizationやWebSiteはサイト全体の情報として共有し、記事、商品、イベントなどは各ページ固有のノードとして生成します。@idを使うと、同じ組織、著者、Webページを重複した別物として扱わず、グラフ内で参照できます。
正規データから一度だけ生成
CMSやテンプレートのタイトル、URL、著者、画像、日付を共通のデータ源にし、HTML、OGP、JSON-LDへ出力します。
プラグインとテーマが別々に出力
同じArticleやOrganizationが複数生成され、著者、画像、canonicalが食い違うと、検証は通っても解釈が不安定になります。
JSON-LDの書き方と実装例
JSON-LDは通常、<script type="application/ld+json">内に記述します。次は、このような技術記事ページで使えるTechArticle、BreadcrumbList、Organizationを@graphで関連付けた例です。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://example.com/#organization",
"name": "Example Company",
"url": "https://example.com/",
"logo": {
"@type": "ImageObject",
"url": "https://example.com/logo.png"
}
},
{
"@type": "BreadcrumbList",
"@id": "https://example.com/blog/structured-data/#breadcrumb",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "ホーム",
"item": "https://example.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "SEO",
"item": "https://example.com/blog/seo/"
},
{
"@type": "ListItem",
"position": 3,
"name": "構造化データ",
"item": "https://example.com/blog/structured-data/"
}
]
},
{
"@type": "Article",
"@id": "https://example.com/blog/structured-data/#article",
"mainEntityOfPage": "https://example.com/blog/structured-data/",
"headline": "構造化データとは?JSON-LDの実装ガイド",
"description": "構造化データの基礎と実装方法を解説します。",
"image": [
"https://example.com/images/structured-data.jpg"
],
"datePublished": "2026-07-01T09:00:00+09:00",
"dateModified": "2026-07-29T12:00:00+09:00",
"inLanguage": "ja-JP",
"author": {
"@type": "Person",
"name": "山田 太郎",
"url": "https://example.com/authors/taro-yamada/"
},
"publisher": {
"@id": "https://example.com/#organization"
},
"breadcrumb": {
"@id": "https://example.com/blog/structured-data/#breadcrumb"
}
}
]
}
</script>
実装例で確認する10項目
@contextはSchema.org
通常はhttps://schema.orgを指定し、型とプロパティの語彙を定義します。
@typeはページの主目的に合わせる
解説記事ならArticle系、商品ならProduct、イベントならEventというように選びます。
URLは絶対URLで統一する
ページ、画像、著者、ロゴ、パンくずは、公開URLとcanonicalに合わせた絶対URLにします。
@idで同一対象を参照する
組織や記事に安定した識別子を付け、別ノードから同じ対象として参照します。
日付はISO 8601とタイムゾーンを使う
2026-07-29T12:00:00+09:00のように日時とタイムゾーンを含めます。
著者を識別できるURLを付ける
著者紹介ページなどを使い、同名人物と区別しやすくします。
代表画像は本文と一致させる
記事を代表する高品質な画像を指定し、ロゴや無関係な装飾画像だけにしません。
headlineとH1を不必要に食い違わせない
完全一致が絶対条件という意味ではありませんが、別の記事に見える差は避けます。
dateModifiedは実質更新時だけ変更する
日付だけを自動更新せず、本文、表、価格、仕様などの変更記録と連動させます。
ページに存在しない値を作らない
レビュー、在庫、料金、日時、所在地などは、ユーザーが画面で確認できる状態にします。
WordPressで実装するときの注意
WordPressではSEOプラグイン、テーマ、商品プラグイン、レビュー機能がそれぞれJSON-LDを出力する場合があります。まず生成HTMLでapplication/ld+jsonを検索し、同じ型が重複していないか確認します。
- テーマとSEOプラグインが両方Articleを出していないか
- WooCommerceの商品価格と別プラグインのOfferが矛盾していないか
- 著者アーカイブを無効にしているのに、存在しない著者URLを出していないか
- キャッシュ後のHTMLにも最新価格・日付・在庫が反映されているか
- 多言語ページで日本語URLと英語の見出しが混ざっていないか
構造化データを検証する手順
検証は「JSONとして正しいか」だけでは足りません。Googleの検索機能に適格か、Schema.orgとして妥当か、実際にGooglebotが取得できるか、本文と一致しているかを段階的に確認します。
生成後のHTMLを確認する
テンプレートやCMSの元データではなく、本番相当のHTMLでJSON-LDの個数、型、URL、日付、画像、著者、価格を読みます。
リッチリザルト テストを実行する
Google検索で生成できる対象機能、重大なエラー、警告、検出された項目を確認します。対応機能が終了している型は検出対象外になる場合があります。
Schema Markup Validatorで語彙を検証する
Google固有の検索機能に限定せず、Schema.orgマークアップ全体の型とプロパティを確認します。
Search ConsoleのURL検査を使う
公開URLがクロール可能か、取得HTMLにJSON-LDがあるか、canonicalやnoindex、認証、JavaScriptで問題がないか確認します。
公開後のレポートと検索パフォーマンスを見る
拡張レポート、インデックス、検索での表示、クリック、クエリを追い、実装前後を同じ期間・同じページ群で比較します。
テンプレート更新時に再テストする
テーマ、プラグイン、商品フィード、翻訳、デザイン変更で壊れるため、重要ページをCIや定期監査の対象にします。
リッチリザルト テスト
Google検索で対応しているリッチリザルトの候補と、機能別のエラー・警告を確認します。
Schema Markup Validator
Googleの表示機能に限定せず、埋め込まれたSchema.orgマークアップを一般的に検証します。
よくあるエラーと修正方法
| 症状 | 主な原因 | 修正方針 |
|---|---|---|
| 必須項目のエラー | 機能別ガイドで必要な価格、画像、日時などがない | 実在する値を画面にも追加して出力。値がないなら無理に型を使わない |
| 警告が残る | 推奨プロパティが不足 | ページに存在する情報なら追加。存在しない値を作って警告だけ消さない |
| 値が本文と違う | HTMLとJSON-LDを手入力で二重管理 | 同じ正規データから両方を生成し、キャッシュも更新 |
| 同じ型が複数ある | テーマ、SEOプラグイン、専用プラグインが重複出力 | 責任を一つに決め、不要な出力を停止。必要なら@idで明示的に関連付け |
| 画像を取得できない | 相対URL、robots制限、認証、低解像度、404 | 公開可能な絶対URLを使い、HTTP状態と画像サイズを確認 |
| 古い価格・在庫・イベント | キャッシュ、バッチ遅延、終了データの残存 | 表示とJSON-LDを同時更新し、期限やステータスを運用で管理 |
| テストでは通るが表示されない | 表示保証がない、品質条件、クエリ適合、機能終了 | ガイドライン、現在の検索ギャラリー、URL検査、本文品質を再確認 |
構造化データでやってはいけないこと
ユーザーに見えない内容を追加する
画面にない価格、在庫、レビュー、著者、日時をJSON-LDだけへ入れないでください。
自作の星や偽レビューを構造化する
第三者評価に見せかけた数字や、条件付きレビューを不透明なまま表示しないでください。
終了したイベントや求人を残す
終了日、在庫、募集期限、キャンセル状態を更新せず、検索利用者を古いページへ誘導しないでください。
検索表示を狙って無関係な型を使う
記事をProductにする、一般FAQをQAPageにするなど、ページの主目的と異なるマークアップを避けます。
内容を変えずdateModifiedを毎日更新する
更新日を信頼できる情報にするため、実質的な変更と公開画面の更新表示を連動させます。
終了したリッチリザルトを前提にする
2026年のFAQなど、Schema.orgに型があってもGoogle検索では終了した機能があります。
公開前チェックリスト
- ページの主目的に合う型を一つ決め、Googleの現在の機能別ガイドを確認した
- JSON-LDの値は、ユーザーがページ上で確認できる内容と一致している
- title、H1、headline、description、canonical、OGPの内容に大きな矛盾がない
- ページ、画像、ロゴ、著者、パンくずに公開可能な絶対URLを使っている
- datePublishedとdateModifiedをISO 8601形式・タイムゾーン付きで出力した
- テーマやプラグインによる同じ型の重複・競合がない
- リッチリザルト テストとSchema Markup Validatorの両方を実行した
- URL検査でGoogleが取得するHTML、canonical、index可否を確認した
- 価格、在庫、営業時間、イベント、求人など期限のある値に更新担当を決めた
- テンプレート変更後に代表URLを再検証する運用を決めた
構造化データに関するよくある質問
構造化データを入れると検索順位は上がりますか?
順位やリッチリザルト表示は保証されません。構造化データはページ内容を理解する手掛かりと、対応する検索機能への適格性を作ります。本文品質、検索意図への適合、クロール・インデックス、内部リンクなども別に整える必要があります。
JSON-LDとMicrodataはどちらを使うべきですか?
新規実装では、HTML本文と分離しやすくテンプレート管理もしやすいJSON-LDが基本です。GoogleもJSON-LDを推奨しています。既存のMicrodataやRDFaを直ちに削除する必要はありませんが、同じ情報の重複・不一致を避けます。
FAQPage構造化データはもう不要ですか?
Google検索のFAQリッチリザルトは2026年5月7日に終了し、6月15日に関連ドキュメントも削除されました。そのため、GoogleのFAQ表示を狙って追加する意味はなくなりました。ただし、Schema.orgの語彙が存在しなくなったという意味ではなく、他システムで利用する明確な目的があれば別途判断します。
一つのページに複数の構造化データを入れてもよいですか?
はい。たとえば記事ページにArticle、BreadcrumbList、Organization、Personを含め、@idで関連付けられます。ただし、ページに存在しない対象を追加したり、同じArticleを競合する値で複数出力したりしないでください。
警告が残っていても公開できますか?
重大なエラーと警告を分けて判断します。推奨情報がページに実在するなら追加すると品質向上につながりますが、存在しない値を作って警告だけを消すのは逆効果です。機能別ガイドで影響を確認してください。
JavaScriptでJSON-LDを生成してもよいですか?
GoogleはJavaScriptをレンダリングできますが、実装後のDOM、HTTP状態、noindex、canonical、読み込み失敗まで確認が必要です。可能なら初期HTMLに安定して出力し、JavaScriptが必要な場合はURL検査でGoogleが取得した結果を検証します。
構造化データだけでAI検索に引用されやすくなりますか?
構造化データだけでは決まりません。GoogleはAI検索でも従来の基本方針が継続すると説明しており、独自性と有用性のある本文、良好なページ体験、クロール可能性、画面と一致する構造化データが基本です。
リッチリザルト テストに合格すれば必ず表示されますか?
表示されるとは限りません。テスト合格は技術的な適格性の確認であり、実際の検索結果はクエリ、端末、地域、品質、検索機能の提供状況などによって変わります。公開後はSearch Consoleで実績を確認します。
まとめ:構造化データは「正しい情報設計」と「継続運用」で効く
構造化データで最も大切なのは、コード量ではなく整合性です。ページの主目的を明確にし、画面に表示する正規データからJSON-LD、メタタグ、OGPを生成し、Googleが現在対応する検索機能に合わせます。
- Schema.org:型とプロパティの共通語彙
- Googleの機能別ガイド:検索表示に必要な実装・品質条件
- JSON-LD:新規実装で使いやすい推奨形式
- 検証:リッチリザルト テスト、Schema Markup Validator、URL検査
- 運用:価格、在庫、日付、営業時間、機能終了を継続更新
2026年にはFAQリッチリザルト終了などの変更もありました。数年前のテンプレートを固定して使い続けず、Google Search Centralの更新履歴と検索ギャラリーを定期的に確認してください。