AIクローラーは一括で止める前に、学習用・AI検索用・利用者の指示で取得するものへ分けます。検索流入を残したいサイトは学習用だけ止め、非公開情報を守りたいサイトはrobots.txtではなく認証を使います。この記事を読めば、「全部止める・検索用だけ通す・全部通す」のどれを選ぶか決められます。
クローラーは、Webページを自動で取りに来るプログラムです。たとえるなら、同じ建物の入口へ来る「資料収集担当」「検索案内担当」「利用者に頼まれた配達員」は目的が違います。事業者名だけでまとめて遮断すると、学習を断るつもりでAI検索からの発見まで失う場合があります。
先に知るべきrobots.txtの限界
robots.txtは、サイトのルート(/robots.txt)に置くクローラー向けの規則です。そこへ対象のUser-agent(クローラーの名札)と、取得を断るパスを書きます。
ただし、RFC 9309はrobots.txtを有効なコンテンツ保護策の代わりにしないよう明記しています。robots.txtは規則を守るクローラーへ意思を伝える仕組みであり、ページへのアクセス自体を認証で拒否するものではありません。さらに、隠したいパスをrobots.txtへ書くと、そのパス名が公開されます。
会員限定、個人情報、未公開資料、管理画面を守る目的なら、ログイン、HTTP認証、権限管理など、サーバー側で本文を返さない仕組みを使います。robots.txtは「入らないで」という掲示、認証は「鍵がなければ扉が開かない」仕組みです。
主要AIクローラーの公式説明を横断照合
2026年8月24日に、OpenAI、Google、Anthropicの公式ページを実際に開いて確認しました。各社は目的別に異なる名前を用意しているため、同じ会社の行も分けています。
| 事業者 | クローラー名(User-agent/robots.txtトークン) | 公式が案内する止め方 | 学習に使われるかどうかの公式説明 | 出典URL | 確認日 |
|---|---|---|---|---|---|
| OpenAI | GPTBot | User-agent: GPTBot と Disallow: / をrobots.txtへ設定 | 生成AIの基盤モデルの学習に使われる可能性があるコンテンツを収集。拒否は学習へ使わない意思表示になる | https://developers.openai.com/api/docs/bots | 2026-08-24 |
| OpenAI | OAI-SearchBot | User-agent: OAI-SearchBot と Disallow: / をrobots.txtへ設定 | ChatGPTの検索結果へサイトを表示するための検索用。公式はGPTBotの学習制御と独立して設定できると説明 | https://developers.openai.com/api/docs/bots | 2026-08-24 |
| OpenAI | ChatGPT-User | 利用者の指示で動くため、OpenAI公式はrobots.txtが適用されない場合があると説明。確実に止める必要があるページは認証などサーバー側で保護 | ChatGPTやCustom GPTの利用者が指示したページ取得に使用。モデル学習への使用について、この公式ページでは記載を確認できず | https://developers.openai.com/api/docs/bots | 2026-08-24 |
Google-Extended | User-agent: Google-Extended と Disallow: / をrobots.txtへ設定 | Googleが取得したサイト内容を、将来世代のGeminiモデルの学習と、Gemini Apps等のグラウンディングへ使うかを管理するトークン。Google検索への掲載には影響しない | https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers#google-extended | 2026-08-24 | |
| Anthropic | ClaudeBot | User-agent: ClaudeBot と Disallow: / をrobots.txtへ設定 | 将来のモデル学習データへ含まれ得るWeb内容を収集。拒否は将来の素材を学習データセットから除外する意思表示になる | https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler | 2026-08-24 |
| Anthropic | Claude-SearchBot | 同じ名前をUser-agentに指定して Disallow: / | 検索結果の関連性と正確さを改善する検索用。公式ページには、このボットをモデル学習へ使うとの記載を確認できず | https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler | 2026-08-24 |
| Anthropic | Claude-User | 同じ名前をUser-agentに指定して Disallow: / | Claude利用者の質問に応じてページを取得する用途。公式ページには、このボットをモデル学習へ使うとの記載を確認できず | https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler | 2026-08-24 |
Google-Extendedには、独立したHTTPリクエストのUser-agent文字列がありません。Google公式によると、既存のGoogleクローラーが取得し、Google-Extendedはrobots.txt上で利用目的を制御するトークンです。したがって、アクセスログで Google-Extended という文字列を探しても、効果の確認にはなりません。
OpenAIの ChatGPT-User も注意が必要です。OpenAI公式は、利用者が指示した取得に使い、自動巡回には使わないと説明する一方、利用者起点のためrobots.txtが適用されない場合があるとしています。本記事の表では、自動検索用の OAI-SearchBot と区別しました。
判断の分岐表
| サイトの条件 | 選ぶ方針 | 設定の考え方 | 先に確認すること |
|---|---|---|---|
| 会員限定、個人情報、未公開資料がある | robots.txtだけに頼らず、認証で保護 | クローラー方針とは別に、未認証の相手へ本文を返さない | ログアウト状態で本文やファイルを取得できないか |
| 公開記事は検索で見つけてほしいが、モデル学習には提供したくない | 検索用は通し、学習用だけ止める | OAI-SearchBot等の検索用を許可し、GPTBot、ClaudeBot、Google-Extendedを拒否 | 各社が検索と学習を別トークンで提供しているか |
| AI検索からの発見も学習利用も望まない | 確認できたAI用トークンをすべて止める | 学習用、検索用、ユーザー取得用を個別に拒否。必要ならネットワーク側の制御も検討 | 通常の検索エンジンまで止めないか。公開ページはURL自体が発見され得ること |
| 引用や参照による発見を優先し、公開内容の利用を許容する | 全部通す | 対象クローラーへの Disallow を置かない | 利用規約、権利、個人情報、契約上の提供可否 |
| 目的を判断できない、権利関係が未整理 | いったん学習用を止め、検索用は個別判断 | 後から変更できる形で明示的な規則を置く | 著作権者、寄稿者、顧客との契約。組織の公開方針 |
「全部止める」が常に安全とは限りません。公開情報へのAI検索からの流入を失う可能性があります。反対に「全部通す」も、公開した本人が学習利用まで許諾できる内容かを確認せず選べません。自分が著作権を持たない寄稿、顧客から預かった情報、ライセンス素材がある場合は、サイト全体を一つの意思で扱わず、契約と公開範囲を先に整理します。
robots.txtの設定例
検索用は通し、学習用だけ止める
次は、OpenAIとAnthropicの検索用を許可し、確認できた学習用トークンを拒否する例です。Google-Extendedの拒否はGoogle検索への掲載へ影響しないとGoogle公式が説明しています。
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
確認したAI用トークンをすべて止める
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Claude-SearchBot
Disallow: /
User-agent: Claude-User
Disallow: /
User-agent: Google-Extended
Disallow: /
既存のrobots.txtがある場合は、全消去して貼り替えません。すでにあるGooglebot、広告、サイトマップ、CMS固有の規則を残し、対象グループを追加します。User-agent名の入力ミスや、意図しない User-agent: * の拒否は、通常の検索クローラーまで止める原因になります。
自分で確かめる再現手順
1. 現在のファイルを保存する
変更前のrobots.txtを手元へコピーし、日時を記録します。問題が起きた時は、この内容へ戻せます。CMSやホスティングサービスが自動生成している場合は、編集場所を公式手順で確認します。
2. ルートへ設定する
robots.txtは対象ホストのルートへ置きます。www.example.com と sub.example.com は別のホストなので、必要ならそれぞれ確認します。Anthropic公式も、拒否したいサブドメインごとに設定するよう案内しています。
3. 公開された内容を直接読む
ブラウザで次を開きます。
ブラウザのアドレス欄には「自分のサイトのURL」に /robots.txt を足した場所を入力します。
期待する結果は、編集したUser-agentと規則が文字化けせず表示されることです。別の内容、404、ログイン画面、HTMLのエラーページが表示された場合は、配置や配信設定を直します。
WindowsのPowerShellを使える場合は、サイトURLを入力してヘッダーも確認できます。
$siteUrl = Read-Host "自分のサイトURL"
curl.exe -i "$siteUrl/robots.txt"
期待する結果は、成功を示すHTTP応答と、本文に設定した規則が表示されることです。数値の応答コードを暗記するより、エラー画面へ転送されず、公開ファイルの本文を取得できることを確認してください。
4. 対象パスとの一致を読む
Disallow: / はサイト全体を対象にします。特定ディレクトリだけなら、そのパスを指定します。同じUser-agentグループに複数規則がある場合、RFC 9309では一致するパスのうち、より具体的な長い一致が使われます。許可と拒否が混在する場合は、対象URLを一つずつ書き出し、どの規則が最長一致になるか確かめます。
5. アクセスログで経過を確認する
設定時刻をJSTで記録し、その後のサーバーやCDNのアクセスログで対象User-agentを確認します。OpenAI公式は、robots.txtの変更が検索システムへ反映されるまで時間がかかる場合があると案内しています。変更直後の一件だけで失敗と断定しません。
期待する結果は、設定が公開された後に、規則を尊重する対象クローラーから拒否パスへの新しい取得が続かなくなることです。ただし、アクセスが見当たらないことだけでは「永久に効いた」証明になりません。元から巡回がなかった可能性もあるため、確認日時、ログの期間、対象User-agentを記録します。
反対に、同じUser-agent名を名乗る通信が残っても、それだけで公式クローラーとは断定できません。User-agentは送信者が任意に名乗れます。事業者がIP範囲や確認方法を公開している場合は、現在の公式ページから照合します。古い固定リストを記事からコピーして恒久設定にしません。
6. 守秘が必要なページはログアウト状態で再確認する
robots.txtへ拒否を書いた後でも、URLを知る未認証の利用者へ本文が返るなら、保護は完了していません。シークレットウィンドウなどログインしていない状態で対象URLを開き、本文ではなくログイン要求やアクセス拒否が表示されることを確認します。
失敗と戻し方
| 何が起きるか | 影響 | 事前の対策 | 起きた後の戻し方 |
|---|---|---|---|
User-agent: * を誤って全面拒否する | 通常検索の巡回まで止まる | 変更前を保存し、追加するグループだけを差分確認する | 保存したrobots.txtへ戻し、公開内容を再取得する |
| 学習用と検索用をまとめて拒否する | AI検索での発見機会も減る | 目的別のUser-agentを公式表で分ける | 検索用グループを明示的に許可し、反映後のログを確認する |
| robots.txtで非公開ページを守ったつもりになる | URLを知る相手へ本文が返る | 認証と権限で本文を保護する | 未認証アクセスをサーバー側で拒否し、漏えい範囲を調査する |
| User-agent名や配置先を間違える | 意図した相手へ規則が伝わらない | 公式ページから名前を転記し、各ホストのルートを開く | 正しい名前と配置へ直し、確認日時を更新する |
| ログ上の名前だけで公式ボットと断定する | なりすましを許可・拒否する | 事業者の現行の確認方法がある場合だけ照合する | User-agent単独の判定をやめ、CDNやサーバー側の検証へ切り替える |
結論
最初に決めるのは「AIを許すか」ではなく、公開内容をどの目的へ提供するかです。学習を断りながらAI検索での発見を残すなら、GPTBotとOAI-SearchBot、ClaudeBotとClaude-SearchBotを別々に扱います。Google-ExtendedはGoogle検索の掲載とは独立した制御です。
robots.txtを設定したら、ルートで実際の本文を読み、対象URLとの一致を確認し、JSTの設定時刻以後のログを観察します。機密情報はrobots.txtへ任せず、認証によって未許可の相手へ本文を返さないことが終了条件です。
一次資料
確認日: 2026-08-24
- OpenAI「Overview of OpenAI Crawlers」: GPTBot、OAI-SearchBot、ChatGPT-Userの用途、独立した制御、robots.txt設定例、公開IP情報を確認。https://developers.openai.com/api/docs/bots
- Google for Developers「Google’s common crawlers」: Google-Extendedのrobots.txtトークン、Geminiの将来学習とグラウンディングへの利用制御、Google検索へ影響しないことを確認。https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers#google-extended
- Anthropic Help Center「Does Anthropic crawl data from the web, and how can site owners block the crawler?」: ClaudeBot、Claude-User、Claude-SearchBotの用途と、各ボットをrobots.txtで拒否する方法を確認。https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler
- RFC Editor「RFC 9309: Robots Exclusion Protocol」: robots.txtの配置、User-agentとAllow/Disallowの解釈、最長一致、アクセス制御の代わりにならないことを確認。https://www.rfc-editor.org/rfc/rfc9309.html
見たソース数: 4