Appearu AI可視性チェック

JSON-LD

価格を画面から消したはずが、AIにだけ見えていた:構造化データに残った金額の見つけ方

株式会社Hyakryps

この記事でわかること

  • 画面(人間向け)の表示を直しても、JSON-LDやllms.txt(AI・検索エンジン向け)は別の場所にあるため、同じ変更を別々に適用しないと揃わない。
  • 私たち自身のサイトで、画面からは消したはずの料金が、構造化データにだけ残っていたという失敗が実際に起きた。
  • 自分の会社のサイトでも同じことが起きていないか、5分でできる確認手順を紹介する。

この記事は、連載「AI経由0件から何をしたか」の第1回です。 AIに読まれる設計を扱う私たち自身のサイトに、AI経由の流入はまだ作れていません。技術は入れてあり、足りないのは引用される理由のほうだと考え、自分たちのサイトを順序から作り直す過程を、うまくいっていない期間も含めて記録していきます。最初に手を付けたのは「画面ではなく、機械が実際に何を読んでいるか」を切り離して見ることでした。そこで見つかったのが、この話です。


「消したはず」が、消えていなかった

2026年8月末、自社サイトの料金表示を個別見積りに切り替えました。トップページの料金セクションを書き換え、よくある質問に書いていた具体的な金額の文言も削りました。画面を見る限り、金額はどこにもありません。

ところが後日、サイト全体の監査をかけたところ、画面には出ていない場所に金額がそのまま残っていることが分かりました。ページのHTMLに埋め込まれた構造化データ(JSON-LD)のOfferに、minPriceとして金額が5件。さらに、AIクローラ向けに用意しているllms.txtにも、金額を含む行が5行残っていました。

つまり、人間の来訪者は画面で金額を見られないのに、AI(検索エンジンやAIクローラ)だけは金額を読めるという、意図とは逆転した状態になっていたということです。

これは「うちは確認が甘かった」という話として書いているのではありません。見えていなかったのは、見つける仕組みをまだ持っていなかったからです。だからこそ、その仕組み自体を作った、という話として読んでください。


なぜ「画面を直す」だけでは終わらないのか

サイトの情報は、実は一箇所にまとまっていません。同じ「料金」という情報でも、置かれている場所が層ごとに違います。

層誰が読むか今回、金額が残っていた場所
画面(HTML本文)人間の来訪者修正済み(残っていなかった)
構造化データ(JSON-LD)検索エンジン・AIOfferのminPriceに5件残存
llms.txtAIクローラ金額を含む行が5行残存

画面の文言を直したとき、頭の中では「料金の表示を消した」で完了しています。ところが構造化データとllms.txtは、画面とは別のコードで別のタイミングに生成されている場合が多く、同じ修正を3箇所に分けて適用しないと、どこかが取り残されやすくなります。 今回取り残されたのは、普段人の目に触れない2箇所でした。

人が見ないところほど、直し忘れに気づく機会がありません。AIに読まれる情報ほど、人の目のチェックが働きにくいという逆説がここにあります。


自分のサイトでも確認できる:5分でできるチェック手順

これは特別な状況ではありません。構造化データやllms.txtを持っているサイトなら、どこでも起こり得ます。 以下の手順で、ご自身の会社のサイトを確認できます。

  1. サイトのトップページを開き、ページのソースを表示する(Chromeなら右クリック→「ページのソースを表示」、またはWindowsはCtrl+U/MacはCmd+Option+U)
  2. ソースの中でCtrl+F(MacはCmd+F)を使い、application/ld+jsonを検索する。該当する<script>タグの中身がJSON-LD(構造化データ)です
  3. その中にprice・priceSpecification・minPrice・lowPriceといった、金額を表すプロパティが無いか確認する
  4. 自社ドメイン/llms.txt(例:https://example.com/llms.txt)を直接ブラウザで開き、金額の表記(円・¥・数字+万円 等)が無いか確認する
  5. 構造化データの構文自体が正しいかは、Googleのリッチリザルト テストでも確認できる

画面上の表示だけを見て「消えている」と判断しないこと。 表示と構造化データは別の場所にある、という前提で両方を見る必要があります。


私たちが実際に直した内容

自社での対応を開示します。

画面・JSON-LD・llms.txtの3層すべてから、金額に関するプロパティ・文言(priceSpecification・minPrice・金額の文字列)を撤去し、「個別見積り」という表記に統一しました。なお、サービスの段階構成(入口・各プランの名称・説明・リンク)を示すOffer自体は残しています。金額を非公開にする判断であって、サービス階層をAIに読めなくする判断ではないためです。

対応後、ビルドしたサイト全体(26ページ)を対象に、以下を機械的に確認しました。

確認項目結果
トップページのJSON-LDに含まれるminPrice0件
トップページのJSON-LDに含まれるpriceSpecification0件
サイト全体で、撤去対象の金額表記を含むファイル0ファイル
llms.txtの金額表記(万円・円・¥・JPY)0件

「消したつもり」で終わらせず、消えたことを数で確認するところまでをセットにしました。


よくある落とし穴

「画面を直した」と「サイト全体を直した」は違う

担当者の頭の中では、画面の修正が完了した時点で作業は終わっています。しかし構造化データ・llms.txt・サイトマップなど、画面とは別に生成される情報が他にもあれば、そこは自動的には直りません。 修正のたびに「他に同じ情報を持っている場所はないか」を洗い出す工程が要ります。

AIに読まれる情報は、人が気づきにくい

画面の誤字や表示崩れは、来訪者からの問い合わせや自分の目視で気づけます。一方、構造化データやllms.txtの中身は、意識して確認しない限り誰の目にも触れません。チェックの仕組みを事前に用意しておかないと、直し忘れが長期間残り続けます。


FAQ

Q. 構造化データ(JSON-LD)を使っていない会社でも関係ありますか?

A. 現時点でJSON-LDやllms.txtを設置していなければ、今回と同じ形の問題は起きません。ただし、AIに読まれることを意識してこれらを導入する予定があるなら、導入時から「画面とは別に確認する」という前提を持っておくことをお勧めします。

Q. 料金を非公開にすると、AIからの評価やSEOに悪影響はありませんか?

A. 今回の変更による影響は計測できていません(変更から日が浅いため)。判断の理由は料金戦略側にあり、AIからの見え方の損得を主目的にしたものではないため、本記事では言及を控えます。

Q. 一度直せば、もう起きませんか?

A. 断言はできません。今後もサイトに手を加えるたびに、画面とは別の場所にある情報が取り残される可能性は残ります。だからこそ「直したら数で確認する」工程を、都度の作業に組み込んでいます。


まとめ

  • 画面の表示を直しても、JSON-LDやllms.txtなど、AI・検索エンジンが読む情報は別の場所にあるため、同じ修正が自動的には反映されない。
  • 私たちのサイトでも、画面からは消した料金が、構造化データにminPrice5件・llms.txtに5行、実際に残っていた。
  • 画面上の表示だけで「消えた」と判断せず、ページのソース・JSON-LD・llms.txtを直接確認する。手順は本記事に掲載した5ステップで再現できる。

関連記事

次のステップ

「画面は直したはずなのに、他の場所に古い情報が残っていないか不安」——そう感じたら、まず自社サイトを1つずつ確認するところからです。現状の把握から、無料の「AI可視性チェック」(アペアル)でご一緒できます。

AI可視性チェック(無料・アペアル)へ