サイトマップ分割の基準と実装(10万URL超 / 画像・動画 / ニュース)

結論

 サイトマップは1ファイル50,000 URL・50MB(非圧縮)までが上限
大規模サイトは論理分割(セクション/日付/言語/タイプ別)+サイトマップインデックスで管理し、正規URLのみを列挙、<lastmod>は実更新日に限定します。

画像/動画/ニュースは拡張タグでメタを付与し、ニュースは直近2日・1,000件/ファイル運用が原則です。

分割の基準:いつ・どう分けるか

  • 物理上限
    1ファイル50,000 URLまたは50MB(非圧縮)に達する前に分割。
  • 論理分割
    セクション別(sitemap-posts.xml / sitemap-products.xml)、日付シャーディング(sitemap-2026-01.xml)、言語別(sitemap-ja.xml / sitemap-en.xml)、タイプ別(通常 / 画像 / 動画 / ニュース)。
  • URLの選定
    正規URLのみを列挙(重複やパラメータのバリエーションは含めない)。
  • lastmodの運用
    主要コンテンツや内部リンクの実更新時のみ更新。自動で毎日書き換えない。

推奨構成:サイトマップインデックス設計

サイトルートにサイトマップインデックスを置き、分割した各サイトマップを束ねます(圧縮は .gz 可)。

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap><loc>https://example.com/sitemaps/sitemap-posts-2026-01.xml.gz</loc></sitemap>
  <sitemap><loc>https://example.com/sitemaps/sitemap-posts-2025-12.xml.gz</loc></sitemap>
  <sitemap><loc>https://example.com/sitemaps/sitemap-products.xml.gz</loc></sitemap>
  <sitemap><loc>https://example.com/sitemaps/sitemap-image.xml.gz</loc></sitemap>
  <sitemap><loc>https://example.com/sitemaps/sitemap-video.xml.gz</loc></sitemap>
  <sitemap><loc>https://example.com/sitemaps/sitemap-news.xml.gz</loc></sitemap>
</sitemapindex>

各URLは絶対URLで記述し、サイトルートの /robots.txt にも掲示しておくと検出が早まります:

Sitemap: https://example.com/sitemap.xml

画像サイトマップ(Image)

  • 付与方法: 既存サイトマップに image 名前空間でタグ追加 or 画像専用サイトマップを別作成(どちらでも可)。
  • 1URLにつき最大: 1つの <url>最大1,000枚まで <image:image> を列挙可能。
  • ホスティング: CDN配信でもOKだが、メインとCDNの両ドメインをGSCで検証しておく。
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
  <url>
    <loc>https://example.com/post/123</loc>
    <lastmod>2026-01-20</lastmod>
    <image:image><image:loc>https://img.example.com/123-hero.webp</image:loc></image:image>
    <image:image><image:loc>https://img.example.com/123-diagram.png</image:loc></image:image>
  </url>
</urlset>

動画サイトマップ(Video)

  • 必須タグ サムネイルURL(video:thumbnail_loc)、タイトル、説明、再生URL(video:player_locvideo:content_loc のいずれか)。
  • 到達性 robots.txt・ログイン・ファイアウォールでブロックしない。ストリーミング専用プロトコルは非対応。
  • mRSS代替 mRSSフィードでも可(動画サイトマップの代替)。
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
  <url>
    <loc>https://example.com/tutorials/setup</loc>
    <video:video>
      <video:thumbnail_loc>https://example.com/thumbs/setup.jpg</video:thumbnail_loc>
      <video:title>セットアップ手順</video:title>
      <video:description>5分でわかる初期設定の動画ガイド。</video:description>
      <video:player_loc>https://player.example.com/?v=setup123</video:player_loc>
    </video:video>
  </url>
</urlset>

ニュースサイトマップ(News)

  • 対象: ニュース記事のみ(ブログ全体ではなく、ニュースに該当する記事を抽出)。
  • 新鮮さ: 直近2日以内に公開された記事URLのみ含める運用。
  • 件数上限: 1ファイルあたり最大1,000記事(必要に応じて分割し、サイトマップインデックスで束ねる)。
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
  <url>
    <loc>https://example.com/news/2026/01/26/canonical-policy</loc>
    <news:news>
      <news:publication>
        <news:name>Example News</news:name>
        <news:language>ja</news:language>
      </news:publication>
      <news:publication_date>2026-01-26</news:publication_date>
      <news:title>Googleの正規化ガイダンスまとめ</news:title>
    </news:news>
  </url>
</urlset>

公開・送信とモニタリング

  1. 設置: 生成した sitemap.xml(またはインデックス)を公開。robots.txtSitemap: を記載。
  2. 送信: GSCの「サイトマップ」レポートにインデックス1本を登録(複数あっても可)。
  3. 監視: エラー/警告、処理日時を定期確認。<lastmod>の精度は保ち、無意味な更新はNG。

FAQ

Q. URLは相対パスでも良い?
A. いいえ。絶対URLで記述してください。

Q. 50,000URL/50MBを超えたら?
A. サイトマップを分割し、サイトマップインデックスで束ねます(圧縮可)。

Q. changefreqpriority は?
A. Googleは<lastmod>の整合性を重視します。無関係な頻度/優先度の宣言はインデックス促進の保証にはなりません。

Q. 画像・動画URLが別ドメイン(CDN/動画配信)でも良い?
A. 問題ありませんが、両ドメインをSearch Consoleで検証し、robots.txtでブロックしないこと。

Q. ニュースサイトマップが空になる日がある
A. 仕様上問題ありません(GSCに「空」の警告が出ても想定内)。
 

関連記事

「クロール済み—インデックス未登録」の原因別トリアージ

「代替ページ(適切な canonical あり)」をゼロにする完全ガイド

【SEO対策】インデックスされない原因と解決策