「AIに自社サイトの文章を学習されたくない。でも、ChatGPTやPerplexityの回答には紹介されたい」。
こう考えるWeb担当者や経営者の方は少なくありません。
この2つは両立できます。分かれ目は、AI各社がクローラーの名前を「学習用」「検索用」「利用者の操作用」に分けて公開していることです。
robots.txt(サイトの最上位に置き、クローラーに「どこを読んでよいか」を伝えるテキストファイル)の中で、名前ごとに許可と拒否を書き分けます。
この記事では、主要なAIクローラーの役割、目的別にそのまま使える設定例、反映までの時間、Google・Appleの特別な扱い、設定後の確認方法を順に説明します。
各社の公式ページは2026年10月18日に開いて確かめました。名前や仕様は変わるので、記載のない項目は公式ページで最新の説明をご覧ください。
先に結論:用途で分けて、名前ごとに書く
要点を先に表にします。
| 論点 | 公式ページで確認できたこと | 実務でやること |
|---|---|---|
| 用途の分け方 | OpenAI、Anthropic、Perplexity、Amazon、Metaは、学習・検索・利用者の操作で別の名前を使っている | 用途ごとに許可と拒否を決める |
| 学習だけ避けたい | OpenAIは、GPTBotを拒否すると学習に使わないでほしいという意思表示になり、OAI-SearchBotとは独立した設定だと説明している | 学習用だけを拒否し、検索用は許可する |
| 検索用を止めたとき | OpenAIは、OAI-SearchBotを拒否したサイトはChatGPTの検索回答に表示されないと説明している | AI検索に出たいなら許可する |
| 利用者の操作 | OpenAI、Perplexity、Meta、Amazonは、robots.txtが適用されない場合や無視する場合があると説明している | robots.txtだけで止まる前提にしない |
| Googleの扱い | Google-Extendedは検索の掲載にも順位にも影響しない。AI OverviewsとAI Modeは、Search Consoleの設定で制御する | 目的に合わせて道具を使い分ける |
| 反映までの時間 | 時間を書いている公式ページは、おおむね最大24時間としている | 変更後は1日待ってから確認する |
AIクローラーは3種類に分かれる
クローラー(ボット)とは、Webページを自動で読み取りに来るプログラムです。
robots.txtでは、クローラーを「ユーザーエージェント」と呼ばれる名乗りで指定します。
まず、役割の違いを押さえます。
学習用:AIモデルの訓練データを集める
OpenAIは、GPTBotを、生成AIの基盤モデルの学習に使われうる内容を集めるものと説明しています。
GPTBotを拒否すると、サイトの内容を学習に使わないでほしいという意思表示になります。
Anthropicは、ClaudeBotへのアクセスを制限した場合の意味を、次のように書いています。
サイトがClaudeBotへのアクセスを制限すると、そのサイトの将来のコンテンツをAIモデルトレーニングデータセットから除外すべきであることを示します。
学習用を拒否しても、検索用の設定は別に決められます。
検索用:AI検索の索引を作る
検索用は、ChatGPT searchやPerplexityのようなAI検索で、回答の根拠や参照リンクに使うページを集めます。
OpenAIは、OAI-SearchBotを拒否したサイトはChatGPTの検索回答に表示されないと説明しています。
同じ説明の中で、ナビゲーション用のリンクとしては表示されることがあるとも書かれています。
AI検索で紹介されたいサイトは、検索用を許可するのが基本です。
利用者の操作による取得:頼まれたページをその場で読む
利用者が「このURLを要約して」と頼んだときなどに、その場でページを取りに来るものです。
OpenAIは、ChatGPT-Userについて、利用者が起点の動作なのでrobots.txtのルールが適用されない場合があると説明しています。
Perplexityは、Perplexity-Userが原則としてrobots.txtのルールを無視すると説明しています。
Metaも、Meta-ExternalFetcherについて「このクローラーはrobots.txtのルールを無視する可能性があります」と書いています。
一方でAnthropicは、Claude-Userも拒否できると説明しています。
広告やリンク共有のために来るもの
学習・検索・利用者の操作のどれにも当たらないクローラーもあります。
OpenAIのOAI-AdsBotは、ChatGPTの広告として提出されたページの安全性を確かめるもので、集めたデータは基盤モデルの学習に使わないと説明されています。
MetaのMeta-ExternalAdsは広告や事業向けの製品改善、FacebookExternalHitは共有されたリンクの表示用です。
FacebookExternalHitは、安全性や整合性の確認のときにrobots.txtを迂回する場合があるとMetaが説明しています。
主要AIクローラーの一覧(2026年10月時点)
公式ページの説明を、用途ごとに3つの表へまとめました。
トークンは、robots.txtのUser-agent行に書く名前です。
学習用のクローラーと制御トークン
| 会社 | トークン | 公式ページの説明 | 補足 |
|---|---|---|---|
| OpenAI | GPTBot | 生成AIの基盤モデルの学習に使われうる内容を集める | OAI-SearchBotとは独立した設定 |
| Anthropic | ClaudeBot | 学習に寄与しうるWeb上の内容を集める | 制限すると、今後の素材を学習データから除外する合図になる |
| Google-Extended | 次世代Geminiモデルの学習と、Geminiアプリなどでのグラウンディングに使ってよいかを管理するトークン | 専用のユーザーエージェント文字列は無く、検索の掲載にも順位にも影響しない | |
| Apple | Applebot-Extended | Appleの基盤モデルの学習に内容を使わせない指定 | 自分ではクロールせず、Applebotが集めたデータの使い道だけを決める |
| Meta | Meta-ExternalAgent | 基盤AIモデルの学習や製品改善のために、Webをクロールして内容を直接インデックス化する | 学習用と索引用の名前が分かれていない |
| Amazon | Amazonbot | 製品とサービスの改善に使い、AIモデルの学習に使うことがある | crawl-delayは使えない |
| Common Crawl | CCBot | 非営利の財団が、誰でも使えるWebクロールデータを作るためのクローラー | Crawl-delayに対応し、オプトアウトの登録簿もある |
グラウンディングとは、回答を作るときに外部の情報を参照して、事実確認や関連性を高めることです。
検索用のクローラー
| 会社 | トークン | 公式ページの説明 | 補足 |
|---|---|---|---|
| OpenAI | OAI-SearchBot | ChatGPTの検索機能で、サイトを検索結果に表示するためのもの | 拒否すると検索回答に表示されない。ナビゲーション用のリンクとしては出ることがある |
| Anthropic | Claude-SearchBot | 検索結果の質を上げるために、Webの内容を分析する | 拒否すると、Claudeの検索での見え方が減る可能性がある |
| Perplexity | PerplexityBot | Perplexityの検索結果にサイトを表示し、リンクするためのもの | AIの基盤モデルの学習には使わないと明記されている |
| Meta | Meta-WebIndexer | Meta AIの検索結果の質を上げるために、Webの内容を分析する | 許可すると、Meta AIの回答で内容の引用やリンクが可能になる |
| Amazon | Amzn-SearchBot | Alexaなど、Amazonの製品で検索体験を良くするためのもの | 生成AIの学習には使わない。robots.txtに書かれていなくても、他の検索ボットを許可していればその指示に従う |
| Apple | Applebot | Spotlight、Siri、Safariなどの検索を支えるクローラー | 集めたデータは、Appleの基盤モデルの学習にも使われる場合がある |
| Googlebot | Google検索のクローラー。AI OverviewsやAI Modeもこの検索の一部 | 止めるとGoogle検索全体に影響する | |
| Microsoft | Bingbot | Bingの標準クローラー | 公式ページに、AI専用のトークンは載っていない |
利用者の操作で動くフェッチャー
| 会社 | トークン | 公式ページの説明 | robots.txtの扱い |
|---|---|---|---|
| OpenAI | ChatGPT-User | ChatGPTやカスタムGPTで、利用者の質問に答えるためにページを開く | 利用者が起点のため、ルールが適用されない場合がある |
| Anthropic | Claude-User | Claudeの利用者の質問に答えるためにページを開く | 拒否できる。拒否すると利用者の依頼による検索での見え方が減る可能性がある |
| Perplexity | Perplexity-User | Perplexity内の利用者の操作で、ページを開く | 原則として無視する。学習には使わない |
| Meta | Meta-ExternalFetcher | 利用者のリクエストに応じて、個々のリンクを取得する | 無視する可能性がある |
| Amazon | Amzn-User | Alexaへの質問など、利用者の操作で最新情報を取得する | すべての指示に従うとは限らない |
各社の説明は、名前の付け方も粒度もそろっていません。
同じ「検索用」でも、AIの回答に出るためのものと、通常の検索結果を支えるものが混ざっています。
robots.txtの基本ルール
robots.txtの標準は、2022年にRFC 9309としてまとまりました。
RFCは、インターネットの技術仕様を定める文書です。
置き場所はホストごとの最上位
robots.txtは、https://example.com/robots.txt のようにサイトの最上位に置きます。
Googleは、ファイルのルールが置かれたホスト、プロトコル、ポート番号にだけ適用されると説明しています。
wwwありとなし、サブドメイン、別のポートは、それぞれ別のホストとして扱われます。
Anthropicも、オプトアウトしたいサブドメインごとに設定するよう案内しています。
書き方はグループ単位
User-agent行でクローラーを指定し、その下にDisallow(禁止)やAllow(許可)を書きます。
この塊がグループです。
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent行を続けて書くと、複数のクローラーに同じ指定をまとめて与えられます。
自分の名前のグループだけが読まれる
RFC 9309では、クローラーは自分の名前に一致するグループに従います。
一致するグループがなければ、User-agent: * のグループに従います。
Googleも、特定のグループと * のグループは組み合わされないと説明しています。
つまり、GPTBot専用のグループを作ると、GPTBotは * のグループを読まなくなります。
長く一致するルールが勝つ
同じグループにAllowとDisallowが両方当てはまるときは、より長く一致するルールが使われます。
長さが同じなら、Allowが使われます。
パスの大文字小文字は区別されますが、User-agentの名前の照合では区別されません。
ワイルドカードは * と $
パスには、* (任意の文字列)と $ (URLの末尾)が使えます。
RFC 9309は、クローラーがこの2つに対応することを求めています。
ただし、各社のAIクローラーが同じように解釈するかは、公式ページに書かれていません。
重要なルールは、ワイルドカードに頼らず、ディレクトリ単位で書くと確実です。
ファイルの大きさにも上限がある
Googleは、robots.txtに500 KiBの上限を設け、それを超えた部分は無視すると説明しています。
RFC 9309も、クローラーの解析上限を少なくとも500 KiBとしています。
AI用のルールを大量に足すときは、同じ指定をまとめて短く保ちます。
守るかどうかは相手しだいの、公開されたお願い
RFC 9309は、このルールはアクセス認可の仕組みではないと明記しています。
守るかどうかは、クローラーの運営者しだいです。
さらに、robots.txtに書いたパスは誰でも読めるため、隠したいディレクトリの名前が目印になることもあります。
見られては困る情報は、ログイン認証で守ります。
目的別の設定例
example.comやディレクトリ名は、自社サイトに合わせて読み替えてください。
すでにrobots.txtがある場合は、置き換えずに既存のルールと矛盾しないよう追記します。
どの例も、RFC 9309の「長く一致するルールが勝つ」規則に沿って動作を確かめています。
パターン1:AIクローラーをすべて許可する
学習にも検索にも使ってもらってよい場合です。
何も書かなければ許可と同じ扱いですが、明示するなら次のように書きます。
User-agent: *
Allow: /
Sitemap: https://example.com/sitemap.xml
Sitemap行は、サイトマップ(ページの一覧ファイル)の場所を伝える、独立した行です。
Common Crawlは、robots.txtに書かれたサイトマップを使ってクロールすると説明しています。
パターン2:学習用だけ拒否して、AI検索には出る
多くの企業サイトにとって、出発点になる設定です。
学習用の名前だけを拒否し、検索用と利用者の操作用は許可します。
# 学習用のクローラーと制御トークンを拒否
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: Meta-ExternalAgent
User-agent: Amazonbot
User-agent: CCBot
Disallow: /
# それ以外は許可
User-agent: *
Allow: /
Sitemap: https://example.com/sitemap.xml
OAI-SearchBot、Claude-SearchBot、PerplexityBotは書いていないため、* のグループに従って許可されます。
Meta-ExternalAgentは学習用と索引用の両方に使われます。
Meta AIでの露出を重視するなら、この行は外して判断してください。
Applebotは許可したまま、Applebot-Extendedだけを拒否している点にも注目してください。
Appleは、Applebot-Extendedを拒否したページも検索結果に含まれうると説明しています。
パターン3:AIクローラーをできるだけ拒否する
社内の方針で、AIに一切使われたくない場合の例です。
検索用と利用者の操作用も含めて拒否します。
User-agent: GPTBot
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: ClaudeBot
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Perplexity-User
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: Meta-ExternalAgent
User-agent: Meta-WebIndexer
User-agent: Meta-ExternalFetcher
User-agent: Amazonbot
User-agent: Amzn-SearchBot
User-agent: Amzn-User
User-agent: CCBot
Disallow: /
User-agent: *
Allow: /
この設定には、知っておきたい2つの前提があります。
1つ目は、ChatGPT searchやClaude、Perplexity、Meta AI、Alexaの回答に表示されにくくなることです。
LLMOを進めたいサイトとは逆の方向になります。
2つ目は、ChatGPT-User、Perplexity-User、Meta-ExternalFetcher、Amzn-Userには、書いても止まらない可能性があることです。
確実に止めたいときは、公式が公開しているIPアドレス範囲をもとに、サーバーやWAF(不正なアクセスを防ぐ仕組み)で遮断する方法もあります。
また、この設定でも、Google検索のAI OverviewsやAI Modeは止まりません。
Googlebotを拒否していないためです。
パターン4:特定のディレクトリだけAIに見せない
会員向けの資料や、ダウンロード資料だけを学習から外したい場合の例です。
User-agent: GPTBot
User-agent: ClaudeBot
User-agent: CCBot
Disallow: /members/
Disallow: /downloads/
Disallow: /admin/
User-agent: *
Disallow: /admin/
Allow: /
GPTBot、ClaudeBot、CCBotは、専用のグループだけを読みます。
そのため、* のグループに書いた /admin/ の拒否は、この3つには効きません。
/admin/ も止めたいなら、専用のグループにも書き足します。
パターン5:一部だけ例外的に許可する
学習用はサイト全体で拒否しつつ、プレスリリースのページだけは使われてもよい場合です。
User-agent: GPTBot
User-agent: ClaudeBot
Disallow: /
Allow: /news/
/news/ は / より長く一致するため、/news/ 以下は許可されます。
末尾のスラッシュがない /news というURLは、/news/ に一致しません。
そのため、拒否のままです。
Googleの公式ページにも、Google-Extendedについて、/archive/ を拒否しつつ個別のページだけ許可する同じ形の例があります。
パターン6:アクセスの頻度を下げる(Crawl-delay)
サーバーへの負荷が気になるときは、Crawl-delay(アクセス間隔の秒数)を指定する方法があります。
RFC 9309に含まれない独自の拡張ですが、AnthropicとCommon Crawlは対応していると公式に書いています。
User-agent: ClaudeBot
Crawl-delay: 1
User-agent: CCBot
Crawl-delay: 2
対応していないクローラーには効きません。
Googleは、robots.txtの仕様の説明で、crawl-delayなどのフィールドをサポートしないとしています。
AppleのApplebotとAmazonの各ユーザーエージェントも、crawl-delayに対応しないと説明しています。
BingはBing Webmaster Toolsの「クロール制御」で、時間帯ごとのクロール速度を調整できると説明しています。
パターン7:PDFだけを学習から外す
ワイルドカードを使うと、ファイルの種類で指定できます。
User-agent: GPTBot
User-agent: ClaudeBot
Disallow: /*.pdf$
末尾の $ が付くため、.pdf で終わるURLだけに一致します。
?x=1 のようなパラメータ付きのURLは対象外です。
各社のAIクローラーがワイルドカードを同じ解釈で扱うかは、公式ページで確認できませんでした。
本当に守りたい資料は、ログインなどのアクセス制限で守ります。
Google・Appleは専用の仕組みで制御する
OpenAIやAnthropicは、クローラーの名前を分けて、学習と検索を切り離しています。
GoogleとAppleは、検索のクローラーはそのままにして、別の仕組みでデータの使い道を分けています。
Google-Extendedで変わること
Googleは、Google-Extendedを、サイト運営者が次の2点を管理するためのスタンドアロンのトークンと説明しています。
1つ目は、次世代Geminiモデルの学習に内容を使うかどうかです。
2つ目は、GeminiアプリやVertex AIでのグラウンディングに使うかどうかです。
検索への影響について、Googleは次のように書いています。
Google-Extended が Google 検索でのサイトの登録に影響したり、Google 検索でのランキング シグナルとして使用されたりすることはありません。
拒否しても、通常の検索結果から消えたり順位が下がったりはしない、というのがGoogleの説明です。
Google-Extendedには専用のユーザーエージェント文字列がありません。
そのため、アクセスログには出てきません。
Geminiアプリが自社サイトをどう参照するかは、Geminiアプリは自社サイトをどう参照し、引用するのかで詳しく扱っています。
AI OverviewsとAI Modeは、Google-Extendedでは止まらない
GoogleのAI機能の説明では、AI OverviewsとAI ModeはGoogle検索に組み込まれた機能です。
そのため、Googleのクロールを制御するrobots.txtの対象は、Googlebotです。
表示内容の制限には、nosnippet、data-nosnippet、max-snippet、noindexを使います。
Google-Extendedは、Googleの「その他のシステム」での学習やグラウンディングを制限するものです。
つまり、Google-Extendedを拒否しても、AI OverviewsやAI Modeへの表示は止まりません。
Search Consoleの「Search generative AI」で制御する
2026年8月31日の時点で、Search Consoleに「Search generative AI」という設定が全世界のサイトに展開されました。
設定画面は、Search Consoleの「設定」の中にあります。
AI Overviews、AI Mode、Discoverの生成AI機能を対象に、サイトを含めるか除外するかを選べます。
既定は「含める」です。
| 選択肢 | Googleの説明 | 注意点 |
|---|---|---|
| 含める | リンクや内容がAI機能に表示され、引用の根拠にもなり、インプレッションと流入を受け取れる | すべてのプロパティの既定 |
| 除外する | リンクや内容がAI機能に表示されず、これらの機能からのインプレッションも流入もなくなる | 他のサイトの似た内容は引き続き表示される |
| 親から継承する | 親プロパティの設定に従う | 親プロパティがある場合の既定 |
この設定は、AIの学習には影響しません。
Googleは、モデルの学習を制限するにはGoogle-Extended、検索結果からの掲載を完全に止めるにはnoindexを使うよう案内しています。
変更の反映は、設定後1〜2日で除外が始まり、キャッシュの関係で完全な反映までは数日かかることがあるとされています。
2026年7月10日更新の「生成AI機能向けのサイト最適化ガイド」は、生成AI機能に表示される条件を2つ挙げています。
ページがインデックスされ、スニペット付きで表示できることと、この設定でサイトが含められていることです。
一方、2025年12月10日更新の「AI機能とウェブサイト」のページには、この設定の記述がありません。
2つのページの更新時期が違うので、設定を確認するときは新しいほうの説明も参照してください。
AI機能の仕組みは、【Google検索セントラル解説】AI機能とウェブサイトの記事で整理しています。
nosnippetの副作用に注意する
Googleのrobotsメタタグの仕様では、nosnippetは通常の検索結果の説明文に加え、AI OverviewsとAI Modeにも適用されます。
そのページが、AI OverviewsとAI Modeの直接の入力としても使われなくなると説明されています。
同時に、通常の検索結果の説明文も出なくなります。
noindexを付ければ検索結果から外れ、Googlebotを拒否すればGoogle検索全体に影響します。
ページ単位で慎重に判断してください。
Appleの4つの指定
Appleのページで確認できた指定は、次の4つです。
- Applebot:Spotlight、Siri、Safariなどの検索を支える。robots.txtで許可すると、検索結果に表示される
- Applebot-Extended:Appleの生成AIの基盤モデルの学習に内容を使わせない指定
- nosnippetメタタグ:SiriやSearchの回答で、内容を追加の文脈として使わせない指定
- isAccessibleForFree: false:ペイウォールのページを、AIの出力を作る追加の文脈に使わせない指定
Appleは、Applebot-Extendedについて「Applebot-ExtendedはWebページをクロールしません」と説明しています。
Applebotが集めたデータの使い道だけを決めるトークンです。
また、robots.txtでApplebotに触れていなくてGooglebotに触れている場合、ApplebotはGooglebotの指示に従うと説明されています。
Googlebotを拒否しているサイトは、Applebotにも同じ拒否が及ぶ可能性があります。
反映までにかかる時間
クローラーは、robots.txtを一定時間保存(キャッシュ)して使い回します。
書き換えても、すぐには反映されません。
| 対象 | 公式ページの説明 |
|---|---|
| RFC 9309 | 到達できない場合を除き、キャッシュを24時間を超えて使うべきではない |
| OpenAI | 検索の仕組みに反映されるまで、robots.txtの更新から約24時間かかる場合がある |
| Perplexity | 変更が反映されるまで最大24時間かかる場合がある |
| 通常は最大24時間キャッシュする。取得できない場合などは、それより長くなることがある | |
| Meta | 「robots.txtを変更して有効になるまで最大24時間かかります」 |
| Amazon | 設定の反映に約24時間かかる場合がある。直近30日以内のキャッシュを使うこともある |
| Anthropic | 時間の記載は見当たらない |
| Apple・Common Crawl | 時間の記載は見当たらない。Common Crawlは、更新を定期的に確認すると説明している |
目安として、少なくとも1日は待ってから確認します。
Googleについては、Search Consoleのrobots.txtレポートで再クロールを依頼できます。
Googleは、再クロールの依頼について、重要なURLの制限を解いたときや、取得エラーを直したときのための機能と説明しています。
robots.txtが効くのは、これから先の収集です。
Anthropicも、制限が将来のコンテンツを対象にした意思表示になると説明しています。
robots.txtが取得できないとき
robots.txtにアクセスできないとき、クローラーがどう動くかは、規格と各社で少し違います。
| 状況 | RFC 9309 | Googleの説明 |
|---|---|---|
| 4xx(ファイルがない、など) | クローラーはどのリソースにもアクセスしてよい | 429を除く4xxは、robots.txtが存在しないものとして扱い、クロールの制限はないとみなす |
| 5xx(サーバーエラー) | 全面禁止とみなす | 最初の12時間はクロールを止め、次の30日間は最後に取得できた版を使う |
| 30日を超えて続く | 長く未定義なら、4xxと同じに扱ってよい(例として30日) | サイトが通常アクセスできれば、robots.txtがないものとして動く |
| リダイレクト | 少なくとも5回まで追う | 少なくとも5回まで追い、それを超えると404として扱う |
Amazonは、robots.txtを取得できないときは存在しないものとして動くと説明しています。
つまり、サーバーの不具合でrobots.txtが5xxを返すと、規格どおりに動くクローラーはサイト全体の読み取りを止めます。
意図しない拒否を避けるため、robots.txtは安定して200を返す状態にしておきます。
CDNやWAFがrobots.txtだけを遮断していないかも確認してください。
robots.txtだけでは止まらないもの
robots.txtは、守るクローラーにだけ効く仕組みです。
ここでは、補う方法を整理します。
利用者の操作用は、IPアドレスで補う
OpenAIは、GPTBot、OAI-SearchBot、ChatGPT-Userのそれぞれで、公開しているIPアドレス範囲のファイルを案内しています。
PerplexityもPerplexityBotとPerplexity-Userに、Common CrawlもCCBotに、同じようなファイルを用意しています。
これらをもとに、サーバーやWAFで遮断すれば、robots.txtを読まないアクセスも止められます。
ただし、AnthropicはIPアドレスのブロックのような代替方法について、次のように書いています。
robots.txtファイルを読み取る能力を妨げるため、正しく機能しない可能性があり、オプトアウトを永続的に保証しない可能性があります。
Anthropicのボットについては、robots.txtでの拒否が確実な方法です。
IP遮断は、robots.txtを読まないものだけに使う補助の手段と考えます。
検索用を、WAFで誤って止めない
Perplexityは、WAFを使っている場合、PerplexityBotとPerplexity-Userを明示的に許可する必要があるかもしれないと説明しています。
OpenAIも、OAI-SearchBotを許可し、公開しているIPアドレス範囲からのリクエストも許可するよう勧めています。
robots.txtで許可していても、CDNやWAFの初期設定で止まっている例があります。
確認の手順は、CloudflareのAIクローラー設定、検索ボットまで止めていないかの確認手順にまとめています。
なりすましを見分ける
ユーザーエージェントは、誰でも名乗れます。
Googleも、HTTPのユーザーエージェント文字列は偽装されうると注意しています。
Common Crawlは、CCBotを名乗る偽のクローラーがあると警告し、逆引きDNSでの確認を案内しています。
Bingは、IPアドレスの確認用に「Verify Bingbot」ツールを用意しています。
見分け方の実際の手順は、AIクローラーのなりすましを見分ける方法で説明しています。
負荷が高いときは、止めずに下げる
AIクローラーのアクセスが多すぎる場合は、拒否する前にCrawl-delayやWAFのレート制限を検討します。
拒否すると、AI検索への表示も失われます。
具体的な設定例は、AIクローラーでサーバーが重いときの対策にあります。
llms.txtとは役割が違う
llms.txtは、AI向けにサイトの概要を伝えるために置かれることのあるファイルです。
Googleは、Google検索自体がllms.txtを使わないと説明し、作っても検索の見え方に良くも悪くも影響しないとしています。
robots.txtは、Google自身が読んで従う仕組みです。
この2つは、役割が違います。
llms.txtについては、llms.txtとは?作り方と設置手順、作るべきかの判断基準で整理しています。
よくある間違い
専用グループを作ったら * のルールが効かなくなった
パターン4で説明したとおり、クローラーは自分の名前のグループがあれば、そちらだけを読みます。
次のような書き方では、GPTBotに /admin/ の拒否が届きません。
User-agent: *
Disallow: /admin/
User-agent: GPTBot
Disallow: /members/
GPTBotのグループにも、/admin/ を書き足します。
ユーザーエージェント名のつづりを間違えた
GPT-BotやPerplexity Botのような書き間違いは、別のクローラーとして扱われます。
大文字小文字は区別されませんが、ハイフンや区切りは公式の表記どおりに書きます。
検索用まで止めて、AI検索に出なくなった
学習を避けたいだけなら、パターン2のように学習用の名前だけを拒否します。
OAI-SearchBotを拒否すると、ChatGPTの検索回答には表示されなくなります。
Google-Extendedで、AI Overviewsを止めたつもりになった
前の章のとおり、Google-ExtendedはAI OverviewsやAI Modeを止めません。
止めたい場合は、Search Consoleの設定とnosnippetなどの指定を使います。
robots.txtの場所やホストが違う
下の階層に置いた、wwwありとなしの片方にしかない、サブドメインに置き忘れた、という間違いです。
Googleの説明のとおり、ファイルが有効なのは、置かれたホストとプロトコルとポートだけです。
noindexを付けたページを、robots.txtでも拒否している
noindexは、ページを読んで初めて伝わる指示です。
robots.txtでクロールを禁止すると、noindexが読まれません。
検索結果から外したいページは、robots.txtで止めずにnoindexを使います。
GoogleのSearch Consoleヘルプも、robots.txtはクロールを止めるためのもので、検索結果に出したくない場合はnoindexを使うと説明しています。
robots.txtがエラーを返している
5xxを返し続けると、規格どおりのクローラーはサイト全体を読まなくなります。
ブラウザで開くだけでなく、ステータスコードが200であることまで確認します。
設定後の確認方法
手順1:robots.txtが正しく公開されているか見る
ブラウザで自社ドメインの /robots.txt を開き、書いた内容が表示されるか確認します。
ステータスコードは、次のコマンドでも確認できます。
curl -I https://example.com/robots.txt
先頭の行に200が出ていれば、取得できています。
CDNを使っている場合は、CDN側のキャッシュが古いままのこともあります。
手順2:Search Consoleのrobots.txtレポートを見る
Search Consoleのrobots.txtレポートでは、Googleが見つけたrobots.txtの内容、最後にクロールした日時、警告やエラーを確認できます。
このレポートは、ドメインレベルのプロパティで使えます。
パスを含まないURLプレフィックスのプロパティでも使えます。
Googleの認識を確かめるときは、このレポートを使います。
手順3:アクセスログで実際の動きを見る
アクセスログで、GPTBot、ClaudeBot、PerplexityBotなどの名前を探します。
拒否した場所へのアクセスが、反映時間を過ぎても続いていないかを見ます。
OpenAIは、robots.txtを取りに来るリクエストのユーザーエージェントに「robots.txt;」という目印を付ける場合があると説明しています。
パスがログに出ない環境でも、目印で見分けられます。
Google-ExtendedとApplebot-Extendedは、専用の名前でクロールしないため、ログには出てきません。
ログの集計方法は、AIクローラーの訪問をサーバーログで確認する方法で説明しています。
手順4:本物かどうかを確かめる
ログに名前があっても、本物とは限りません。
公式が公開しているIPアドレス範囲や逆引きDNSで、アクセス元を照らし合わせます。
確認の一覧
| 確認項目 | 方法 | 見るポイント |
|---|---|---|
| robots.txtの公開 | ブラウザとcurl -I | 内容が正しく表示され、ステータスが200 |
| 各ホストの設置 | wwwありなし、サブドメインでそれぞれ開く | すべてのホストに必要な内容がある |
| Googleの認識 | Search Consoleのrobots.txtレポート | 最新の版が取得され、エラーがない |
| クローラーの動き | アクセスログ | 反映時間のあとに、拒否した場所へのアクセスがない |
| AI機能の設定 | Search Consoleの「Search generative AI」 | 意図した「含める」か「除外する」になっている |
| WAFとCDN | 管理画面のログ | 許可したいボットが遮断されていない |
サイトの種類別の選び方
どの設定にするかは、サイトの目的で決まります。
次の表は、筆者の提案です。
| サイトの種類 | 出発点にする設定 | 理由 |
|---|---|---|
| 集客が目的の企業サイト・ブログ | パターン2 | AI検索で紹介される道を残しつつ、学習への利用は拒否できる |
| 会員向けの有料コンテンツがある | パターン4と、ログイン認証 | 公開部分は読んでもらい、会員エリアは認証で守る |
| 認知度を最優先したい | パターン1 | 学習にも検索にも使われ、AIに広く知られる |
| AIに一切使われたくない | パターン3と、IP遮断 | 検索用も止めるのでAI検索には出ない。利用者の操作用はIPで補う |
| アクセスが多すぎて重い | Crawl-delayとWAFのレート制限 | 拒否せずに負荷だけを下げられる |
許可と拒否を社内で決める手順は、AIクローラーは許可か拒否か|社内で決めるための判断基準と意思決定シートにまとめています。
決めた内容と日付は、メモに残しておくと、担当者が替わっても説明できます。
各社はクローラーの名前や役割を追加・変更するので、半年に1回ほどは公式ページを見直します。
よくある質問
中小企業のサイトは、AIクローラーを許可したほうがよいですか。
AI検索で紹介されたいなら、検索用のOAI-SearchBot、Claude-SearchBot、PerplexityBotを許可するのが基本です。
学習用は、自社の方針で決めて構いません。
迷ったら、パターン2から始めると分かりやすいでしょう。
GPTBotを拒否すると、ChatGPTの検索結果に出なくなりますか。
OpenAIは、GPTBotとOAI-SearchBotの設定は互いに独立していると説明しています。
GPTBotを拒否してOAI-SearchBotを許可していれば、ChatGPTの検索回答に表示される可能性は残ります。
両方を許可している場合、OpenAIは1回のクロールの結果を両方の目的に使うことがあるとしています。
Google-Extendedを拒否すると、Googleの検索順位は下がりますか。
Googleは、Google-Extendedが検索への掲載にも順位づけにも使われないと明記しています。
なお、AI OverviewsやAI Modeへの表示は、Google-Extendedでは止まりません。
ChatGPT-Userも、robots.txtで止められますか。
OpenAIは、利用者が起点の動作なので、robots.txtのルールが適用されない場合があると説明しています。
書いても止まらない可能性があるため、確実に止めたいときはIPアドレスでの遮断を併用します。
ただし、止めると利用者がChatGPT経由で自社ページを開けなくなります。
Applebotを拒否しなくても、Appleの学習は止められますか。
止められます。
Appleは、Applebot-Extendedを拒否すれば、内容をAppleの基盤モデルの学習に使わせない指定になると説明しています。
Applebotは許可したままにすると、Spotlight、Siri、Safariなどの検索結果への表示を保てます。
サブドメインにも、robots.txtが必要ですか。
必要です。
Googleの説明のとおり、robots.txtは置かれたホストにだけ適用されます。
blog.example.comに設定を足すなら、blog.example.com/robots.txtに書きます。
まとめ
AIクローラーの制御で最初にやることは、会社名で区切らずに、用途ごとに許可と拒否を決めることです。
- 学習だけ避けたいなら、学習用の名前だけを拒否し、検索用は許可する
- 学習用の名前は、GPTBot、ClaudeBot、Google-Extended、Applebot-Extendedなど
- ほかに、Meta-ExternalAgent、Amazonbot、CCBotも学習用の名前
- 利用者の操作用は、robots.txtで止まらない場合があるため、必要ならIPアドレスでの遮断も検討する
- Google-Extendedは検索の掲載にも順位にも影響しないが、AI OverviewsやAI Modeは止まらない。止めたい場合は、Search Consoleの設定とnosnippetを使う
- 反映には、公式に書かれているものでおおむね最大24時間かかる。専用グループを作ると * のルールが効かなくなる点に注意する
- 設定後は、ブラウザ、Search Consoleのレポート、アクセスログの順に確認する
robots.txtは、守るクローラーに向けた公開のお願いです。
本当に守りたい情報は、ログイン認証で守ります。
今日できる点検
| 状態 | 今日やること |
|---|---|
| AIクローラーへの方針を決めていない | 学習・検索・利用者の操作のうち、どれを許可するかを1行で書き出す |
| robots.txtの中身を見たことがない | 自社サイトの /robots.txt を開き、AI関連の記述があるか確認する |
| 検索用を止めているかもしれない | OAI-SearchBot、Claude-SearchBot、PerplexityBotがDisallowになっていないか探す |
| WAFやCDNを使っている | 検索用のボットが遮断されていないか、管理画面のログで確かめる |
| Google検索のAI機能を制御したい | Search Consoleの「Search generative AI」の現在の設定を確認する |
この記事に書いたことを、そのまま御社のページに
生成AIに引用されるページを、お話しいただくだけでお作りします。お時間をいただくのは初回15分のヒアリングだけです。まず1ページ、無料でお作りします。
OKが出るまで、何度でも直します。事実が違う、言い回しが硬い、この話は入れないでほしい。どれも遠慮なくおっしゃってください。何度お直ししても、追加の料金はいただきません。
これまでに127社にご利用いただきました。毎月ご依頼いただいている方の6割以上が、月10ページを選ばれています。料金はページに掲載しています。
ページを増やしても問い合わせが来ないなら、原因はページの外にあります。その場合は、下の入口からご相談ください。
自社のマーケティング課題を根本から解決しませんか?
ウェブサイトから要素を引き算し、訪れた人が迷わず次の一歩に進む形へ組み直す。初回60分のオンラインで御社のサイトを一緒に読み、どこから直すべきかをお伝えします。手順をまとめた無料の診断と解説動画もご用意しています。
初回は無料・60分・オンライン完結・その場で契約のお願いはいたしません


