AIクロール
AIクロールとは、ChatGPT、Gemini、PerplexityなどのAIシステムが、モデルの学習、検索インデックスの構築、ユーザーの質問へのリアルタイム回答のために、Webページを自動的に収集して読み取る行為およびその全体的なプロセスを指します。ページをランキングするためにインデックス化する従来の検索クロールとは異なり、決定的な違いは、収集されたコンテンツが学習データや生成された回答のための生の素材になる点にあります。
AI crawling は、行為およびプロセスです。AI crawler、つまり収集を行うボットとは異なります。
Cloudflare の計測によると、過去1年間の AI crawling の約 80% はモデル学習向けで、18% は検索インデックス作成向け、2% はリアルタイムのユーザーアクション向けでした。
OpenAI だけを見ても、GPTBot(学習)、OAI-SearchBot(検索)、ChatGPT-User(リアルタイム)はそれぞれ異なる目的を持つため、robots.txt では個別に制御する必要があります。
robots.txt はアクセスをブロックすることに関するものであり、llms.txt はAI を読み取り可能なコンテンツへ誘導することに関するものです。llms.txt だけでは学習用途での利用を防ぐことはできません。
クロールは急増していますが、それに対して返ってくる参照流入はごくわずかであり、クロール対リファーの不均衡はサイト運営者にとって新たな懸念となっています。
AI Crawling とは
AI crawling とは、生成 AI システムが自らの目的のためにウェブページを自動的に取得し、読み取る行為およびその全体のプロセスを指します。ここには3つの異なる目的が含まれています。1つ目は、大規模言語モデルを構築するための学習データ収集、2つ目は、コンテンツをインデックス化してAI 検索機能に表示できるようにすること、3つ目はライブフェッチで、ユーザーが質問した瞬間に、その場で裏付けとなる証拠を取得することです。この記事では、特定のボットではなく、このプロセス、ポリシー、トラフィックに焦点を当てます。
1つの区別が重要です。AI crawlerは、GPTBot や ClaudeBot のように実際にリクエストを送信するボット、つまりアクターです。一方で、AI crawling はそれらのボットが実行する挙動、ポリシー、フローを指します。同じ企業のボットでも、学習、検索、リアルタイムの目的ごとに分かれているため、運用者にとっては、どのボットが来ているかよりも、どの目的の crawling を許可またはブロックするかを尋ねるほうが実務上有効です。
従来の Crawling と AI Crawling の違い
検索エンジンの従来の crawling と AI crawling は、ウェブを自動的に読み取るという点は共通していますが、収集されたデータが最終的にどこで使われるかという点で根本的に異なります。
項目 | 従来の Crawling | AI Crawling |
|---|---|---|
主な目的 | 検索インデックスを構築し、ランキングを算出する | モデル学習、AI検索インデックス作成、リアルタイム回答生成 |
収集した情報の利用先 | 検索結果ページ(SERP)上のリンクとして表示される | 学習データ、回答テキスト、引用の根拠として利用される |
代表的なアクター | Googlebot, Bingbot | GPTBot, ClaudeBot, PerplexityBot, Google-Extended (token) |
流入トラフィック | SERP クリックが参照元サイトへのトラフィックを戻す | AI が回答内で処理するため、クリックや訪問は少なくなりがち |
制御メカニズム | robots.txt、meta robots、sitemaps | robots.txt(ボットごとに分割)、llms.txt、学習専用トークン(例: Google-Extended) |
運営者の懸念 | インデックス登録、ランキング、クロール予算 | 学習利用への同意、クロール対クリックの不均衡、サーバー負荷 |
AIクロールを制御する方法
AIクロールは、標準ファイルを通じてある程度制御できます。ただしまず、それぞれのファイルが明確に異なる役割を果たすことを理解する必要があります。robots.txtは、どこに行ってはいけないかを示すアクセス制御であり、llms.txtは、AIが読みやすいように整理されたコンテンツがここにあることを示すガイドです。
robots.txt — ボットごとに個別に制御する
重要なのは、各AIボットには異なる目的があるため、user-agentごとに個別のルールを書くべきだという点です。たとえばOpenAIは、学習用にGPTBot、検索用にOAI-SearchBot、リアルタイム用にChatGPT-Userをそれぞれ別のエージェントとして運用しているため、GPTBotだけをブロックしてもChatGPT検索まで遮断することにはなりません。
# 例: 学習用クロールはブロックしつつ、AI検索での可視性は許可
# OpenAIの学習 — ブロック
User-agent: GPTBot
Disallow: /
# OpenAI検索インデックス — 許可(ルールなし = 許可)
User-agent: OAI-SearchBot
Disallow:
# Anthropicの学習/収集 — ブロック
User-agent: ClaudeBot
Disallow: /
# Google: Googlebotは検索用としてそのままにし、
# このトークンを使って生成AI(Geminiなど)の学習利用のみをブロック
User-agent: Google-Extended
Disallow: /
# Perplexity
User-agent: PerplexityBot
Disallow: /private/Google-Extendedは別個のボットではなく、robots.txtでのみ使用される制御トークンです。このトークンをDisallowに設定すると、Google Searchのインデックス登録やランキングには影響を与えず、Geminiなどの生成AIの学習およびグラウンディングへのコンテンツ利用を防げます。
llms.txt — AIをコンテンツへ誘導する
llms.txtは、サイトのルートに配置するMarkdownファイルです。モデル向けのサイトマップのように機能し、AIがメニュー、スクリプト、レイアウトを深くたどらずに、主要コンテンツを効率よく見つけて読み取れるようにします。
# Example Corp
> 製品、料金、ドキュメントへの導線となる要約。
## Docs
- [Getting started](https://example.com/docs/start): インストールと基本設定
- [API reference](https://example.com/docs/api): エンドポイント定義
## Optional
- [About us](https://example.com/about)ただし、よくある誤解があります。llms.txtファイルを置くだけで学習利用を制御できるという考えは誤りです。llms.txtは、推論時にAIがコンテンツをうまく読み取るのを助ける利便性のためのものであり、学習のブロックはrobots.txtまたは学習専用トークンの役割です。また、robots.txtとllms.txtはいずれも強制力のない任意規約にすぎないため、それらを無視するクローラーには効果がありません。
証拠と統計
AIクロールの規模と性質は、Cloudflareが自社のネットワークトラフィックに基づいて公開したデータから、かなり具体的に把握できます。
学習が大半を占めます。Cloudflareの分析によると、過去1年のAIクロール目的のおよそ80%はモデル学習で、18%が検索インデックス登録、2%がリアルタイムのユーザー操作でした。学習の割合は、1年前の72%から80%へ増加しました(出典: Cloudflare, The crawl-to-click gap)。
AIクロールのトラフィックは急速に増加しました。2024年5月から2025年5月の間に、AIおよび検索クローラーのトラフィックは約18%増加し、同じ期間にOpenAIのGPTBotは全クローラーシェアの2.2%から7.7%へと上昇し、9位から3位に浮上しました(リクエスト量は+305%増)。一方、ByteDanceのBytespiderは42%から7.2%へと急落しました(出典: Cloudflare, From Googlebot to GPTBot)。
クロールに対するリファラルは非常に低いです。crawl-to-refer(1訪問あたりのクロールページ数)を見ると、Anthropicは2025年1月の286,930:1から7月には38,066:1へ改善しましたが、それでも1回の訪問ごとに数万ページがクロールされていることを意味します。同じ期間にOpenAIは1,217:1から1,091:1へ、Googleは3.8:1から5.4:1へと推移し、差が最も小さかったのはGoogleでした(出典: Cloudflare, The crawl-to-click gap)。
これらの数値が示すことは明確です。AIクロールは取り込むコンテンツ量に比べて元サイトへ返すトラフィックが非常に少ないため、運営者は用途ごとに、学習利用を許可するのか、AI検索に表示されるのか、あるいはその両方をブロックするのかを、意識して判断しなければならない段階に来ています。AI search、または両方をブロックするかです。
実装チェックリスト
まずはサーバーとCDNのログを確認し、GPTBot、ClaudeBot、PerplexityBotなどのAI crawlerのリクエスト量と頻度を把握しましょう。
学習の許可とAI searchへの表示可否は分けて判断してください。これは別々のポリシーです。
robots.txtではbotごとのuser-agent単位でルールを記述し、GPTBotをブロックしてもOAI-SearchBotをブロックすることにはならない点を確認してください。
Google Searchは維持しつつGeminiの学習だけをブロックしたい場合は、robots.txtでGoogle-ExtendedトークンをDisallowに追加します。
llms.txtは学習をブロックするためではなく、AIに主要コンテンツを読ませるための案内として使います。ブロック方針はrobots.txtで維持してください。
標準的な慣行を無視するクローラーに備えるため、必要に応じてWAFやbot managementなどのブロック手段も検討してください。
ポリシー変更後は、反映まで時間を置き(たとえばOpenAI searchはrobots.txtの変更から約24時間後に更新されます)、ログで結果を再確認してください。
参考資料
Cloudflare — The crawl-to-click gap: Cloudflare data on AI bots, training, and referrals
Cloudflare — From Googlebot to GPTBot: who's crawling your site in 2025
OpenAI — Overview of OpenAI Crawlers (GPTBot, OAI-SearchBot, ChatGPT-User)
Search Engine Land — Meet llms.txt, a proposed standard for AI website content crawling