サイトマップチェック

サイトを入力すると、クローラーと同じ手順でサイトマップを探して読み込み、検索エンジンが捨てるエントリーを一覧にします。サイトマップの場所がわかっている場合は、そのアドレスを入力すればファイルを直接テストできます。

ドメインだけを入力するとrobots.txtから探します。パスつきのアドレスはサイトマップそのものとして読み込みます。.xml.gzファイルにも対応しています。

例: wordpress.org, www.gov.uk

サイトマップは「お願い」の一覧で、命令ではない

検索エンジンはリンクをたどってページを見つけます。サイトマップはその手間を省くものです。クロールしてほしいページのアドレスをすべて書いた1つのファイルなので、リンクが見つかるかどうかに左右されません。形式はシンプルです。<urlset>の中に<url>エントリーが並び、各エントリーに必要なのは完全なアドレスを書いた<loc>だけです。

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.example.com/pricing</loc>
    <lastmod>2026-03-14</lastmod>
  </url>
</urlset>

1つのファイルに入れられるのは50,000件のアドレスまで、圧縮前のサイズで50 MBまでです。大きなサイトは一覧を複数のファイルに分け、<sitemapindex>を公開します。これは、エントリーがほかのサイトマップになっているサイトマップです。インデックスから別のインデックスを指すことはできません。

ページを載せても、頼めるのはクロールまでです。その後インデックスされるかどうかは、ページ次第です。

各結果の意味

チェック項目クローラーにとっての意味
ステータス、Content-Type、サイズファイルは200を返す必要があります。リダイレクトはたどりますが、エントリーを判定する基準のアドレスが変わります。HTMLが返ってくる場合、たいていはファイルが存在せず、サイトが「見つかりません」ページをステータス200で返しています。
整形式のXML、名前空間XMLパーサーは最初の構文エラーで止まるため、おかしな文字が1つあるだけで、それ以降のエントリーがすべて読まれなくなります。xmlnsの値は正確にhttp://www.sitemaps.org/schemas/sitemap/0.9である必要があります。
絶対URL、同じホストとスキームサイトマップに載せられるのは、そのサイトマップを配信しているホストのページだけで、スキームも同じでなければなりません。example.comとwww.example.comは別のホストです。
フォルダーのルール/blog/に置いたサイトマップには、/blog/以下のアドレスしか載せられません。robots.txtでファイルを宣言するとこの制限はなくなり、その場合このチェックは省略します。
重複、長すぎるURL、エンコードされていないURLファイルとしては機能しますが、どれも生成ツールが正規のアドレスを載せていないサインです。
lastmodW3C形式の日付である必要があります。例:2026-03-14または2026-03-14T09:30:00+00:00。未来の日付は警告します。10件以上あるファイルで全エントリーが同じ日付の場合も警告します。
抜き取り確認404は一覧が古いことを意味します。301や302は、一覧に最終的なアドレスではないものが載っていることを意味します。

<priority>と<changefreq>は参考として表示するだけです。Googleはどちらも無視すると明言しています。

よくある不具合の直し方

パーサーがファイルの途中で止まる
アドレスの中にそのままの&がないか探してください。XMLの中では&amp;と書くので、?a=1&b=2は?a=1&amp;b=2になります。<?xmlの前に空行やPHPの警告が出力されていると、ファイルは最初の1バイト目から壊れます。
アドレスのホストが違う、またはhttp://になっている
生成ツールは、設定にあるサイトのアドレスをもとにアドレスを作ります。そこを、リダイレクト後に訪問者が実際にたどり着く形に設定してから、再生成してください。
lastmodがすべて同じ
生成ツールが自分の実行時刻を書き込んでいます。各ページを最後に編集した日付を使うよう設定するか、タグそのものを外してください。間違った日付は、日付がないより悪い結果になります。実際の更新と合わないと検索エンジンが気づくと、サイト全体でそのタグを信用しなくなります。
抜き取り確認で消えたページやリダイレクトされるページが出る
ページを削除・移動したらサイトマップを再生成し、200を返して自分自身を正規URLとしているアドレスだけを載せてください。ページ内のリンクについてはリンク切れチェッカーがあります。
robots.txtで宣言されていない
ファイルのどこかに、完全なアドレスを書いた1行を追加してください:Sitemap: https://www.example.com/sitemap.xml

このチェックでわからないこと

読み込むのは1ファイルあたり最大5 MB、インデックスの子は5つまでです。そのため、とても大きなサイトでは、件数は読み込んだ部分についての数字になります。重複はファイルごとに探しており、ファイルをまたいだ重複は見ていません。画像、動画、ニュース、hreflangの拡張は数えますが、検証はしません。

5ページはあくまで抜き取りです。5つとも200を返しても、ほかの数百ページがそうでないこともあります。また、200を返すページでもnoindexタグがついていたり、canonicalが別の場所を指していたりすることがあります。ページ内SEOチェックで1ページごとに両方を確認できます。サイトマップを送信すれば、サーチコンソールがサイトマップ全体について報告してくれます。

よくある質問

ウェブサイトのサイトマップはどこにありますか?

サイトの/robots.txtを開き、Sitemap:で始まる行を探してください。なければ/sitemap.xml、次に/sitemap_index.xml(WordPressのYoastやRank Math)、/wp-sitemap.xml(バージョン5.5以降のWordPress本体)を試してください。このチェックはその手順を代わりに行います。

小さなサイトにもサイトマップは必要ですか?

必須ではありません。すべてのページにメニューから数クリックでたどり着けるなら、クローラーはすべて見つけます。サイトマップが役に立つのは、サイトが新しくほかのサイトからのリンクが少ないとき、規模が大きいとき、検索フォームからしかたどり着けないページがあるときです。

サイトマップにはURLをいくつまで入れられますか?

1ファイルあたり50,000件、展開後のサイズで50 MBまでです。どちらかを超える場合は、一覧を複数のファイルに分けてサイトマップインデックスにまとめてください。インデックス自体にも最大50,000個のサイトマップを載せられます。

Googleはpriorityとchangefreqを使いますか?

使いません。Googleはどちらも無視し、読むのは<loc>と、そのサイトで信頼できるとわかった場合の<lastmod>だけです。Bingもlastmodを重視しています。ほかの2つのタグは残しておいても害はありません。

lastmodの日付はどの形式にすればいいですか?

ISO 8601のW3Cプロファイルです。日付だけで十分です:2026-03-14。時刻もつける場合は、日付と時刻の間にTを入れ、最後にタイムゾーンをつけます:2026-03-14T09:30:00+00:00または2026-03-14T09:30:00Z。

サイトマップは正しいのに、なぜページがインデックスされないのですか?

サイトマップは、ページが存在することを検索エンジンに伝えるだけです。内容が薄い、重複している、robots.txtでブロックされている、noindexがついている、canonicalタグが別のアドレスを指している、といったページは、インデックスしないと判断されることがあります。インデックスされていないページをいくつか、1つずつ確認してください。