Google検索エンジンにおける「クロールバジェット」や「ソフト404」について解説します。多くのサイトで404を使っているのが現状です。この記事では、ステータスコードごとの違いや、SEOにおける最適と考えうる対応方法を整理しました。大規模サイト運営者やSEOを意識しているWebの運用担当者にとって気になる点を紹介します。
クロールバジェットとは
クロールバジェットとは、Googlebotが一定期間内に1つのサイトをクロールするページ数の上限のことです。この上限は、サイトの規模や更新頻度、サーバーの応答速度などによって自動的に調整されます。
クロールバジェットが重要になるのは、主に以下のような大規模サイトです。
- 数万ページ以上のECサイト
- ニュースサイトや情報サイト
- 多数の商品やサービスページを持つコーポレートサイト
小規模サイト(数千ページ以下)の場合、Googleは全ページを効率よくクロールできるため、クロールバジェットを意識する必要はありません。
クロールバジェットを決定する2つの要因
クロール容量制限(Crawl Capacity Limit):サイトのサーバーに負荷をかけすぎないよう、Googlebotが同時に使用できる並列接続数とフェッチ間の待機時間を制限する仕組み
クロール需要(Crawl Demand):URLの人気度(被リンク数・検索クエリ数)とコンテンツの更新頻度に基づいて、Googleがそのページをクロールする価値を判断する指標
ステータスコードとクロール効率
Googlebotは、HTTPステータスコードごとに挙動を変えます。以下は代表的なステータスコードとクロールバジェット消費の関係です。
| ステータスコード | クロールバジェットへの影響 | 補足 |
|---|---|---|
| 200(OK) | 消費する | 通常ページ扱い。ソフト404もここに含まれる |
| 301 / 302 | 消費する | リダイレクト先も取得するため無駄が多いと非効率 |
| 404 / 410 | ほぼ消費しない | 存在しないURLと判断され、再クロール頻度が下がる |
| 304 | 軽微に消費 | 更新なしを通知する効率的なコード |
| 5xx(サーバーエラー) | 消費する + 悪影響 | 頻発すると全体クロールが減速 |
| まとめ | HTMLは基本的に消費対象 | robots.txtでブロックされたURLは消費しない |
ソフト404と通常404の違い
ソフト404とは、HTTPレスポンスとして200を返しているのに、実際には「ページが存在しません」と表示している状態を指します。
通常の404/410
- 検索エンジンに「存在しない」と正しく伝わる
- クロールバジェットを無駄にしない
- インデックス削除もスムーズ
ソフト404
- ステータス200のためクロールバジェットを消費
- 無駄なインデックス残存リスク
- UX上は案内ができるがSEO上は非効率
ソフト404が発生する典型的なケース
- 商品削除後、「商品が見つかりません」ページを200で返すECサイト
- 記事削除後、「記事は削除されました」ページを200で返すブログ
- ログインが必要なページで、未ログインユーザーに案内ページを200で返すサイト
推奨される対処法
HTTPステータスコードは404または410を返しつつ、ページ内容ではユーザーに分かりやすい案内を表示することで、SEO効果を保ちながらユーザビリティも向上します。これにより、SEO効果を保ちながらユーザビリティも向上させることができます。
404で覚えておくポイント
- robots.txtでブロックされたURLはクロールバジェットを消費しません
- 404/410エラーは一度確認されると、再クロールされる頻度が大きく下がります
- リダイレクトチェーンは避け、直接最終URLにリダイレクトしましょう
大規模サイトでの対策
大規模サイトでは、数十万〜数百万ページの中から重要なページを効率よくクロールしてもらう必要があります。
無駄なクロールが発生すると、新規コンテンツのインデックス登録が遅れたり、重要な更新が検索エンジンに反映されないリスクがあります。ページ数が非常に多いサイトでクロールの効率を向上させるための具体的な施策を紹介します。
URL群の管理
robots.txtによるブロック
Googleがインデックス登録に適さないURLのクロールに時間をかけすぎている場合、Googlebotはサイトの残りのURLを確認する時間を減らす可能性があります。以下のようなページはrobots.txtでブロックを検討してください。
- ファセットナビゲーションとセッションID(単にページの並べ替えまたはフィルタリングを行うもの)
- ショッピングカートページ、無限スクロールページ
- アクションを行うページ(「登録」ページ、「今すぐ購入」ページなど)
- プロキシページや無限のスペース
重複コンテンツの統合
canonicalタグとリダイレクトの活用
重複コンテンツを除外し、同一コンテンツは正規URLのみクロールされるようにします。
- canonicalタグ:類似ページの正規版を指定
- 301リダイレクト:古いURLから新しいURLへの転送設定
- URL構造の統一:wwwあり/なしの統一、http→httpsの統一
サイトマップの最適化
効率的なサイトマップ管理
- サイトマップを最新の状態に保つ:Googleにクロールさせたいコンテンツはすべてサイトマップに含める
- lastmodタグの活用:更新したコンテンツがサイトにある場合は、<lastmod>タグを含める
- サイズ制限の遵守:サイトマップは50MB(圧縮されていない状態)または50,000URLを上限とし、それを超える場合は複数のサイトマップに分割
- サイトマップインデックス:大規模サイトでは、サイトマップインデックスファイルを作成して管理
技術的な改善
サーバーとページのパフォーマンス向上
- ページの読み込み速度を上げる:Googleのクロールは、帯域幅、時間、Googlebotインスタンスの可用性によって制限されるため、サーバーがリクエストに迅速に応答する場合は、Googleがサイトのページをより多くクロールできる可能性があります
- 長いリダイレクトチェーンを避ける:クロールに悪影響を及ぼすため注意が必要
- 適切なHTTPステータスコードの返却:特に404/410の適切な実装
大規模サイトでの対策で留意したい点
- サイトのクロールバジェットを再配分する方法として、robots.txtにページまたはディレクトリを定期的に追加または削除しない
- バジェットを再配分する目的で、サイトマップをローテーションしたり、他の一時的な非表示メカニズムを使用しない
- Google検索の検索結果に表示したくないページのURLをサイトマップに含めない
404ページの確認方法
自サイトが適切な404エラーを返しているかを確認する方法をご紹介します。
ブラウザの開発者ツールを使用
- 存在しないURLにアクセス(例:https://example.com/notexist)
- F12キーを押して開発者ツールを開く
- 「ネットワーク」タブを選択
- ページを再読み込みして、HTTPステータスコードを確認
※ブラウザリロードボタンかキーボードの「F5」を押すことで再度ページを読み込みます
Search Consoleでの確認
Google Search Consoleの「ページのインデックス」レポート(旧カバレッジ)で、ソフト404エラーが発生しているページを確認できます。「除外」「ソフト404」の項目をチェックしましょう。
確認する際の注意点:CSS、JavaScript、画像ファイルなどのリソースファイルは200ステータスコードで返されても問題ありません。クロールバジェットの消費対象は主にHTMLページです。
まとめ
クロールバジェットは数万ページを保有する大規模なサイトのSEOに直結する重要な概念です。
特に「ソフト404」を放置すると無駄なクロールを招き、重要ページのインデックス遅延につながります。
推奨されるのは 「404/410を返すカスタム404ページ」です。SEO効率を守りつつ、ユーザーには有益な案内を表示することで、検索評価とUXを両立できます。
数百~数千ページのサイトでは、あまり意識する必要はありませんが、サイトが成長して中小規模から大規模になる可能性もあります。
そうなった際もサイト運用に困らないようにクロールバジェットが無駄遣いされないように事前に配慮しておくと良いでしょう。