競合ページの「ページのソースを表示」を開いてはみたものの、どこにschemaが書かれているのか分からないまま閉じた。そんな経験はないでしょうか。

無理もありません。JSON-LDはスクリプトの塊の中にまぎれていて、ほかのスクリプトと見た目がよく似ています。しかも、複数の型が入れ子や並列で書かれていると、どこからどこまでが1つの型なのかを目で切り分けることになります。

この記事で扱うのは、競合ページのHTMLソースをAIに渡し、実装されている型と自社との差分を表にさせる実践プロンプトです。そのままコピーして使える形と、返ってきた表の読み方、この方法で分からないことまでをあわせて解説します。

こんなふうに調べていませんか

  • 競合がどんな構造化データを実装しているか知りたいが、ソースを読むのがつらい
  • 自社に足りない型を知りたいが、見比べる作業で手が止まっている
  • schemaを実装すれば引用が増えるのか、判断がつかない

この記事を読み終えたときに手に入るもの

  • 競合ページのHTMLソースから、実装済みの型を一覧にできます
  • 自社との差分表を、どこから読めばいいかが分かります
  • 実装の有無と引用のされやすさを、混ぜずに扱えるようになります

結論30秒でわかる、この記事の結論

  • 競合ページのHTMLソースをコピーして渡すだけで、そのページに実装されているschema.orgの型を一覧化できます。
  • 自社の実装状況もあわせて伝えれば、競合にあって自社にない型という差分まで把握できます。
  • ただし、実装の有無を確認できても、それがAI引用の増減に直結するとは限りません。この点検は実装状況の可視化にとどめます。
競合のschemaは、貼れば表になりますソースを読む作業は、渡してしまって構いません競合のschemaは、貼れば表になります1つめ読む作業を渡す型の名前だけ拾ってきます2つめ差分から読む着手順が決まります3つめ引用とは切り分ける置いてある=効く、ではありません鈴木さんソースを読む作業は、渡してしまって構いません
競合のschemaは、貼れば表になります — ソースを読む作業は、渡してしまって構いません

この記事は、あるマーケティング部の3人と専門家の会話をはさみながら進みます。若葉さん(Web担当)が用語のところを、高梨課長が体制と手間のところを聞き、鈴木さん(AIO/SEOの専門家・本誌監修)が答えます。自分に近い立場の人の質問から読んでいただいて構いません。

01競合の構造化データをAIにチェックさせると、AI検索対策として何が分かるんですか?

若葉さん
若葉さんの発言

そもそもなんですが、競合のソースを見て何が分かるんでしょうか。コードを開いても、私には呪文にしか見えなくて…。

鈴木さん
鈴木さんの発言

分かるのは「どの型を置いているか」です。呪文のまま読もうとせず、型の名前だけ拾ってくればいいんですよ。

構造化データは、ページの中身を検索エンジンや生成AIが解釈しやすい形で書き添えたものです。商品なのか、記事なのか、組織の紹介なのか。その種類を示すのが型(@type)にあたります。

競合ページのHTMLソースを渡すと、そのページに書かれている型が一覧になって返ってきます。自社の実装状況もあわせて伝えれば、競合にあって自社にない型という差分まで、一度に把握できます。

ソースとの向き合い方で、残るものが変わります自分で追いかけるか、丸ごと預けるかの差ですソースとの向き合い方で、残るものが変わります自分で追いかけるか、丸ごと預けるかの差です行を追いかけるどこまで見たかが分からなくなる見落としても気づけない比べる前に力尽きる残るのは疲れだけ丸ごと預ける型の名前が並んで返る置いていない型を名指しできるそのまま社内で回せる残るのは比べられる表
ソースとの向き合い方で、残るものが変わります — 自分で追いかけるか、丸ごと預けるかの差です

この章のまとめ

分かるのは、どの型が置いてあるかです。呪文のように見えるソースから、型の名前だけを拾ってきます。

02HTMLソースを目で追う構造化データのチェックは、AIOのどこでつまずくんですか?

競合ページのHTMLソースは数百から数千行に及ぶことも珍しくなく、目視でのタグ探しには見落としや誤読が起きやすい理由があります。

  • JSON-LDはスクリプトタグ内にまとめて書かれ、ほかのスクリプトと見分けにくい
  • 複数のschemaが入れ子・並列で実装されていると、型ごとの範囲を目視で切り分けにくい
  • price・availabilityはoffers経由のOffer型に属しますが、Product直下のプロパティと誤認しやすい(出典: schema.org公式)
  • 自社の実装状況と比較しようとすると、2つのHTMLソースを行き来する手間が生じる

つまずきは、この順番でやってきます。まず在りかが分からず、次に範囲が分からず、最後に持ち主が分からない。どこか1つでも外すと、その先の判定がまとめてずれます。

目で読むとき、つまずく場所は決まっていますどこか1か所で外すと、その先がまとめてずれます目で読むとき、つまずく場所は決まっていますどこか1か所で外すと、その先がまとめてずれます1どこに書いてあるかほかの記述にまぎれて見つからない2どこまでが一組か入れ子と並列で境目が消える3誰のものか値札は商品の真下には付いていない4自社とどう違うか2枚を行き来するうちに見失う
目で読むとき、つまずく場所は決まっています — どこか1か所で外すと、その先がまとめてずれます

判定の基準とプロパティの帰属を毎回AIに揃えさせておけば、目視の誤認や比較の手間を減らせます。

この章のまとめ

難所は在りか・範囲・持ち主の順に来ます。基準を毎回揃えておけば、誤認と手間を減らせます。

03このチェックプロンプトは、競合の構造化データをAI検索最適化のどこまで見てくれますか?

分かることと分からないことを、先に分けておきます。ここを混ぜると、出力を過大に読んでしまいます。

分かるのは、貼り付けたHTMLソースに書かれている型の名前、その型の主要なプロパティ、自社との差分の分類、そして気づいた構文の崩れです。どれも、渡したソースに書いてあることの整理です。

分からないのは、JavaScriptで後から追加されるJSON-LDと、その実装によって引用が増えるかどうかです。前者はソースに現れないため判定から漏れ、後者はそもそもこの作業の範囲外になります。

扱える範囲は、下の段から積み上がります下の段に無いものは、上の段にも出てきません扱える範囲は、下の段から積み上がります下の段に無いものは、上の段にも出てきません自社の着手順を決めるどこから手をつけるかを選ぶ材料になる名前を並べ、持ち主を確かめる型を書き出し、どの項目がどこに属するかを見る貼り付けた記述そのものここに現れないものは、この先どの段にも出ません後から差し込まれる記述と、引用が増えるかどうかは、どの段にも入りません
扱える範囲は、下の段から積み上がります — 下の段に無いものは、上の段にも出てきません

この章のまとめ

分かるのは、貼ったソースに書いてあることの整理です。動的に足される記述と、引用が増えるかどうかは含まれません。

04競合の構造化データチェックをAI対策に使う前に、何を用意すればいいですか?

用意するものは3つです。うち1つは任意なので、実質は2つから始められます。

変数説明入力例
【競合ページURL】分析対象の競合ページのURL(任意項目)https://example.com/product/sample (架空例)
【競合ページのHTMLソース】競合ページの「ページのソースを表示」で取得したHTML全文(HTMLソースをそのまま貼り付け)
【自社の実装状況】自社が実装済みのschemaの型を箇条書きで列挙したものOrganization型・Article型を実装済み、Product型は未実装(架空例)

※URL・実装状況の入力例はいずれも架空のものです。特定の企業・サイトを指すものではありません。

投げるまでに、この順で用意します特別な道具は要りません。ブラウザだけで足ります投げるまでに、この順で用意します特別な道具は要りません。ブラウザだけで足ります1相手のページを開く見たいページを1つ決めて表示します2ソースを丸ごと写す抜粋せず、まとめて持ってきます3自社の分を書き出す分からないところは不明のままで構いません鈴木さん分からないところを不明と書いておくのも、立派な入力です
投げるまでに、この順で用意します — 特別な道具は要りません。ブラウザだけで足ります

使うAIツールはClaudeを想定しています。競合ページの「ページのソースを表示」機能でHTMLをコピーし、そのままチャットに貼り付けます。ファイルアップロード・Web検索は不要です。2026年7月時点の一般的な提供状況にもとづき、無料プランでも同じ手順で動作します。

この章のまとめ

用意するのは競合ページのHTMLソースと、自社の実装状況です。URLは任意で、無くても実行できます。

05構造化データのチェックプロンプトは、AIOのどこをコピーすればいいですか?

次のコードブロックの中身を、そのままコピーして使ってください。かぎかっこで囲んだ場所だけを、自社の情報に置き換えます。

あなたは構造化データの実装状況を判定するテクニカルSEO/AIOアナリスト
です。以下のHTMLソースを読み、指示に従ってschemaの実装状況を判定
してください。

■入力データ
競合ページのURL(任意): 【競合ページURL】
競合ページのHTMLソース: 【競合ページのHTMLソース】
自社の実装状況: 【自社の実装状況】

■判定手順
1. 【競合ページのHTMLソース】内のJSON-LD部分を探し、記述されている
   schema.orgの@typeをすべて列挙する。
2. @typeごとに、実装されている主要プロパティ(例: Product型ならsku・
   review)を確認する。price・availabilityはProduct型直下ではなく、
   offersプロパティ経由のOffer型に属する点に注意すること。
3. 【自社の実装状況】と照らし合わせ、競合にあって自社にない型、
   競合にも自社にもある型を分類する。
4. 推測でschemaの種類を判定せず、HTMLソースに実際に記述されている
   @typeのみを対象にすること。

■出力形式
以下の表形式で出力してください。
| schemaの型(@type) | 競合での実装 | 自社での実装 | 差分の分類(競合のみ/両方/自社のみ) |
表の後に、競合にあって自社にない型の数を1行でまとめること。

■制約
- HTMLソースに実際に記述されていないschemaの型を、推測で追加しない
  こと。
- JSON-LDの構文エラー(カンマ抜け等)に気づいた場合は、判定結果とは
  別に1行で指摘すること。
- price・availabilityの帰属先(Product直下かOffer経由か)を誤って
  記載しないこと。
残す3行は、それぞれ違う失敗を止めています外すと、どの表も似た形で崩れます残す3行は、それぞれ違う失敗を止めています外すと、どの表も似た形で崩れます外すと起きること止めている一文体裁を整えようとして、無い型が並ぶ書かれていない型は足さない崩れた記述を黙って読み飛ばす気づいたら別枠で挙げる値札の置き場所を取り違える持ち主を誤って書かない
残す3行は、それぞれ違う失敗を止めています — 外すと、どの表も似た形で崩れます

末尾の「■制約」の3行は、消さずに残してください。1行目は、AIが表の体裁を整えようとして、書かれていない型を足すのを止めます。2行目は、記述の崩れを黙って読み飛ばさせないための指示です。3行目は、価格や在庫の情報がどの型に属するかを取り違えさせないための指示になります。

この章のまとめ

書き換えるのは、かぎかっこで囲んだ場所だけです。■制約の3行は、作り話・読み飛ばし・取り違えを止めています。

06返ってきた構造化データの差分表は、LLMOの観点でどこから読めばいいですか?

高梨課長
高梨課長の発言

表が返ってきたとして、うちのチームはどこから見て、次の一手を決めればいいんでしょうか。

鈴木さん
鈴木さんの発言

見るところは3つです。競合にあって自社にない型、構文の崩れの指摘、そしてプロパティの帰属。この順で見てください。

表が出力されたら、次の3点を確認します。

  • 競合にあって自社にない型 — 実装コストと影響度を踏まえ、着手順の優先順位づけに使います
  • JSON-LDの構文エラーの指摘 — 判定結果とは別枠の指摘です。競合の実装が正しく機能していない可能性を示唆します
  • プロパティの帰属 — price・availabilityがOffer型経由で記述されているかを確認します。Product直下に誤って書かれた実装は、仕様から外れている可能性があります

読む順番には理由があります。差分は「これから何をするか」を決める材料で、構文の崩れは「相手の実装が効いているか」を測る材料です。役割が違うので、混ぜて読むと判断がぶれます。

差分は、3つの置き場所に分かれますどこに入るかで、次にやることが変わります差分は、3つの置き場所に分かれますどこに入るかで、次にやることが変わります相手だけにある自社だけにある着手順を決める材料/手間と効きめで並べる残す価値のある持ち味/減らす前に理由を確かめるどちらにもあるどちらにもある : 中身の丁寧さで差がつく / 項目の埋まり方を見る置き場所が決まると、型ごとに次の一手が決まります。
差分は、3つの置き場所に分かれます — どこに入るかで、次にやることが変わります

実装の有無を確認したあとは、公式のRich Results TestとSchema Markup Validatorで検証します。使い分けは別記事『構造化データのテスト・検証ツールの使い方』で解説しています。

この章のまとめ

見るのは「自社にない型」「構文の崩れ」「帰属」の3つです。差分は着手順、構文の崩れは相手の実装の効き具合を測る材料です。

07実装があるかどうかのチェックだけで、AI検索の引用は増えるんですか?

若葉さん
若葉さんの発言

差分が分かったなら、競合にある型を片っ端から足していけばいいんでしょうか。

鈴木さん
鈴木さんの発言

そこは、いったん止まってください。型の数を増やすことと、引用されることは、同じ線の上にないんですよ。

ここは正直に書きます。実装の有無を確認できても、それがAI引用の増減に直結するとは限りません。

属性豊富なスキーマの正の効果は証明されていないとする報告があります(別記事『Schema markupとAI引用の相関』参照)。同検証では、必須プロパティだけの汎用的な実装は、未実装の場合より引用率が低かったという結果も報告されています。

札を貼るだけでは、中身は伝わりません数をそろえる話ではなく、中身をそろえる話です札を貼るだけでは、中身は伝わりません数をそろえる話ではなく、中身をそろえる話です空欄の札が並ぶ棚型はあるが、書かれている中身が薄いそろえること自体が目的になっている札の無い棚より不親切に見えることがある増やすほど良い、とは限りません中身の入った札書かれている内容が実物と合っている読み手がその場で判断できる自社が持っている範囲でだけ置いている手元にある事実に合わせる
札を貼るだけでは、中身は伝わりません — 数をそろえる話ではなく、中身をそろえる話です

たとえるなら、値札です。札を貼るだけでは、中身は伝わりません。むしろ、空欄の札が並んでいる棚は、札の無い棚より不親切に見えることがあります。型を増やすこと自体が目的になると、この状態に近づきます。

だからこの点検は、実装状況の可視化にとどめてください。offers経由のプロパティ設計の実例は、別記事『EC事業者のPerplexity対策』も参考になります。

この章のまとめ

札を貼るだけでは中身は伝わりません。型を増やすこと自体を目的にせず、可視化にとどめます。

08競合を増やしたり型を絞ったり、構造化データのチェックはAI検索最適化でどこまで広げられますか?

同じプロンプトのまま、広げ方が3つあります。

応用1: 複数の競合ページをまとめて比較する

複数の競合ページのHTMLソースを見出し付きで連結し、【競合ページのHTMLソース】に入力してください。■出力形式に「競合ごとに列を分けて出力してください」と1行加えると、複数社を横並びで比較できます。

応用2: 特定の型だけを深掘りする

「Product型に絞り、実装プロパティを全て列挙してください」のように対象を絞ると、1つの型の実装の丁寧さまで比較できます。

応用3: HTMLソースが長すぎて貼り付けられない場合

HTMLソースが長すぎて貼り付けられない場合は、<script type="application/ld+json">のブロックだけを抜粋して貼り付ければ、JSON-LD形式の実装分は判定できます。

広げ方には、向きが3つありますどれも、同じ文面のまま動きます広げ方には、向きが3つありますどれも、同じ文面のまま動きます横へ相手を足す列を分けて、業界の傾向を見る深く型を絞るひとつの型の丁寧さを比べる細く渡す範囲を切る該当する記述だけを抜き出す
広げ方には、向きが3つあります — どれも、同じ文面のまま動きます

この章のまとめ

広げ方は3つ。相手を増やす、型を絞る、渡す範囲を細くする。どれも同じプロンプトのまま動きます。

09この競合の構造化データチェックをAI対策に使うとき、気をつけることは何ですか?

高梨課長
高梨課長の発言

この表は、一度作れば当分そのまま使えるものでしょうか。

鈴木さん
鈴木さんの発言

いえ、写真だと思ってください。相手のページが更新された時点で、写っているものは変わります。

いちばん気をつけたいのは、この判定結果が取得した時点の写しだということです。

この表は、写真と同じように古くなります変わったことは、こちらには知らされませんこの表は、写真と同じように古くなります変わったことは、こちらには知らされません1写した時点の姿そのときの記述だけが写っている2相手が手を入れるこちらに知らせは来ない3表と実物がずれる古い前提のまま議論が進む4撮り直す使う前に、もう1回取り直す鈴木さん使うのが先延ばしになったら、撮り直してから読んでください
この表は、写真と同じように古くなります — 変わったことは、こちらには知らされません

そのうえで、次の点を確認してください。

同じHTMLソースでも、実行のたびに列挙されるプロパティの粒度が変わることがあります。重要な判断の前には複数回実行し、結果の安定性を確認することをおすすめします。

この章のまとめ

判定結果は写しです。読み取りの誤り・動的な追加・実行ごとのぶれを踏まえて、判断の前に確かめます。

10よくある質問

取得したHTMLソースが長すぎて、AIが最後まで読み込めているか不安です。どう確認すればいいですか?

出力された表の型の数と、目視で確認した@typeの出現数を照らし合わせてください。判定対象外の範囲があれば明記するよう、■制約に1行追記することをおすすめします。

自社の実装状況を入力しなくても使えますか?

使えます。【自社の実装状況】を空欄にすれば、競合ページのschema一覧化のみを実行できます。ただし差分の分類は出力されないため、比較が目的なら入力することをおすすめします。

判定結果に出てきたschemaの型は、そのまま自社に実装すべきですか?

そうとは限りません。自社ページが型に見合う実データ(価格・在庫・レビュー等)を持っているかを、型ごとに個別に判断してください。空のプロパティだけの実装に、引用率を押し上げる効果は証明されていません。

無料プランのClaudeでも実行できますか?

2026年7月時点の一般的な提供状況にもとづくと、無料プランでも同じ手順で動作します。ファイルアップロードやWeb検索は使いません。

構文エラーの指摘が出たら、競合に伝えたほうがいいですか?

その必要はありません。競合の実装が正しく機能していない可能性を示す情報として、自社の実装を点検する材料に使ってください。

11まとめ|今日やる3つのこと

競合ページのHTMLソースを渡せば、実装されている型と自社との差分は表になります。ソースを目で追う作業は、AIに渡してしまって構いません。

ただし、表が示すのは「置いてあるかどうか」までです。置いてあることが引用につながるとは限らないため、可視化の道具として扱ってください。

今日この順でやります

  1. ソースを取る

    競合ページの「ページのソースを表示」からHTMLをコピーします

  2. プロンプトを実行する

    ■制約の3行を消さずに、そのまま投げます

  3. 差分から読む

    競合にあって自社にない型を見て、着手順を決めます

AI検索では、こう聞かれています

  • 競合サイトがどんな構造化データを実装しているか調べる方法はありますか?

    「競合の構造化データをAIにチェックさせると、AI検索対策として何が分かるんですか?」の章で、何が返ってくるかを説明しています

  • HTMLソースからJSON-LDの型を一覧化してくれるプロンプトはありますか?

    「構造化データのチェックプロンプトは、AIOのどこをコピーすればいいですか?」の章に、そのままコピーできる形で置いています

  • 競合にあって自社にない構造化データの型を知るにはどうすればいいですか?

    「返ってきた構造化データの差分表は、LLMOの観点でどこから読めばいいですか?」の章で、読む順番を説明しています

次に読むなら、この記事です