robots.txt
要約
Webサイトのルートに配置し、クローラーのアクセスを制御するテキストファイル。特定のページやディレクトリのクロールを許可・禁止できる。2025年以降はAIクローラーの制御にも使われている
robots.txt とは、Web サイトのルートディレクトリに配置するテキストファイルで、検索エンジンのクローラーや AI クローラーに対してクロールの許可・禁止を指示するためのプロトコルです。example.com/robots.txt のように、ドメインのルートに配置します。Googlebot をはじめとする主要なクローラーは、サイトにアクセスする前にまず robots.txt を確認し、クロールが許可されているかを判断します。
2025 年以降、robots.txt の役割は大きく拡張されています。従来の検索エンジンクローラーの制御に加え、GPTBot や ClaudeBot などの AI クローラーのアクセス管理が新たな重要課題になっています。パブリッシャーの 33.2% が AI クローラーのオプトアウトを予定しているという調査データもあり、robots.txt は AI 時代のコンテンツ保護の最前線に位置しています。
robots.txt の基本構文
robots.txt で使用する主要なディレクティブ(命令)を整理します。
| ディレクティブ | 役割 | 記述例 |
|---|---|---|
| User-agent | 対象のクローラーを指定 | User-agent: Googlebot |
| Disallow | 指定パスのクロールを禁止 | Disallow: /admin/ |
| Allow | Disallow 内の例外を許可 | Allow: /admin/public/ |
| Sitemap | サイトマップの URL を指定 | Sitemap: https://example.com/sitemap.xml |
| Crawl-delay | クロール間隔を指定(Google 非対応) | Crawl-delay: 10 |
User-agent に *(アスタリスク) を指定すると、すべてのクローラーに対するルールになります。特定のクローラーに対する個別ルールは、ワイルドカードルールよりも優先されます。
robots.txt でできること・できないこと
robots.txt の役割を正しく理解することが、設定ミスを防ぐ上で重要です。
| 目的 | robots.txt | noindex メタタグ |
|---|---|---|
| クロールの防止 | できる | できない(クロール自体は必要) |
| インデックスの防止 | できない | できる |
| クロールバジェットの節約 | できる | できない(クロールは発生する) |
| AI クローラーのアクセス制御 | できる | 対応はクローラー依存 |
| PageRank の制御 | できない | できない |
robots.txt で最も誤解されやすいのが「インデックスの防止」です。Disallow でクロールをブロックしても、他サイトからのリンク経由で URL が発見され、タイトルや URL 情報だけでインデックスされるケースがあります。確実にインデックスから除外するには noindex メタタグを使用し、かつ Googlebot がそのページをクロールできる状態にしておく必要があります。
robots.txt による Disallow と noindex メタタグを同時に設定すると、Googlebot がページをクロールできないため noindex を検出できず、結果としてインデックスが残り続けることがあります。インデックスを除外したい場合は、noindex を設定した上で robots.txt ではクロールを許可するのが正しい手順です。
AI クローラーの制御
2026 年現在、Web サイトには検索エンジンのクローラーに加えて、複数の AI クローラーがアクセスしています。robots.txt で AI クローラーごとにアクセスを制御できます。
| AI クローラー | 運営企業 | User-agent 名 | 主な用途 |
|---|---|---|---|
| GPTBot | OpenAI | GPTBot | ChatGPT の学習・検索 |
| ChatGPT-User | OpenAI | ChatGPT-User | ChatGPT のリアルタイム検索 |
| ClaudeBot | Anthropic | ClaudeBot | Claude の学習データ収集 |
| PerplexityBot | Perplexity | PerplexityBot | Perplexity の検索・回答生成 |
| Google-Extended | Google-Extended | Gemini の学習データ収集 |
AI クローラーをブロックすると、そのAI サービスの回答に自社の情報が引用されなくなります。これは AI 検索からのトラフィック獲得機会を失うトレードオフでもあります。AI 検索オプトアウトの判断基準と最新動向で詳しく解説していますが、多くの企業にとっては AI クローラーを許可するオプトイン戦略の方が有利です。
robots.txt でよくある間違い
robots.txt の設定ミスは SEO に直接的な悪影響を与えるため、以下のポイントを必ず確認します。
| 間違い | 問題 | 正しい対応 |
|---|---|---|
| CSS/JS ファイルをブロック | Googlebot がページをレンダリングできずランキング低下 | CSS/JS は必ず Allow |
| 重要なページを Disallow | 検索結果に表示されなくなる | インデックスさせたいページは Allow |
| Disallow でインデックス防止を試みる | インデックスは防止できない | noindex メタタグを使用 |
| サイトマップ URL をブロック | サイトマップが読めない | サイトマップのパスは Allow |
| ワイルドカードの誤用 | 意図しないページまでブロック | Search Console のテスターで検証 |
| ドメインルート以外に配置 | robots.txt が認識されない | 必ずドメインのルートに配置 |
robots.txt を変更する前に、Google Search Console の robots.txt テスターで設定内容を検証します。特にワイルドカード(*)やドル記号($)を使ったパターンマッチングは、意図しない URL まで影響する可能性があるため、テスト必須です。
robots.txt とクロールバジェットの関係
大規模サイトでは、robots.txt による不要 URL のクロールブロックがクロールバジェットの最適化に直結します。検索結果ページ、フィルター付き URL、印刷用ページ、セッション ID 付き URL など、インデックス不要な大量の URL を Disallow することで、Googlebot が重要なページに集中してクロールできるようになります。
ただし、小規模サイト(数千ページ以下)ではクロールバジェットが問題になることはほとんどないため、過度な Disallow 設定は不要です。必要以上にブロックすると、意図しないページまでクロール対象から外れるリスクがあります。
Googlebot のクロールの仕組みを解説した記事では、robots.txt と サイトマップ、構造化データを組み合わせたクロール最適化の実践的な方法を紹介しています。
spotyou での活用
spotyou は AI 記事生成とコンプライアンスチェック、SEO/AEO 最適化を一体で提供するサービスです。spotyou で生成した記事を公開する際、robots.txt で検索エンジンと AI クローラーの両方にクロールを許可しておくことで、Google 検索と AI 検索の双方からトラフィックを獲得できます。
コンプライアンスチェック機能で情報の正確性を担保した上で AI クローラーにコンテンツを公開すれば、AI の回答に正確な自社情報が引用される可能性が高まります。E-E-A-T の信頼性要件を満たすコンテンツは、検索エンジンと AI の双方で優遇される傾向にあります。
まとめ
- robots.txt は Web サイトのルートに配置し、クローラーのクロールを許可・禁止するテキストファイル
- クロールの制御はできるがインデックスの防止はできないため、インデックス除外には noindex を使用する
- 2025 年以降は AI クローラー(GPTBot、ClaudeBot 等)のアクセス制御が新たな重要用途になっている
- CSS/JS ファイルのブロックや重要ページの誤 Disallow は深刻な SEO 問題を引き起こす
- 大規模サイトでは不要 URL のブロックがクロールバジェットの最適化に効果的
よくある質問
robots.txtとは何ですか?
robots.txtとは、Webサイトのルートディレクトリに配置するテキストファイルで、検索エンジンのクローラーやAIクローラーに対して、どのページやディレクトリのクロールを許可・禁止するかを指示するものです。example.com/robots.txtのようにドメインのルートに配置します。
robots.txtでインデックスを防止できますか?
いいえ。robots.txtはクロールを制御するものであり、インデックスの防止は保証されません。他サイトからのリンク経由でURLが発見され、内容不明のままインデックスされるケースがあります。確実にインデックスを防止するにはnoindexメタタグを使用します。
robots.txtの書き方の基本は?
User-agentで対象のクローラーを指定し、DisallowまたはAllowでクロールの許可・禁止を設定します。例えば、User-agent: Googlebot / Disallow: /admin/ と記述すると、Googlebotに対して/admin/配下のクロールを禁止します。
AIクローラーもrobots.txtで制御できますか?
はい。GPTBot、ClaudeBot、PerplexityBotなどの主要なAIクローラーはrobots.txtを遵守します。User-agentにAIクローラーの名前を指定してDisallowを設定することで、AIの学習データ収集をブロックできます。ただし一部のクローラーでは完全な遵守が保証されない場合もあります。
robots.txtの設定ミスで起こる問題は?
CSS/JavaScriptファイルのクロールをブロックするとGooglebotがページをレンダリングできなくなりランキングが低下します。また、重要なページを誤ってDisallowすると検索結果に表示されなくなります。Search Consoleのrobots.txtテスターで設定を検証できます。