「ブログも更新している。SEOの本を読んで一通り実践もした。それなのに、ChatGPTに聞くと自社だけ出てこない」
最近、この違和感を口にされる方が増えています。検索順位はそれなりに付いている。Webサイトも何年も前から公開している。それでも、AIが返す答えの中に自社の名前がない。
原因を探すとき、多くの方はまず記事の中身を疑います。情報が薄いのではないか、更新の本数が足りないのではないか、と。
ただ、記事を書き足す前に見ておきたい場所があります。Webサイトの中身がどれだけ整っていても、その手前でAIの読み取りが止められている場合があります。
私たちは2026年7月20日、自社Webサイト(dotbinary.co)をAI検索の観点から診断しました。そのとき最初に見つかったのが、まさにこの状態でした。
AIボットがまるごとブロックされていた
最初に、AI検索の入口にあたる仕組みを一つだけ整理します。
robots.txtは、Webサイトの一番上の階層に置く小さなテキストファイルで、「どの巡回プログラムに、どこまで見せるか」を書いた案内板のようなものです。ChatGPTやClaudeなどのAIは、AIボット(Webサイトの中身を自動で読み取りに来るプログラム。クローラーとも呼びます)を使って情報を集めており、その入口でこの案内板を読みます。ここで「入らないでください」と書かれていれば、AIは中身を一切読まずに引き返します。
自社Webサイトの手元のファイルは、こう書かれていました。
User-agent: * Allow: /
すべての巡回プログラムに対して、すべてのページを見てよい、という意味です。制限はどこにも書かれていません。
ところが、公開されている本番アドレス(https://dotbinary.co/robots.txt)をそのまま開くと、別の内容が返ってきました。同日に2回取得して、同じ内容であることを確認しています。
User-agent: * Content-Signal: search=yes,ai-train=no,use=reference Allow: / User-agent: ClaudeBot Disallow: / User-agent: Google-Extended Disallow: / User-agent: GPTBot Disallow: /
ClaudeBot(Claude)、GPTBot(ChatGPT)、Google-Extended(Geminiなど)に対して、Disallow: / と書かれています。「すべてのページを見せません」という意味です。このほかAmazon・Apple・ByteDance系のボットも同じ扱いになっていました。ブロックされていなかったのは、PerplexityBot(Perplexity)だけです。
※2行目のContent-Signalは「学習には使わせないが、その場での参照利用は許可する」という意思表示です。ただしGPTBot等は個別にDisallowで止められているため、この行に関係なく読み取り自体が成立していませんでした。
つまり、Webサイトの中に置いてあるファイルの内容と、実際に公開されている内容が食い違っていたことになります。手元のファイルだけを見ている限り、この状態には一生気づけません。
原因は、Cloudflare(Webサイトとインターネットの間に入り、表示を速くしたり不正なアクセスを防いだりするサービス)の管理画面にありました。「AI学習用のボットをブロックする」という設定がオンになっており、その設定が、Webサイト内に置いたrobots.txtの内容を上書きして配信していたのです。設定は同日中にオフへ変更しました。
こうした状態に気づかないまま「発信が足りないからだ」と受け取ってしまうと、記事を増やす方向に何か月も時間を使うことになりかねません。実際には、その手前の入口が閉まっていた、というのが今回のケースでした。
なぜこの設定が見落とされやすいか
こうした食い違いが起きるのは、担当者の不注意というより、Webサイトが2つの層でできているためです。
1つはWebサイトそのものの層です。HTMLファイル、画像、robots.txtなど、制作のときに作って置いておくもの。もう1つは配信の層です。CDN(世界中のサーバーにWebサイトの写しを置き、訪問者に近い場所から素早く届ける仕組み)やサーバーの管理画面など、そのファイルを訪問者に届ける途中に挟まっているもの。
Webサイトを見るという行為は、必ずこの2つを通ります。そして後ろの層は、前の層を書き換える力を持っています。 表示を速くしたりセキュリティを守ったりするために、途中で内容を差し替える機能があらかじめ備わっているためです。今回のようにrobots.txtが管理画面の設定で置き換わるのは、その一例にあたります。
ここに、見落としが生まれる理由が3つあります。
① 作った人と、設定した人が違う
Webサイトを制作した会社と、サーバーやCDNを契約・設定した人が別であることは珍しくありません。時期がずれていることも多く、「両方をまとめて見た人」が最初から存在しない状態になりがちです。
② 見た目が何も変わらない
この設定が入っていても、Webサイトは普通に表示され、Googleの検索順位にも直接は響きません。表示の崩れやエラー画面のような分かりやすい合図が出ないため、不具合として気づく機会そのものがありません。
③ 自分で触らなくても、挙動が変わることがある
配信側の設定は、提供元の仕様変更で意味合いが変わる場合があります。たとえばCloudflareは2026年9月15日から、検索とAI学習の両方を行うクローラーを新しい区分として扱う予定を公表しています。この新区分には検索用のGooglebotも含まれる見込みで、正式な変更より前の段階から、「AI学習をブロック」の設定によってGooglebotの巡回が止まったという報告もすでに出ています(2026年8月時点では、まだ調査が続いている段階の情報です)。契約先の仕様変更まで含めると、一度確認して終わりにはできない領域だと言えます。
そして、この種の設定は「オンにした瞬間」ではなく、その後ずっと効き続けます。気づかない限り、記事を増やしても、構造化データを整えても、その手前で止まったままです。
逆に言えば、ここが直った瞬間から、これまで積み上げてきたページがそのまま読み取りの対象になります。私たちがWebサイトを拝見するとき、中身の改善案より先に配信まわりを確認するのは、この順番を間違えると、良い記事を書くほど届かない量が増えていくためです。
自社Webサイトも同じ状態か確認する視点
AI検索対応の全体を診断して改善まで進めるのは、片手間でできる作業ではありません。ただ、「そもそも読まれているのかどうか」という入口の部分だけは、次の3つの視点でご自身でも確認できます。
① 公開されているrobots.txtを、本番のアドレスで開いて見比べる
ブラウザのアドレス欄に「自社ドメイン/robots.txt」と入力すると、実際に公開されている内容がそのまま表示されます。ここに Disallow: / の行があり、その上にGPTBot・ClaudeBot・Google-Extendedといった名前が並んでいれば、そのAIからは中身が読まれていない状態です。制作会社から受け取ったファイルや手元のファイルと突き合わせて、内容が一致しているかを見比べるところまでが1セットになります。今回の食い違いも、この見比べで初めて表に出ました。
② Webサイトの前に何が挟まっているかを把握する
CDN、セキュリティサービス、レンタルサーバーの管理画面。このいずれかに「AIボットをブロック」「AI学習を拒否」といった項目があり、既定でオンになっていないかを確認します。何を使っているか分からない場合は、制作会社やサーバー会社に「AI関連のブロック設定が入っていますか」と一行問い合わせるだけでも回答が得られます。
③ AIボットが実際に来ているかを見る
サーバーのアクセスログや、CloudflareのAI Crawl Control(AIボットのアクセス状況を確認できる管理画面)のような機能で、GPTBotやClaudeBotの名前が記録されているかを見ます。来た記録が残っていなければ、引用される以前に読まれていないことになります。数字の増減だけで可視性を判断するのは早計ですが、ゼロかどうかの確認には十分に役立ちます。
この3つを確認して問題が見つからなければ、それは良い知らせです。原因は入口ではなく中身の側にあると分かり、次に手を入れる場所を絞り込めます。
自社のWebサイトは、今どちらの状態でしょうか。まずは①から確かめてみるのが、遠回りにならない順番だと考えています。