AEO(Answer Engine Optimization/アンサーエンジン最適化)に取り組みたい、というご相談が増えています。ところが実際にサイトを拝見すると、コンテンツの設計以前に、AIがページ本文をそもそも取得できていないケースが少なくありません。SEOでは「Google検索に出ているから問題ない」と判断できた実装が、AI検索では同じように扱われないためです。今回は制作・開発の立場から、コンテンツを増やす前に確認しておきたい2つの落とし穴——JavaScriptによる本文の組み立てと、robots.txtの書き方——を、一次情報にあたりながら整理します。
なぜ、AEOはコンテンツより先に「実装」の話になるのか?
流入の経路が入れ替わりつつある
HubSpotは2026年4月14日、AI検索での見え方を追跡・改善する専用製品「HubSpot AEO」を発表しました。その発表資料の中でHubSpotは、自社顧客のオーガニック検索からの流入が前年比で27%減少していること("Organic traffic for HubSpot customers is down 27% year-over-year")を公表しています。あわせて、AEOベータ版でアンサーエンジンを優先的に扱った顧客では、AI経由の参照流入が20%伸びたとしています。
この発表を受けた業界メディアでは、HubSpot顧客のAI経由の参照流入が3倍に伸びたことも報じられています。減った分がそのまま消えたのではなく、買い手が答えを探す場所が移動している、と読むのが実態に近いはずです。
ただし、引用される前提は「読めていること」
ここで見落とされやすいのが、AI検索に引用されるには、その前段としてクローラーがページ本文を取得できている必要があるという点です。どれだけ良い記事を書いても、AI側に本文が届いていなければ、引用の候補にすら入りません。AEOの一番目の工程は、コンテンツ制作ではなく現状の実装確認だとお伝えしているのは、このためです。
AIは、あなたのページを読めているか?
主要なAIクローラーはJavaScriptを実行しない
VercelとMERJが2024年12月17日に公開した共同調査は、この点を大規模な実データで示しています。同調査は1か月間のVercelネットワーク上で、GPTBotによる約5億6,900万件、Claudeによる約3億7,000万件、PerplexityBotによる約2,440万件のフェッチを分析したものです。
- JavaScriptファイルは取得するが、実行しない:調査では「ChatGPTとClaudeのクローラーはJavaScriptファイルを取得はするものの(ChatGPT: 11.50%、Claude: 23.84%)、実行はしない」と報告されています。
- 主要AIクローラーは軒並み同じ挙動:OpenAI(OAI-SearchBot、ChatGPT-User、GPTBot)、Anthropic(ClaudeBot)、Perplexity(PerplexityBot)のいずれもJavaScriptをレンダリングしていない、と結論づけられています。
- 例外はGemini:GoogleのGeminiはGooglebotの基盤を利用するため、JavaScriptのレンダリングが可能とされています。
つまり、ReactやVueのように「ブラウザ側で表示するときに本文を組み立てる」作りのページは、Google検索には出ていても、多くのAIクローラーからはほぼ空のHTMLに見えている可能性があります。
HubSpotで作ったページが、この点で有利な理由
HubSpotのCMSで作ったページは、テンプレート言語のHubLがサーバー側でHTMLを組み立てて返します。クローラーが受け取った時点で本文がHTMLに含まれているため、JavaScriptを実行しないクローラーでも本文を取得できます。制作基盤の選定がそのままAI検索での可視性に効いてくる、という意味で、これは無視できない差です。
確認は30秒で終わる
難しい診断ツールは不要です。ブラウザで対象ページを開き、右クリックから「ページのソースを表示」を選び、読ませたい本文がそこに文字として並んでいるかを見てください。並んでいれば大丈夫です。並んでいなければ、そのページはAIから見て実質的に空です。
この確認は、製品情報を持つ製造業の中堅〜大手企業ほど先に済ませておく価値があります。型番・仕様・用途といった、本来もっとも引用されるべき情報が、絞り込みUIの中でJavaScriptによって描画されている構成は珍しくありません。カタログをPDFで配布し、ウェブ上の仕様表は動的生成、という組み合わせだと、AIから見える情報は製品名だけ、ということも起こり得ます。データ資産としては社内に揃っているのに、外からは読めない——AI-Readyなデータ基盤を議論する前に、まずこの断絶を潰すほうが投資対効果は高いはずです。
「AIに学習させたくない」設定が、AI検索からの離脱になっていないか?
GPTBotとOAI-SearchBotは、役割が違う
「自社コンテンツをAIの学習に使われたくない」というご要望は珍しくありません。その対応としてrobots.txtでGPTBotをDisallow(拒否)に設定したサイトは多いはずです。ここで押さえておきたいのは、OpenAIの公式ドキュメントが、クローラーを役割ごとに分けて説明しているという点です。
- GPTBot:生成AIの基盤モデルをより有用で安全にするために使われる、学習用のクローラー。
- OAI-SearchBot:ChatGPTの検索機能において、ウェブサイトを検索結果に表示するために使われるクローラー。
- ChatGPT-User:ChatGPTやCustom GPTsでの、ユーザー起点の操作に応じて動くクローラー。
同ドキュメントは、OAI-SearchBotをオプトアウトしたサイトについて「ChatGPTの検索の回答には表示されない(ただしナビゲーションリンクとしては表示され得る)」と明記しています。裏を返せば、GPTBotだけを拒否しても、ChatGPTの検索結果からは消えません。学習は断りたいがAI検索には出したい、という要望は、この2つを分けて書けば両立します。
本当に消えるのは「User-agent: *」で全面拒否したとき
実際にAI検索から消えるのは、robots.txtに User-agent: * で全面的な拒否を書いている場合です。この記述を入れると、OAI-SearchBotも一緒に止まります。「AIボットをまとめて拒否する」という趣旨の記述にOAI-SearchBotを含めてしまっている場合も同じです。数年前に善意で入れた1行が、いまはAI検索からの離脱ボタンとして働いている可能性があります。
棚卸しで見るべき3項目
- 全面拒否の有無:
User-agent: * に対する Disallow: / が残っていないか。
- ボット名の粒度:学習用(GPTBot)と検索用(OAI-SearchBot)が、意図どおりに分けて書かれているか。
- 記述の由来:誰が・いつ・何の目的で入れた行かを説明できるか。説明できない行は、たいてい意図から外れています。
この棚卸しは、技術課題というより部門間の調整課題です。情報通信業や金融・保険業のように、法務・情報システム部門主導でAIボットの一括拒否を決めた企業では、その判断がマーケティング部門の認知施策と衝突していることに、誰も気づいていないという状態が起こります。robots.txtは1ファイルですが、そこに書かれている内容はガバナンスの意思決定そのものです。「学習は不可、検索は可」という方針を経営として一度決めてしまえば、現場の判断は1行の記述に落ちます。決める場をつくることが、実務上のボトルネックの解消につながります。
現状把握は、どこから始めればよいか?
AI Search Grader:無料・1回きりの診断
AI Search Graderにブランド名を入力すると、ChatGPT・Perplexity・Geminiでの見え方を100点満点で採点してくれます。センチメント、プレゼンスの質、ブランド認知、シェア・オブ・ボイス、市場ポジションの5つの観点で評価され、2分程度で結果が返ります。ただし公式ページに明記されているとおり、これは無料・1回きりの診断です。
AI Search Sensor:業界単位の動きを日次で追う
AI Search Sensor(BETA)は、業界単位のAI検索の動きを日次更新で公開しているダッシュボードです。AI経由の参照流入トレンド、業界別のAI可視性ベンチマーク、引用シェアの推移、アンサーエンジンの変動性を確認できます。自社の数字が落ちたのか、業界全体が動いたのかを切り分けたいときに使います。
継続的な追跡と改善提案は、HubSpot AEO
継続的なモニタリングと改善提案まで必要になったら、有償のHubSpot AEOの検討に進みます。単体では月額50ドルから、Marketing Hub Professional・Enterpriseには機能として含まれます。CRMのデータをもとにした追跡プロンプトの提案と、コンテンツ作成やページ更新をHubSpot内でそのまま実行できる点が、外部の可視性計測ツールとの違いです。
新しい技術は、ひとつも必要ない
AEOと聞くと新しい施策のように感じますが、ここまで挙げた対応——見出しの階層を整える、robots.txtを意図どおりに書く、伝えたい情報をHTMLに文字として置く——は、どれも新しい技術ではありません。読み手が人からAIに変わったことで、これまで「動いているから大丈夫だろう」で済ませてきた実装が、そのまま引用されない理由になっているだけです。
まとめ
- HubSpotは自社顧客のオーガニック流入が前年比27%減と公表。AEOはコンテンツ施策の前に、実装の点検から始まる
- Vercel/MERJの調査によれば、GPTBot・ClaudeBot・PerplexityBotはJavaScriptを実行しない。クライアント側で本文を組み立てるページは、AIから空に見えている可能性がある(GeminiはGooglebotの基盤を使うため例外)
- HubSpotのHubLはサーバー側でHTMLを返すため、この点では有利。確認は「ページのソースを表示」で30秒
- GPTBotの拒否だけではChatGPTの検索結果から消えない。実際に消えるのは
User-agent: * による全面拒否。学習用と検索用のボットを分けて書けば「学習は不可、検索は可」は両立する
- 現状把握はAI Search Grader(無料・1回きり)とAI Search Sensor(業界単位・日次)から。継続的な追跡はHubSpot AEO
まずは自社サイトの主要ページを1枚開いて、ソースに本文が並んでいるかを確認し、robots.txtを1行ずつ読み直してみてください。コンテンツを増やすのは、そのあとで十分間に合います。
よくある質問(FAQ)
Q1. GPTBotを拒否すると、ChatGPTの検索結果にも出なくなりますか?
いいえ。OpenAIの公式ドキュメントでは、学習用のGPTBotと検索用のOAI-SearchBotは別のクローラーとして説明されています。ChatGPTの検索の回答に表示されなくなるのは、OAI-SearchBotをオプトアウトした場合です。GPTBotだけを拒否しても検索結果からは消えません。
Q2. HubSpotで作ったページなら、JavaScriptの心配は不要ですか?
HubLがサーバー側でHTMLを組み立てるため、標準的な作り方であれば本文はHTMLに含まれます。ただし、外部のJavaScriptで後からコンテンツを差し込んでいるモジュールや、埋め込みで表示している要素は対象外です。ページごとに「ページのソースを表示」で確認してください。
Q3. AEOはSEOとは別に取り組む必要がありますか?
施策の中身は大きく重なります。見出し構造の整理、本文をHTMLで返すこと、robots.txtの適正化は、どちらにも効きます。違うのは評価される単位で、AI検索では「ページの順位」ではなく「回答の中で引用されるか」が問われます。まずは共通部分である実装の点検から着手するのが効率的です。