ウェブサイトを運営していると、”クローラビリティ”という言葉を耳にすることがあるかと思います。しかし、この言葉の意味や、なぜウェブサイト運営者・担当者やライターにとって重要なのか、具体的に理解している方は少ないかもしれません。
クローラビリティは、文字通り、ウェブサイトが検索エンジンのクローラー(ボット)によって「クロール(巡回)されやすいか」という点を指します。このクローラビリティが高いと、ウェブサイトの情報が検索エンジンに正確に認識され、適切にインデックスされる可能性が高まります。逆に、クローラビリティが低いと、ウェブサイトの情報が検索エンジンに認識されにくくなり、SEOの効果が半減してしまう恐れがあります。
この記事では、クローラビリティの基本的な概念から、その最適化方法までを詳しく解説していきます。ウェブサイトの可視性を高め、より多くのユーザーに情報を届けたいと考えている方は、ぜひ最後までお読みください。
クローラビリティとは?
クローラビリティとは、ウェブサイトが検索エンジンのクローラー(ボット)によってどれだけ簡単に巡回されるかの度合いを示す言葉です。クローラビリティが高ければ高いほど、サイトの情報が検索エンジンに正確に伝わりやすくなります。
クローラビリティが良いからといって直接的に検索順位に影響を及ぼすわけではありませんが、以下に示す通り、クローラビリティが良い事に越した事はないです。
ではクローラーについてもう少し掘り下げてみます。
クローラーの役割
検索エンジンのクローラーは、インターネット上のウェブページを自動的に巡回し、その内容を収集するプログラムです。Googleのクローラーは「Googlebot」と呼ばれ、米Yahoo!やBingなど他の検索エンジンもそれぞれ独自のクローラーを持っています。
クローラーは、ウェブページの内容や各種コンテンツ、リンクを読み取り、それを検索エンジンのデータベースに保存します。このデータベースに保存された情報をもとに、ユーザーが検索を行った際に適切な検索結果が表示されるのです。
クローラビリティの基本概念
クローラビリティの基本概念を理解するためには、まずクローラーの動作について知る必要があります。検索エンジンのクローラーは、リンクをたどりながらウェブページを発見し、その内容をインデックスに登録します。以下に、クローラビリティを向上させるための重要な要素をいくつか紹介します。
- サイト構造の整備:
- 階層構造をシンプルに保ち、ユーザーが少ないクリックで目的のページに到達できるようにします。
- 内部リンクを適切に配置し、クローラーがページ間を容易に移動できるようにします。
- XMLサイトマップの作成:
- XMLサイトマップを作成し、検索エンジンに送信することで、全てのページが確実にクロールされるようにします。
- robots.txtの設定:
- robots.txtファイルを用いて、クローラーにクロールしてほしいページと、してほしくないページを明確に伝えます。
- 重複コンテンツの回避:
- 同一のコンテンツが複数のURLで表示されないようにし、正規化タグを使用して検索エンジンにどのページを優先するかを示します。
クローラビリティが良いと起こる体感的なメリット
- 新規ページのインデックス速度が早くなる
- 更新した既存ページの再インデックス速度が早くなる
クローラビリティが悪いと起こる体感的なデメリット
- いつまでたってもページがインデックスされない(要因は他の場合もあります)
- SEO施策しても検索エンジンに再認知されない
クローラビリティを改善する7つの方法
ではこのクローラビリティを改善する為にはどういった事をすればいいのか?を解説していきます。完全にクローラを操る事は出来なくとも、以下7つの方法でクローリングする道を整えておく事が重要となります。
- robots.txtでクロールするディレクトリを明確にする
- サーチコンソールでの制御
- sitemap.xmlでクロールするページを明確にする
- 内部リンクを設置してクロールするURLを明確にする
- 検索エンジンに評価させないページはnoindexを設定する
- 評価させないページへの発リンクはnofollow設定する
- 評価させないページへの発リンクは遷移先URLをjavascriptで組み立てる
順番に概要を解説していきます。
robots.txtでクロールするディレクトリを明確にする
robots.txtはドメインのルートに置くクローラに対してのセッティングファイルです。特定のユーザエージェントやディレクトリに対してクロール不可などの設定を行う事ができます。sitemap.xmlの置き場所もここでURLの指定が出来ます。
クロール制御という観点では、クロール不要なディレクトリを設定出来る事です。
User-agent: * Disallow: /hoge/
の行を追加する事によってこの/hoge/ディレクトリはクロールしなくなります。
上記の通り、これはユーザエージェント毎に設定が出来ますので、クローラビリティとはちょっと脱線しますが、ユーザエージェント毎にサイト丸々クロールしないでね、とも指定できます。最近流行りだしたchatGPTはクロールしないよう設定するには、上記コードの下部に続けて以下コードを記載します。
User-agent: GPTBot
Disallow: /
見やすい様に空白行を入れてもいいので上記の計4行を記載すると「通常のユーザエージェントは/hoge/のディレクトリ以外をクロールしてね、GPTBotのユーザエージェントはサイト全体クロールしないでね」という意味になります。
クロールバジェットは有限なので、ログインしないと見れないページや購入フロー、登録フローなどはあらかじめトップディレクトリを分けておき、ここでDisallow設定する事によって、無駄なクロールを避ける事が可能となります。
サーチコンソールでの制御
サーチコンソールには色々機能がありますが、その中でもクロールの制御に関する機能を紹介します。ここで紹介するのはあくまでGoogleのクローラーに対する制御となります。他の検索エンジンに対してはそれぞれのWeb管理者画面の内容に従ってください。
クロールさせたいURLを直接指定する機能
クロールさせたいURLを「URL検査」すると、そのURLのサイト状態と共に「インデックス登録をリクエスト」のボタンを押下すれば、即時では無いですが感覚的には数時間〜2,3日の間にそのURLをクロールしてくれます。
新規に記事を書いたり、既にあるページをSEO施策する為にHTMLソースを少し変更してみたり、した場合にいち早くGoolgeに認知させたたい手軽な方法として使用する場合が多いです。
サイトマップを送信する機能
sitemap.xmlをGoogleに認知させる機能となります。
sitemap.xmlの格納場所はrobots.txtに記載をしていればサーチコンソールを使わずともGoogleは認知できるのですが、サーチコンソールに登録しておく事によってsitemap.xmlに記載されているURL全体の内、どれだけがインデックス登録されたのか?を把握する事が出来るので便利です。
また、URLのディレクトリ毎にsitemap.xmlを分けて登録する事によって、このディレクトリのインデックス率は良いけど、こっちのディレクトリのインデックス率は悪い、なぜ悪いのかのインデックスに登録されなかった理由というのも、何種類かに区分されてURL毎に見る事が可能です。
クロール頻度を調節する機能
一般的にはほとんど使う機会が無い機能です。
ただ、私は大規模サイトの担当者なので、先日はじめて使う機会がありました。クローラアクセスが多くなりすぎてサーバーダウンが1週間の内に2回立て続けに起きて、一旦これで様子を見よう、ということになりました。
ただ、この画面、(少なくともUIは)旧ウェブマスターツール内?にしか無いのでいざ使おうとすると迷ってしまいますのでURL載せておきます。GSCにログイン状態でしたら以下URLで設定画面に飛びます。
こちらでプロパティ(サーチコンソールに設定しているドメイン)を選択すると、クロール利用頻度のページにリダイレクトされます。
通常は「頻度は自動」です。「最大頻度を制限する」のラジオボタンを選択すると毎秒何リクエストするかを設定できます。
sitemap.xmlでクロールするURLを明確にする
クロールを制御する上ではsitemap.xmlの登録は必須作業となります。
新規ページ、更新したページ、更新日(Lastmod)はsitemap.xmlを登録する日に設定をします。h
実ファイルを作るのか、または、ファイルアクセス時に最新版が出る様にするかは開発と相談になるかと思います。ある程度のサイトであればクローラーは毎日やってきているので出来るならば毎日更新をしておくのがおすすめとなります。
但し、IndexingAPIや、パブサブハブバブなどの実装をしてより速くGoogleに認知させている場合、このsitemap.xmlの実装はどちらかというとIndexさせる為の保険、という意味となり、優先度が落ちるかもしれません。
内部リンクを設置してクロールするページを明確にする
ここでの内部リンクは、TOPからの全テンプレートの個々のページに設置する関連リンクを指します。昔はリンクジュースを意識して完全にクロール全振りリンクとしていましたが、今の関連リンクはそのページの評価を上げる為の付加価値要素のSEO施策で使用している方が多いかと思います。
当然クローラもリンク導線を辿るので、経験上では、厳選した多くても5本〜10本ぐらいのクラスタ化した相互の関連リンクとした方が良い効果となります。
この場合、クラスタ化したリンク郡はクローリングもされやすく、新規記事の仲間入り、または修正反映がGoogleにスムーズに認識されています。
逆にトップページやカテゴリページでも無いのにフッタにカテゴリトップの網羅リンクを設置するなどは効果は皆無なのでやめた方がいいかと思います。
(パンくずも関連リンクの概念として有効だとは思いますが、なんか最近あまり効果が薄れてきているような…)
検索エンジンに評価させないページはnoindexを設定する
noindexはSEARPSに表示させない様にする為(評価もしない)であって、クロールを制御する為ではない事をあらかじめご留意下さい。
じゃぁなぜこの「クロールを制御」する項目に出てくるんだ?って話ですが、Googleはnoindexを認識すると、そのページへのクロール頻度が少なくなるからです。いきなりクロールが皆無になるわけではないのですが、そのURLに2〜3日に1回きていたクローラが、noindexを認識する事によって数週間に1回となり、さらに数ヶ月に1回、な動きとなっていきます。
この様にクロールバジェットの節約が出来ます。
ページ量が100や1,000などであればクロールバジェットにほとんど関係しないのですが、サイトボリュームが100万ページ、1,000万ページともあろうことならば、有限なクロールバジェットに影響がでてくる場合が多くなります。
データベースサイトは検索結果0件のページや「この案件は終了しました」などの不要なページがどうしても出来てしまいます。これらのページをnoindexに設定をしてクロール頻度を少なくさせる事によって、検索結果が常に新しい情報に入れ替わっているページや、新規に作成したページを優先的にクロールさせていきましょう。
評価させないページへの発リンクはnofollow設定する
クローラーの交通整理の役割を果たすのが、nofollowとなります。noindexになっているページでもクローリングはされてクロールバジェットを消費します。
そこで内部リンクのaタグにnofollowを設定する事によってそのリンクはクローラーに辿らせない様にする事ができます。
使い方としては、noindexに設定しているページに発リンクをしている場合に、そのリンクはnofollowに設定する様にします。こうすることによってサイト内にnoindexページが散見するが、クローリングはされない、といった事が実現できます。
ただし、2019年9月よりnofollowはGoogleへのヒントなっているので必ずしも守られるわけではないです。
評価させないページへの発リンクは遷移先URLをjavascriptで組み立てる
これはどちらかと言うと番外編です。
nofollow設定するURLをさらにjsで組み立てる様にします。Googleはjsも理解しますが完全ではないところに目を付けた手法となりますのであまりおすすめはしません。但し、リンクをjsで組みたてるなんてザラにありますのでペナルティになる訳ではないです。
おすすめしない理由は、いつかはGoogleにリンクを理解されるから、だけです。但し今のところ効果は抜群です。
jsで組み立てたURLをURL検査してみて下さい。認識していないので。
まとめ
いかがでしたか?
インハウスSEO担当であれば当たり前にでてくるべき改善施策となりますが、どれもクローラビリティを改善するためには重要な施策となります。
クローラビリティは順位上昇に直接的には影響の無いものの、サイト内で重要なページはなるべく多い頻度でクローラに見せたい、そのためには無駄なクローリングをしてほしくない、と思うのがインハウスSEO担当ですね。
是非、自サイトの参考にしてみて下さい。
よくある質問と回答
質問1: クローラビリティとは何ですか?
クローラビリティとは、検索エンジンのクローラーがウェブサイトのページを発見し、インデックスする能力を指します。クローラビリティが高いと、検索エンジンがサイトを効率的に巡回でき、インデックスの精度が向上します。
質問2: クローラビリティを向上させる方法は?
クローラビリティを向上させるためには、サイト構造の整備、XMLサイトマップの作成、robots.txtファイルの適切な設定、重複コンテンツの回避が重要です。
質問3: クローラビリティがSEOに与える影響は?
クローラビリティが高いと、新しいコンテンツが迅速にインデックスされ、検索エンジンの評価が向上します。これにより、検索順位が上がり、サイトへのトラフィックが増加する可能性があります。
質問4: XMLサイトマップとは何ですか?
XMLサイトマップは、ウェブサイト内の全ページのリストを含むファイルで、検索エンジンに送信することで、すべてのページが確実にクロールされるようにします。
質問5: robots.txtファイルの役割は何ですか?
robots.txtファイルは、検索エンジンのクローラーに対してクロールしてほしいページと、してほしくないページを指定するためのファイルです。これにより、重要なページが優先的にクロールされます。
このように、よくある質問と回答を記載することで、読者にとって有益な情報を提供し、サイトのSEOを強化することができます。