競合ページの「ページのソースを表示」を開いてはみたものの、どこにschemaが書かれているのか分からないまま閉じた。そんな経験はないでしょうか。
無理もありません。JSON-LDはスクリプトの塊の中にまぎれていて、ほかのスクリプトと見た目がよく似ています。しかも、複数の型が入れ子や並列で書かれていると、どこからどこまでが1つの型なのかを目で切り分けることになります。
この記事で扱うのは、競合ページのHTMLソースをAIに渡し、実装されている型と自社との差分を表にさせる実践プロンプトです。そのままコピーして使える形と、返ってきた表の読み方、この方法で分からないことまでをあわせて解説します。
こんなふうに調べていませんか
- 競合がどんな構造化データを実装しているか知りたいが、ソースを読むのがつらい
- 自社に足りない型を知りたいが、見比べる作業で手が止まっている
- schemaを実装すれば引用が増えるのか、判断がつかない
この記事を読み終えたときに手に入るもの
- 競合ページのHTMLソースから、実装済みの型を一覧にできます
- 自社との差分表を、どこから読めばいいかが分かります
- 実装の有無と引用のされやすさを、混ぜずに扱えるようになります
結論30秒でわかる、この記事の結論
- 競合ページのHTMLソースをコピーして渡すだけで、そのページに実装されているschema.orgの型を一覧化できます。
- 自社の実装状況もあわせて伝えれば、競合にあって自社にない型という差分まで把握できます。
- ただし、実装の有無を確認できても、それがAI引用の増減に直結するとは限りません。この点検は実装状況の可視化にとどめます。
この記事は、あるマーケティング部の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つでも外すと、その先の判定がまとめてずれます。
判定の基準とプロパティの帰属を毎回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・実装状況の入力例はいずれも架空のものです。特定の企業・サイトを指すものではありません。
使う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行は、消さずに残してください。1行目は、AIが表の体裁を整えようとして、書かれていない型を足すのを止めます。2行目は、記述の崩れを黙って読み飛ばさせないための指示です。3行目は、価格や在庫の情報がどの型に属するかを取り違えさせないための指示になります。
この章のまとめ
書き換えるのは、かぎかっこで囲んだ場所だけです。■制約の3行は、作り話・読み飛ばし・取り違えを止めています。
06返ってきた構造化データの差分表は、LLMOの観点でどこから読めばいいですか?
高梨課長表が返ってきたとして、うちのチームはどこから見て、次の一手を決めればいいんでしょうか。
鈴木さん見るところは3つです。競合にあって自社にない型、構文の崩れの指摘、そしてプロパティの帰属。この順で見てください。
表が出力されたら、次の3点を確認します。
- 競合にあって自社にない型 — 実装コストと影響度を踏まえ、着手順の優先順位づけに使います
- JSON-LDの構文エラーの指摘 — 判定結果とは別枠の指摘です。競合の実装が正しく機能していない可能性を示唆します
- プロパティの帰属 — price・availabilityがOffer型経由で記述されているかを確認します。Product直下に誤って書かれた実装は、仕様から外れている可能性があります
読む順番には理由があります。差分は「これから何をするか」を決める材料で、構文の崩れは「相手の実装が効いているか」を測る材料です。役割が違うので、混ぜて読むと判断がぶれます。
実装の有無を確認したあとは、公式の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つ。相手を増やす、型を絞る、渡す範囲を細くする。どれも同じプロンプトのまま動きます。
09この競合の構造化データチェックをAI対策に使うとき、気をつけることは何ですか?
高梨課長この表は、一度作れば当分そのまま使えるものでしょうか。
鈴木さんいえ、写真だと思ってください。相手のページが更新された時点で、写っているものは変わります。
いちばん気をつけたいのは、この判定結果が取得した時点の写しだということです。
そのうえで、次の点を確認してください。
同じHTMLソースでも、実行のたびに列挙されるプロパティの粒度が変わることがあります。重要な判断の前には複数回実行し、結果の安定性を確認することをおすすめします。
この章のまとめ
判定結果は写しです。読み取りの誤り・動的な追加・実行ごとのぶれを踏まえて、判断の前に確かめます。
10よくある質問
取得したHTMLソースが長すぎて、AIが最後まで読み込めているか不安です。どう確認すればいいですか?
出力された表の型の数と、目視で確認した@typeの出現数を照らし合わせてください。判定対象外の範囲があれば明記するよう、■制約に1行追記することをおすすめします。
自社の実装状況を入力しなくても使えますか?
使えます。【自社の実装状況】を空欄にすれば、競合ページのschema一覧化のみを実行できます。ただし差分の分類は出力されないため、比較が目的なら入力することをおすすめします。
判定結果に出てきたschemaの型は、そのまま自社に実装すべきですか?
そうとは限りません。自社ページが型に見合う実データ(価格・在庫・レビュー等)を持っているかを、型ごとに個別に判断してください。空のプロパティだけの実装に、引用率を押し上げる効果は証明されていません。
無料プランのClaudeでも実行できますか?
2026年7月時点の一般的な提供状況にもとづくと、無料プランでも同じ手順で動作します。ファイルアップロードやWeb検索は使いません。
構文エラーの指摘が出たら、競合に伝えたほうがいいですか?
その必要はありません。競合の実装が正しく機能していない可能性を示す情報として、自社の実装を点検する材料に使ってください。
11まとめ|今日やる3つのこと
競合ページのHTMLソースを渡せば、実装されている型と自社との差分は表になります。ソースを目で追う作業は、AIに渡してしまって構いません。
ただし、表が示すのは「置いてあるかどうか」までです。置いてあることが引用につながるとは限らないため、可視化の道具として扱ってください。
今日この順でやります
ソースを取る
競合ページの「ページのソースを表示」からHTMLをコピーします
プロンプトを実行する
■制約の3行を消さずに、そのまま投げます
差分から読む
競合にあって自社にない型を見て、着手順を決めます
AI検索では、こう聞かれています
競合サイトがどんな構造化データを実装しているか調べる方法はありますか?
「競合の構造化データをAIにチェックさせると、AI検索対策として何が分かるんですか?」の章で、何が返ってくるかを説明しています
HTMLソースからJSON-LDの型を一覧化してくれるプロンプトはありますか?
「構造化データのチェックプロンプトは、AIOのどこをコピーすればいいですか?」の章に、そのままコピーできる形で置いています
競合にあって自社にない構造化データの型を知るにはどうすればいいですか?
「返ってきた構造化データの差分表は、LLMOの観点でどこから読めばいいですか?」の章で、読む順番を説明しています
次に読むなら、この記事です