AIクローラーのrobots.txt設定は「用途」で分ける
AIクローラーのrobots.txt設定は、会社ごとではなく用途ごとに決めます。同じ会社でも、学習用、検索用、利用者の操作で動く取得用で名前が分かれており、拒否したときの影響が違うからです。robots.txtは、サイトの最上位に置くクローラーへの指示ファイルです。
2026年10月23日に各社の公式文書で確かめた名前と用途は、次のとおりです。
| 会社 | 学習用 | 検索用 | 利用者の操作で取得 |
|---|---|---|---|
| OpenAI | GPTBot | OAI-SearchBot | ChatGPT-User |
| Anthropic | ClaudeBot | Claude-SearchBot | Claude-User |
| Google-Extended(学習とGeminiのグラウンディングへの利用を指定) | Googlebot | Google-Agent・Google-GeminiNotebook | |
| Perplexity | なし(PerplexityBotは学習に使わないと明記) | PerplexityBot | Perplexity-User |
| Apple | Applebot-Extended(基盤モデルの学習への利用を指定) | Applebot | なし |
Google-ExtendedとApplebot-Extendedは、実際にページを読みに来るクローラーではありません。GooglebotやApplebotが集めた情報を学習などに使ってよいかを、robots.txtで伝えるための名前です。
学習だけ拒否し検索は残すrobots.txtの書き方
学習だけ拒否し検索は残すには、学習用の名前だけを並べて「Disallow: /」を書き、検索用の名前は書きません。検索用のクローラーは自分の名前のグループがなければ「User-agent: *」の指定に従うため、今の設定のまま読めます。
次の表は、そのまま使える記述例です。表の1行が、robots.txtの2行分に当たります。たとえば表の1行目は、ファイルに「User-agent: GPTBot」と書き、その次の行に「Disallow: /」と書きます。グループの間には空行を1行入れると読みやすくなります。
| 1行目 | 2行目 | 意味 |
|---|---|---|
| User-agent: GPTBot | Disallow: / | OpenAIの学習用を全ページ拒否 |
| User-agent: ClaudeBot | Disallow: / | Anthropicの学習用を全ページ拒否 |
| User-agent: Google-Extended | Disallow: / | Geminiの学習とグラウンディングへの利用を拒否 |
| User-agent: Applebot-Extended | Disallow: / | Appleの基盤モデルの学習への利用を拒否 |
ファイルの残りの部分には、今ある「User-agent: *」のグループと「Sitemap:」の行をそのまま残します。一部のページだけを断りたい場合は、「Disallow: /」の代わりに「Disallow: /members/」のように場所を書きます。
Google-Extendedだけは、学習に加えて、Geminiアプリなどでのグラウンディング(回答の根拠としての利用)もまとめて断る指定です。Googleは、Google-ExtendedがGoogle検索への掲載や順位に影響しないと明記しています。一方で、Geminiアプリの回答に自社の情報を使ってほしい場合は、Google-Extendedを表から外すかどうかを検討します。
「User-agent: *」の指定が引き継がれない落とし穴
個別の名前のグループを書くと、そのクローラーには「User-agent: *」のグループの指定が適用されなくなります。Googleのrobots.txtの解説は、1つのクローラーに有効なグループは1つだけで、個別のグループとすべてのクローラー向けのグループは結合されないと説明しています。robots.txtの標準仕様(RFC 9309)も、自分の名前のグループがないときに限って、すべてのクローラー向けのグループに従うと定めています。
以下は架空の例です。管理画面を拒否しているサイトで、OAI-SearchBotを明示的に許可しようとしてグループを足したとします。
| 1行目 | 2行目 |
|---|---|
| User-agent: * | Disallow: /admin/ |
| User-agent: OAI-SearchBot | Allow: / |
この場合、OAI-SearchBotは「Disallow: /admin/」に従わず、/admin/も読めるようになります。検索用の名前のグループを作るなら、拒否したい場所をそのグループにも書き直します。上の例なら、2つ目のグループを「User-agent: OAI-SearchBot」と「Disallow: /admin/」の2行にします。
ほかにも、書き方の決まりがあります。
- robots.txtはサイトの最上位(例:https://www.example.com/robots.txt)に置く。サブドメインごとに必要
- User-agentの名前は大文字・小文字を区別しない。パスは区別する
- AllowとDisallowが重なるときは、パスが長い、より具体的な指定が優先される
- Googleが読むのは500KiBまで
利用者の操作による取得は会社ごとに扱いが違う
利用者の質問をきっかけにページを取りに来るクローラーは、robots.txtへの従い方が会社ごとに違います。OpenAIとPerplexityは、利用者の依頼による取得にはrobots.txtが適用されない場合があると説明しています。Googleも、Google-AgentやGoogle-GeminiNotebookなどの利用者の操作による取得では、通常はrobots.txtが無視されると説明しています。Anthropicは、自社のクローラーはrobots.txtを尊重すると説明しています。
| 名前 | robots.txtの扱い(公式文書の説明) | 拒否したときの影響 |
|---|---|---|
| ChatGPT-User | 利用者の操作のため、適用されない場合がある | 検索に載るかの判断には使わないと明記 |
| Claude-User | robots.txtを尊重する | 利用者の質問に応じた取得を防ぐ。表示が減る可能性がある |
| Perplexity-User | 利用者の依頼のため、原則として従わない | 公式の説明なし |
| Google-Agent・Google-GeminiNotebook | 利用者の操作のため、通常は無視される | 公式の説明なし |
検索用のクローラーを拒否した場合の扱いも、公式文書に書かれています。OpenAIは、OAI-SearchBotを拒否したサイトはChatGPTの検索回答に表示されない一方、ナビゲーション用のリンクとしては表示される場合があると説明しています。Anthropicは、Claude-SearchBotを無効にすると、検索結果での表示と精度が下がる可能性があるとしています。
BingとBrave Searchには「AI専用」の名前がない
BingとBrave Searchには、robots.txtで学習用だけを止めるAI専用の名前がありません。Bingのクローラーはbingbotで、Brave Searchのクローラーは独自の名前を出さないため、robots.txtで止めると検索ごと止まります。
Bingでは、ページのmetaタグ(name="robots"のmetaタグ)に次の値を書いて、ChatやCopilotでの使われ方を調整します。nameを「bingbot」にすると、Bingだけに適用できます。
| content の値 | ChatやCopilotでの扱い | 学習での扱い |
|---|---|---|
| noarchive | リンクしない | Microsoftの生成AIの基盤モデルの学習に使わない |
| nocache | URL・スニペット・タイトルだけを表示 | URL・タイトル・スニペットだけを使う |
両方を書いた場合は、nocacheとして扱われます。Bingの検索結果から外したい場合は、noindexを使います。
Brave Searchの公式ヘルプは、Googlebotがクロールできないページは自社のクローラーもクロールしないと説明しています。robots.txtでGooglebotを止めると、Brave Searchにも載りにくくなります。AnthropicはBrave Searchを検索の委託先の1社に挙げているため、Googlebotの設定はClaudeの検索にも関わる可能性があります。
書いた後の確認:反映時間・IPアドレス・セキュリティ設定
robots.txtを書き換えたら、反映までの時間を見込み、サーバー側で止めていないかを確かめます。OpenAIは検索への反映に約24時間、Perplexityは最大24時間かかると案内しています。
| 会社 | 公開しているIPアドレスの一覧 | 反映の目安(公式) |
|---|---|---|
| OpenAI | openai.com/searchbot.json、openai.com/gptbot.json、openai.com/chatgpt-user.json | 検索は約24時間 |
| Anthropic | claude.com/crawling/bots.json | 記載なし |
| Perplexity | perplexity.com/perplexitybot.json、perplexity.com/perplexity-user.json | 最大24時間 |
確認の手順は3つです。
- ブラウザで自社の「/robots.txt」を開き、書いた内容がそのまま表示されるかを見る
- サーバーのアクセスログで、GPTBotやOAI-SearchBotなどの名前でアクセスが来ているかを見る
- CDNやセキュリティサービスの「ボット対策」で、検索用のクローラーを遮断していないかを見る
3は見落としやすい項目です。OpenAIは、ChatGPTの検索の掲載対象になる条件として、ホストやCDNが公開IPアドレスからのアクセスを許可していることを挙げています。Anthropicは、IPアドレスで遮断するとrobots.txtを読めなくなり、拒否の指定が正しく働かない場合があるとして、robots.txtでの指定を勧めています。
Search Consoleのrobots.txtレポートで分かるのは、Googleが取得したrobots.txtとエラーです。他社のクローラーの動きは、アクセスログで見ます。
関連する解説:テクニカルSEOの点検|検索に表示されないときの確認手順
よくある質問
参考資料
公式資料の事実と、本文の実務上の提案・架空の例を分けて記載しています。確認日:2026年10月23日(Googleの利用者の操作による取得は2026年10月25日に確認)。
- OpenAI:Overview of OpenAI Crawlers
- OpenAI:ChatGPTでウェブを検索する
- Anthropic:Anthropicはウェブからデータをクロールしていますか?
- Google:Google の一般的なクローラー(Google-Extended)
- Google:Google ユーザー トリガー フェッチャーの一覧
- Google:Google による robots.txt の指定の解釈
- Google:robots.txt の概要とガイド
- Google:AI機能とウェブサイト
- IETF:RFC 9309 Robots Exclusion Protocol
- Perplexity:Perplexity Crawlers
- Apple:Applebotについて
- Bing Webmaster Tools:Robots meta tags and attributes that Bing supports
- Brave Search:Brave Search Crawler
自社の課題を整理する
現在の状況と目標を伺い、優先して見直す情報や施策を整理します。集客・Web制作・業務改善の支援について、curveへご相談ください。
支援について相談する →実施や運用の支援をお探しの方へ
記事で紹介した取り組みを自社で進めたい場合は、目標・現状・運用体制に合わせて支援内容をご提案します。




