昨今、「クロール バジェット(クロールの割り当て)」についてさまざまな定義を耳にします。しかし、外部的に「クロール バジェット」と言われているものを一言で説明できるような言葉はGoogle内部にはありません。そこで、この記事では、Googlebot での「クロール バジェット」の実状や意味を明らかにします。
まず重要なのは、以下で述べるように、クロール バジェットとは、ほとんどのウェブマスターの方々にとって気にすべきものではない、ということです。 新しいページが公開された当日にクロールされることが多い場合、ウェブマスターの方がクロール バジェットを重視する必要はありません。同様に、数千以下の URL 数しか持たないサイトにおいては、ほとんどの場合、クロールは効率的に行われるでしょう。
一方で、例えば、大規模なサイトや、 URL パラメータを使用してページを自動生成するサイトにおいては、クロールの対象やタイミング、サイトをホストしているサーバーでクロールに割り当て可能なリソースの量に関しても優先順位を付けることが重要となります。
Googlebot は、ウェブ上の善良な市民であるよう設計されています。その主要な優先事項は、そのサイトにアクセスするユーザーにとっての利便性を損なわないよう配慮しつつクロールを行うことです。こうした仕組みを「クロールレート(クロール速度)」と呼びます。これにより、サイトに対する取得速度の最大値が制限されます。
単純化を恐れず言えば、クロールレートは、Googlebot でサイトのクロール時に使用する同時並行接続の数、および次回のフェッチまでに必要な待ち時間を表します。クロールレートは、次のような要因によって変動することがあります。
クロール速度が上限に達していない場合でも、インデックス登録における必要性がなければ、Googlebot によるクロールは少なくなります。クロールが必要かどうか決める上で大きな役割を担うのが、次の 2 つの要素です。
また、サイトの移転など、サイト全体に関わる事象が発生した場合、新しい URL のコンテンツをインデックスに再登録するために、クロールの必要性が高まることがあります。
こうしたクロール速度とクロールの必要性の両方を考慮したうえで、Google ではクロールの割り当てを「クロールの必要性があり、かつ Googlebot がクロール可能な URL の数」と定義しています。
Google の分析によると、付加価値の低い URL がサイトに多数ある場合、そのサイトのクロールやインデックス登録に悪影響が及ぶ可能性があります。価値の低い URL は、重要度順に次のようなカテゴリに分けられます。
このようなページでサーバーのリソースが浪費されると、実際に価値のあるページのクロールの妨げとなるため、サイト上の優れたコンテンツの発見に大幅な遅れを引き起こしかねません。
クロールは、サイトが Google の検索結果に表示されるために欠かせないものです。ウェブサイトのクロールが効率的に行われると、Google 検索のインデックスに登録されやすくなります。
A: サイトの表示速度を上げると、ユーザーの利便性が向上するだけでなく、クロール速度も上がります。Googlebotは、速度に優れたサイトはサーバーが健全な状態であることを表すものと見なすので、同じ接続の数でより多くのコンテンツの取得が可能になります。一方、5xx エラーや接続タイムアウトが多い場合はサーバーの状態に問題があると見なされ、クロールが遅くなります。
このため、Search Console のクロールエラー レポートを利用して、サーバーエラーを少なく抑えるようにすることをおすすめします。
A: クロール速度が上がっても、必ずしも検索結果での掲載順位が高くなるとは限りません。Google では何百もの要素を使って検索結果のランキングを決定しています。クロールはサイトが検索結果に表示されるために必要なものではありますが、ランキング要素ではありません。
A: 通常、Googlebot によりクロールされる URL はいずれも、サイトのクロール バジェットにカウントされます。AMP や hreflang のような代替 URL、CSS や JavaScript といった埋め込みコンテンツについてもクロールが必要となる可能性があり、その場合にはサイトのクロール バジェットが使われることになります。同様に、長いリダイレクト チェーンはクロールに悪影響を及ぼすことがあります。
A:「crawl-delay」robots.txt ディレクティブは、Googlebot では処理されません。
A: 場合によります。 クロールされる URL はすべてクロール バジェットに影響します。したがって、ページ内で URL を nofollow として指定しても、サイト内の別のページやウェブ上のページでリンクが nofollow と指定されていない場合はクロールされる可能性があります。
サイトのクロールを最適化する方法については、クロールの最適化に関する Google のブログ記事をご覧ください。こちらの記事は 2009 年の投稿ですが、現在もお役に立つ内容です。ご不明な点がありましたら、フォーラムで質問なさってください。
Posted by Gary, Crawling and Indexing teams