Googleに、あなたのサイトを効率良くクロールさせる9つのポイントとは? SEOの土台となる大切なコト
今回のテーマは「グーグルによるクロールを効率化するには」について。
グーグルのクロールを手助けするために
- サイト構造
- サイトマップ
- Google Search Console
をどのように取り扱い、どのように連動させればいいのか。そしてグーグルのクローラー「Googlebot」の効率を上げるために何ができるのか。
MozでSEOを専門にしているショーン・フーバー氏が説明する。
サイト構造、サイトマップ、Google Search Console
まずは、ざっくりとした話から始めよう。グーグルが効率的にクロールできるようにするには、次の3つが重要になる:
- サイト構造
- サイトマップ
- Google Search Console
これらがどのように関連しているのかについて話したい。
サイト構造に関しては、クモをイメージしてほしい。クモは巣を作るとき、獲物がかかったらどこへでもすぐに動いて捕まえられるよう、すべての糸を効率的に張っている。君のウェブサイトも同じように機能する必要がある。グーグルが簡単に効率的にクロールできるように、障害や問題が多すぎて巡回できなくなることがないよう、すべてのページやカテゴリーの間に相互リンクを張るなどして、相当しっかりとした構造にする必要がある。
サイトマップは、グーグルが君のサイトを巡回するときに必ずクロールさせたいURLをまとめる仕組みで、買い物リストやToDoリストのようなものだ(人間向けのサイトマップページとは別もの)。サイトマップ書いてあるURLをグーグルが必ずクロールするとは限らないが、少なくとも、見てほしいURLがあることをグーグルに伝えたい場合にサイトマップは最善の方法だ。
Google Search Consoleについては、ウェブサイトを運営する人は必ずサイトにプロパティをひも付けて、グーグルが君のサイトとそのパフォーマンスについて公開するあらゆる情報を確認できるようにする必要がある。
次の2つの取り組みについて、さらに詳しくみていく:
- Google Search Console
- サイトマップ
Google Search Consoleとプロパティ
Search Consoleとプロパティについて少し深く掘り下げてみよう。
Search Consoleを使うには、最初に必ずSearch Consoleに「プロパティ」を作成する必要がある(要はあなたのサイトを登録するということだ)。そこから大量の情報が得られるからだ。
ブラウザでSearch Consoleの画面にアクセスして使う場合は、いくらか制限がある。フィルタリングや正規表現などの優れた機能を使ってさまざまな角度から分析することはできるが、ブラウザの画面で確認できるURLは1000件に限られている。
僕は10年ほど前から、サイトごとではなくディレクトリ単位でプロパティを作成し、ディレクトリごとに1000件の情報を得られるようにしている。これでどのような効果があるかといえば、Looker Studioにひも付けて、これらのディレクトリのすばらしいグラフやレポートを作成したり、フィルタリングしたりできる。僕にとっては、この方がはるかに簡単だ。
もちろん、1つのプロパティだけでも問題ないことも多い。しかい、ページ数が多いサイトならばhttps://example.com/toys
やhttps://example.com/books
などのディレクトリ単位でSearch Consoleに登録しておくことで、より多くの情報が得られる。
サイトマップ
次に、サイトマップについて見ていく。
ご存じのように「サイトマップ」とは、グーグルに見てほしいURLを集めたリストだ。通常、大きなサイトの場合は次の流れで、数万件のURLでもグーグルにクロールしてもらえる:
- サイトマップにURLを記載してルートディレクトリに置く
- サイトマップ自体のURLをrobots.txtに記述する
- サイトマップ自体のURLをSearch Consoleに登録する
これで、そのサイトマップについてのグーグルの情報を確認できるようになる(認識したか、いつクロールしたか、ページのインデックス登録状況など)。
しかし、現在取り組んでいるサイトに関して抱えている問題がある。それは、大規模サイトでURLが膨大にあるせいで、グーグルが必ずしもサイトマップを取得するとは限らないことだ。
少なくとも、すぐに取得してくれるとは限らない。グーグルがサイトマップを利用し始めるまでに数週間かかったこともあるし、そこから有益なデータを得るにはさらに時間がかかることもある。
そこで、この問題を解決するために、僕は1つのサイトマップには1万件のURLに留めて、複数のサイトマップに分割している。サイトマップの数は激増したが、それを解決するためにあるのが「サイトマップインデックス」だ。
サイトマップインデックスとは、要は「サイトマップのサイトマップ」のようなものだ。グーグルがすべての情報を収集・整理・参照できるようにするのに役立つ。サイトマップをこうした構造で作って管理するのは、手間がかかる。しかし、グーグルはこれらのサイトマップをすぐに取得してくれるので、1日も経たずに有益な情報を得られるようになる。
僕はさらに、サイトマップをディレクトリごとに分割している。たとえばサイト全体でURLが5万件以上あっても、ディレクトリごとにサイトマップを分けていれば、個々のサイトマップやサイトマップインデックスは、そのディレクトリに含まれるURLだけに絞り込める。これは非常に便利だ。
というのも、前述のようにSearch Consoleのプロパティ登録をディレクトリごとに分ける手法と組み合わせることで、各ディレクトリ内にあるURLのインデックス状況を個別に確認できるからだ。すべてのURLのデータを寄せ集めたルートプロパティを使う必要はなくなる。
とりわけ、新しい製品ラインを発表する場合、グーグルにインデックスしてもらい、この新しい製品ラインに関するデータを共有してもらいたい場合には、極めて有効だ。
僕が日頃から良い習慣だと思っているのは、サイトマップのpingを送信することだ。グーグルはAPIを公開しているので、このプロセスはもちろん自動化できる。それでいて、驚くほど便利だ。
- サイトの追加
- URLの追加
- URLの削除
などなど、コンテンツに何らかの変更を加えたら、その都度グーグルにpingを送信して、サイトマップに変更があったことを知らせよう。
すべてのデータ
ここまで、あらゆる優れた取り組みを見てきた。その成果として何が得られるだろうか。
まず、大量のデータが得られる。大量であることを強調したい。すでに述べたように、新しい製品ラインを発表するときや、サイトになぜ問題があるのかを診断するときには、非常に便利だ。
くり返すが、Search Consoleで取得できるデータはプロパティごとに1000件という制限がある。しかし、1つのサイトを複数のプロパティに分割して登録すると、各プロパティ内のURL数が限られる。そのため、1000件の制限にひっかかることなく。あらゆる貴重な情報を得られるようになる。
さらにうれしいことに、グーグルはURL Inspection APIを公開した。これにより、スクリプトを実行してURLの状態を確認し、そこから有益な情報を得ることもできるようになった。非常に便利だ。しかし同じような話題になってしまうが、グーグルの性質上、APIの呼び出しはプロパティ1つあたり1日2000件までに制限されている。
ただし、これはプロパティ1つあたりの数字だ。したがって、1つのサイトを複数のプロパティに分割して登録すると、1日にもっと多くのURLのデータが得られる。Search Consoleのプロパティはアカウント1件につき50個まで追加できるので、サイトを50のプロパティに分けていれば1日10万件まで情報をとれる。
さらにすばらしい情報がある。ぼくたちが大好きで毎日使っているSEOツールのScreaming Frog SEO Spiderに関してだ。このツールは、APIに接続するだけでなく、この制限をすべてのプロパティで共有できるようにした。
10万件のURLをScreaming Frogで取得するようにすれば、コーヒーを飲みながらリラックスして待っているだけで、大量のデータが得られるようになった。とても便利で、本当にすばらしい。おかげで僕の仕事も信じられないほど楽になった。
これで、グーグルで自分のURLが表示されないときに、
- グーグル側の問題 ―― つまり発見またはクロールしたのにインデックスが作成されなかった
- サイト側の問題 ―― 僕のサイトに問題があるからクロールまたはインデックスされていない
のどちらなのかを、データに目を通して確認できるようになった。
おまけ: ページエクスペリエンスレポート
おまけとして付け加えると、Search Consoleのページエクスペリエンスレポートでは、次の2つをディレクトリレベルの内訳として確認できる:
- ウェブに関する主な指標(コア ウェブ バイタル)
- モバイルユーザビリティなどのデータ
これにより、サイト診断や確認がはるかに簡単になる。
今回のホワイトボードフライデーはお役に立てただろうか。これらの戦術は僕のSEOのキャリアを通じて間違いなく助けになったので、君にも役立ててもらえるとうれしい。それでは次回まで、クローラーのように地道な取り組みを続けていこう。
ソーシャルもやってます!