構造化データ(JSON-LD)の解析エラー
構造化データが構文エラーで壊れていると、検索エンジンはその内容を一切読めません。リッチリザルト(星評価・FAQ表示など)の資格を失うだけでなく、「実装したつもりで何も伝わっていない」状態になります。
公開日: 2026年8月16日 / 最終更新日: 2026年9月6日
カテゴリ: 構造化データ / 影響度: 中 / 想定工数: 1時間 / ルールID: structured_data_parse_error
この問題の意味
構造化データ(JSON-LD)は、ページの内容を機械可読な形式で検索エンジンに伝える記述です。scriptタグ内にJSON形式で書きますが、JSONは構文に厳格で、カンマ1つの欠落でも全体が読めなくなります。
壊れたJSON-LDは「無いもの」として扱われます。エラーが出るわけではなく、静かに無視されるため、気づきにくい問題です。
よくある原因
- 末尾カンマ、閉じ括弧の欠落などの単純な構文ミス
- 文中の引用符やバックスラッシュのエスケープ漏れ(記事タイトルに引用符が入ると壊れる、が典型)
- CMSのテンプレート変数がそのまま出力されている({{title}} のような文字列が残る)
- 手書きで編集した際の全角引用符の混入
Smash SEOの検出条件
各ページのscriptタグ内のJSON-LDを実際に解析し、JSONとして解析できなかったものを解析エラーとして検出します。あわせて、解析はできたが@typeの指定がないもの(何のデータか宣言されていない状態)も別途報告します。
つまりこの検出は「Googleのクローラーが読もうとして失敗するのと同じ経験」をシミュレートしたものです。
直し方
- 対象ページのソースからJSON-LD部分をコピーし、JSON検証ツール(ブラウザの開発者ツールのコンソールでJSON.parseするだけでも可)でエラー位置を特定する
- 構文を修正する。手書きを避け、CMSやプラグインの出力に任せられるならそちらに移行する
- 動的に生成している場合、引用符を含むデータでも壊れないよう、テンプレート側でJSONエスケープを通す
- 修正後、Googleのリッチリザルトテストで検証する
典型的な壊れ方: 引用符のエスケープ漏れ
// NG: タイトル内の引用符で構文が壊れる
{"@type": "Article", "headline": "自称"最速"のサイト改善"}
// OK: エスケープされている
{"@type": "Article", "headline": "自称\"最速\"のサイト改善"}修正後の確認方法
- Googleのリッチリザルトテストでエラーが無いこと
- 再診断して解析エラーが0件になっていること
- Search Consoleの「拡張」レポートで、対象の構造化データが認識されているか(反映まで日数がかかります)
よくある質問
構造化データを入れるとリッチリザルトは必ず出ますか?
出ません。構造化データは資格を得るための条件であり、表示するかはGoogleがページごとに判断します。ただし壊れていれば資格すらないため、正しく実装する価値はあります。
JSON-LDとmicrodataのどちらで書くべきですか?
Googleが推奨しているのはJSON-LDです。HTMLの構造と分離して書けるため、保守も容易です。
関連記事
- FAQPage構造化データの正しい実装 — リッチリザルトの現状も正直に
先に正直な事実から。FAQリッチリザルト(検索結果でQ&Aが開閉表示されるもの)は、2023年のGoogleの仕様変更以降、政府機関や医療など一部の権威あるサイト以外ではほぼ表示されなくなりました。「FAQを入れれば検索結果が豪華になる」は過去の話です。それでも実装する価値はあります。理由ごと解説します。 - E-E-A-Tの技術的な実装 — 概念論で終わらせない
E-E-A-Tの解説記事の9割は「信頼が大事」という概念論で終わります。この記事は逆に、実装だけを扱います。信頼の実体を作るのはあなたの仕事ですが、それを検索エンジンとAIに機械可読な形で伝えるのはHTMLの仕事です。 - Search Consoleのエラー通知の意味と対処一覧
Search Consoleの通知メールは、深刻なものと事実上の情報提供が同じトーンで届きます。全部に慌てる必要はありませんが、放置してはいけないものが混ざっています。通知の種類ごとに、緊急度と対処を整理しました。 - AIに引用されるページの作り方
AIに引用されるかどうかは各サービスの内部処理に依存し、外部から保証はできません。ただし「そもそも読まれていない」状態は技術的に確認でき、解消できます。まずはここからです。
この問題が自分のサイトで起きているかは、URLを入力するだけで確認できます。 無料で診断する / ルール一覧 / 料金プラン