BLOG

サイトマップのSEO効果とは?XMLとHTMLの違いと大規模サイトの扱い

サイトマップのSEO上の役割は、検索に出したいURLをGoogleに見つけてもらうことで、載せたURLの登録や順位は保証されません。XMLは検索エンジン向け、HTMLは訪れた人向けで、役割が違います。数千ページを超えるサイトなら、ページの種類ごとにサイトマップを分け、canonicalと同じ規則で載せるURLを選ぶことをおすすめします。

ページの種類ごとに色分けされた3つのURL一覧の束が1つの目次のファイルにまとめられ、その横で人が分類ごとに並んだリンクの一覧ページを見ている図。

「サイトマップを作ってGoogleに送れば、SEOに効くはず」。サイトマップはSEO対策の基本として紹介されることが多く、WordPressなどのCMSでは自動で作られるため、送信を済ませれば対策は終わりと思われがちです。ところが、Googleの公式ヘルプにも、サイトマップに載せたURLがすべてクロールされ、インデックスに登録されるとは限らないと明記されています。サイトマップはXMLとHTMLで役割が違い、数千ページを超えたらインデックスの制御の一部として扱います。

本記事では、XMLとHTMLのサイトマップの違いと作り方から、数千ページを超えるサイトでの分け方とURLの選び方まで、大規模サイトのインデックスの制御を支援する立場で順を追ってお伝えします。

この記事でわかること
  • サイトマップのSEO上の役割は、検索に出したいURLをGoogleに見つけてもらうことで、登録や順位は保証されない
  • XMLサイトマップは検索エンジンが読むファイル、HTMLサイトマップは訪れた人がページを探すページ
  • XMLサイトマップはCMSかデータベースから自動で作り、Search Consoleかrobots.txtでGoogleに伝える
  • 数千ページを超えたら、ページの種類ごとにサイトマップを分け、canonicalと同じ規則で載せるURLを選ぶ

サイトマップにSEO効果はあるか

サイトマップのSEO効果は、検索に出したいページのURLをGoogleに伝え、見つけてもらいやすくすることです。Googleは、サイトマップを読み込んで、サイトのクロールを効率よく進めるとしています。

ただし、載せたURLがすべてインデックスに登録されるとは限りません。サイトマップが関わるのは、検索結果に出る前の、ページを見つけてクロールする工程です。

サイトマップに書く項目のうち、Googleが使うものと使わないものは次の表のとおりです。

項目

Googleの扱い

URL(loc)

クロールするURLの候補にする。正規URLを示す弱いシグナルにもなる

最終更新日(lastmod)

値が一貫して正確だと確かめられる場合に使う

優先度(priority)

使わない

更新頻度(changefreq)

使わない

※ 出典:Google検索セントラル「サイトマップの作成と送信」「rel="canonical" などを利用して正規 URL を指定する方法」

サイトマップが要るサイトの目安

サイトマップが要らない場合があるとGoogleが説明しているのは、検索結果に出したいページがおよそ500ページ以下で、ホームページからリンクをたどって全ページに届くサイトです。反対に、サイトマップが役立つとGoogleが挙げているサイトは次の3つです。

  • ページ数が多く、すべてのページへのリンクを確かめにくいサイト
  • 新しく、ほかのサイトからのリンクが少ないサイト
  • 動画や画像が多いサイトや、Googleニュースに表示されるサイト
サイトマップについて | Google 検索セントラル | Documentation | Google for Developers
サイトマップとは、サイト内の URL を一覧化し、Google のクロール効率化に役立つファイルです。sitemap.xml とその他形式、サイトマップの仕組みや必要性について解説します。
🌐 developers.google.com
外部リンク

※ 出典:Google検索セントラル「サイトマップについて」

XMLサイトマップとHTMLサイトマップの違い

XMLサイトマップとHTMLサイトマップは、読む相手が違います。XMLサイトマップはGoogleなどの検索エンジンが読むファイルで、HTMLサイトマップはサイトを訪れた人がページを探すためのページです。

項目

XMLサイトマップ

HTMLサイトマップ

読む相手

検索エンジン

サイトを訪れた人

形式

sitemap.xmlなどのXMLファイル

通常のWebページ

書く内容

ページのURLと最終更新日

ページへのリンクと分類の見出し

SEOで担う役割

検索に出したいURLをGoogleに伝える

サイト内のリンクとして、ページへの経路を増やす

検索エンジンが読むXMLサイトマップと、訪れた人が読むHTMLサイトマップの違いを並べた図

HTMLサイトマップがSEOに関わるのは、ページの中のリンクを通してです。Googleがたどってページを見つけられるのは、通常、href属性を持つaタグのリンクです。HTMLサイトマップのリンクもaタグで書けば、Googleがページを見つける経路の一つになります。

XMLサイトマップは訪れた人がページを探す役に立たず、HTMLサイトマップは最終更新日を伝えられません。XMLとHTMLは、片方でもう片方の代わりはできません。

XMLとHTMLのサイトマップの作り方

サイトマップは、XMLならCMSかデータベースから自動で作り、HTMLならサイトの分類に沿ってリンクを並べたページを作ります。

XMLサイトマップの作り方

XMLサイトマップを作る手順は、次の4つです。

1
STEP
載せるURLの決定

検索結果に出したいページの正規URLを選びます。同じ内容を表示するURLが複数あれば、正規URLにする1つだけを載せます。

2
STEP
ファイルの作成

WordPressなどのCMSは、サイトマップを自動で用意していることが多いです。Googleは、URLが数十に満たなければ手で書いてもよく、それより多ければ、サイトのデータベースからURLを書き出して自動で作る方法をすすめています。

3
STEP
ルートへの設置

ファイルはUTF-8で保存し、URLは https:// から書いた絶対URLにします。Search Consoleで送信しない場合、サイトマップが伝えられるのは置いたディレクトリより下の階層だけなので、ルートに置きます。

4
STEP
Googleへの送信

Search Consoleのサイトマップレポートで送信するか、robots.txtに「Sitemap:」で始まる行を書きます。Search Console APIで送信する方法もあります。

タグの書き方と、自分のサイトのサイトマップのURLを確かめる方法は、XMLサイトマップの記事で扱っています。WordPressで作る場合は、WordPressでサイトマップを作る方法をご覧ください。

HTMLサイトマップの作り方

HTMLサイトマップは、サイトの分類ごとに見出しを立て、その下に各ページへのリンクを並べた1枚のページとして作ります。作るときに満たす条件は次の3つです。

  • 分類ごとの見出しの下に、各ページへのリンクを並べる
  • リンクをhref属性を持つaタグで書く
  • フッターなど、全ページに共通する場所からリンクする

手で作ったHTMLサイトマップは、ページを追加・削除するたびに直します。WordPressなら、HTMLサイトマップを作るプラグインを使うと、ページの追加に合わせて一覧も更新されます。

数千ページを超えるサイトでのサイトマップの扱い

数千ページを超えるサイトでは、サイトマップを、どのURLを検索に出すかを決めるインデックスの制御の一部として扱います。ページをデータベースとテンプレートから作るサイトでは、ページの種類ごとにURLが増え、検索に出したくないURLも自動生成のサイトマップに混ざりやすいためです。小さなサイトと扱いが変わるのは、次の4つです。

ページの種類ごとの分け方

数千ページを超えるサイトのXMLサイトマップは、求人・店舗・記事のように、ページの種類ごとに分けます。1つのサイトマップに載せられるのは、圧縮前で50MB、URLは50,000件までです。上限を超えたら複数に分け、サイトマップインデックスファイルにまとめて送信します。

サイトマップインデックスファイルには、最大50,000個のサイトマップを載せられます。Search Consoleでは、1つのサイトにつき500個までのインデックスファイルを送信できます。インデックスファイルに載せるサイトマップは、インデックスファイルと同じディレクトリか、その下の階層に置きます。

※ 出典:Google検索セントラル「サイトマップ インデックス ファイルでのサイトマップの管理」、sitemaps.org「プロトコル」

上限に合わせて機械的に区切るより、ページの種類で分けるほうが、登録の状況を見分けやすくなります。Search Consoleのページのインデックス登録レポートは、特定のサイトマップで絞り込めるからです。

サイトマップインデックスファイルの下に、ページの種類ごとに分けた3つのサイトマップがあり、それぞれの登録状況を見比べる図

たとえば、詳細ページのサイトマップだけ未登録の割合が高いなら、原因の候補を、詳細ページのテンプレートか、一覧から詳細ページへのリンクに絞れます。

載せるURLの選び方

サイトマップに載せるのは、検索結果に出したいページの正規URLだけです。数千ページを超えるサイトでは、サイトマップを書き出すプログラムで、次の4つに当たるURLを除きます。

  • noindexを付けたページのURL
  • robots.txtでクロールを止めたURL
  • リダイレクトするURLと、404を返すURL
  • canonicalで別のURLを正規に指定しているURL

Googleは正規ページを指定する方法のページで、サイトマップとcanonicalで同じページの正規版に別々のURLを指定しないよう求めています。サイトマップを書き出すプログラムが、canonicalを出力するテンプレートと同じ規則でURLを組み立てれば、2つは食い違いません。

Web担当者Web担当者

数万ページあるので、全部のURLをサイトマップに入れて送れば、登録されるページは増えますか?

Writers-hub編集部Writers-hub
編集部

漏れていたページは、載せれば見つけてもらいやすくなります。ただ、noindexのページまで載せると、送信したURLのエラーが増え、本当に直すべき未登録のURLを探しにくくなります。

クロールの無駄を減らすためのURLの絞り込みは、クロールバジェットの記事で扱っています。

サイトマップとcanonicalが、別々の規則でURLを作っていませんか

データベースSEOは、数千〜数万ページ規模のデータベース型サイト向けのSEOです。内部リンクとURLの設計による構造の最適化と、クロールバジェットの配分・sitemap・canonicalによるインデックスの制御を行います。

lastmodの出し方

lastmodには、ページの内容を最後に大きく変えた日時を、データベースの値から出します。Googleは、lastmodの値が一貫して正確だと確かめられる場合に使うとしています。本文や構造化データ、リンクの変更は一般に重要な更新とされ、著作権表示の日付の変更は重要な更新とされません。

とりわけ見落とされがちなのが、ページに表示しない項目の更新でlastmodが変わることです。閲覧数や社内用の項目をページと同じレコードに持っていると、レコードの更新日時は、その項目を書き換えただけで新しくなります。lastmodには、レコードの更新日時ではなく、ページに表示する項目を変えた日時を記録して使います。

サイトマップを生成した日時を全ページのlastmodに入れるのも、sitemaps.orgの決まりに反します。一覧ページのように最終更新日を決めにくいページは、lastmodを省いてもかまわないとGoogleは説明しています。

HTMLサイトマップの絞り方

数千ページを超えるサイトのHTMLサイトマップには、分類や地域のような階層の入口までを載せ、詳細ページへは一覧ページからリンクします。数万件のリンクを1枚に並べたページでは、訪れた人が目当てのページを探せないためです。

HTMLサイトマップから分類の一覧ページへ、一覧ページから詳細ページへとリンクが階層をたどって届く図

Googleは、規模の大きなサイトほど、すべてのページがほかのページからリンクされているかを確かめにくく、新しいページを見つけられないことがあるとしています。リンクをたどっても詳細ページに届かないときは、まず一覧のページ分けと、リンクを出す条件を確かめます。HTMLサイトマップにリンクを足すのではなく、一覧ページのリンクの出し方を直します。

サイトマップとSEOのよくある質問

サイトマップとSEOについて、よくある3つの質問に答えます。

サイトマップは更新のたびに送り直す?

サイトマップは、更新のたびに送り直す必要はありません。Googleは、送信に成功したサイトマップを、サイトのクロールとは別のペースで読み直します。送り直すのは、サイトマップを大きく変えたときと、サイトマップレポートのステータスが「取得できませんでした」になり、原因を直したときです。Googleが、取得に何度か失敗したサイトマップの読み取りを止めるためです。

robots.txtだけで送信は足りる?

Googleにサイトマップを伝えるだけなら、robots.txtに書くだけで足ります。ただ、Search Consoleのサイトマップレポートに表示されるのは、レポートかAPIで送信したサイトマップだけです。取得の成否やエラーを確かめるために、Search Consoleでも送信しておくことをおすすめします。

pingでの送信はまだ使える?

pingでの送信は、今は使えません。Googleは2023年6月にサイトマップのpingのサポート終了を発表し、pingのリクエストは404エラーを返すとしています。pingを送るプラグインが残っていてもGoogle検索に問題は起きませんが、送信はSearch Consoleかrobots.txtで行います。

※ 出典:Google検索セントラル ブログ「サイトマップの ping エンドポイントのサポート終了について」

まとめ|サイトマップは役割と規模で作り分ける

サイトマップのSEO上の役割は、検索に出したいURLをGoogleに見つけてもらうことで、載せたURLの登録や順位は保証されません。XMLサイトマップは検索エンジンに、HTMLサイトマップは訪れた人に向けたもので、片方でもう片方の代わりはできません。数千ページを超えるサイトでは、ページの種類ごとにサイトマップを分け、canonicalと同じ規則で載せるURLを選び、lastmodをページの実際の更新日時から出します。

私たち合同会社Writers-hubは、データベースSEOとして、数千〜数万ページ規模のデータベース型サイトの構造の最適化、テンプレートの最適化、インデックスの制御を行っています。

ページの種類ごとに、インデックスの登録状況を見分けられていますか

データベースSEOでは、内部リンクとURLの設計による構造の最適化と、title・meta description・構造化データをページの種類ごとに整えるテンプレートの最適化を行います。クロールバジェットの配分、sitemap、canonicalによるインデックスの制御も扱います。

この記事を書いた人

米山拓真

米山拓真

合同会社Writers-hub 代表社員

滋賀県立大学工学研究科の修士課程を修了後、大手制作会社の編集部を経て2019年にWebライターとして独立。2020年に記事制作を手順化した「ハブ式SEOライティングメソッド」を開発し、これまでに200人以上のライターを育成しました。2022年3月に合同会社Writers-hubを設立し、会社として累計8,000記事以上のSEO記事制作に携わっています。2024年にAIライティングシステム「一気通貫Pro」、2025年から書き手の文体を再現するAI編集者「Edico」を開発。このブログでは、クライアント案件と自社サイトで実際に試したことを書いています。

読んで終わりにしないために

記事の内容を自社に当てはめるとどうなるか、オンライン30分で一緒に整理します。費用はかかりません。