XML Sitemap Plan Template

Free editable XML Sitemap Plan Template. Copy, personalize, or download the Word .docx template from UNmiss.

An XML sitemap is a discovery aid that lists the URLs you want search engines to crawl, but it does not force indexing. This template helps you decide which URLs belong in the file, structure large sitemaps within official limits, keep lastmod accurate, and submit and monitor everything so coverage stays clean. Work through the variant that matches your current task, then run the QA checklist before every release.

6 ready-to-use variants

What to Include / Exclude

Decide exactly which URLs belong in your sitemap so you only signal your best, indexable pages.

Include only canonical, indexable, 200 URLs

A sitemap is a shortlist of the URLs you want indexed, so it must contain only pages that genuinely qualify. List a URL only when it is the canonical version, returns a 200 status, and is open to indexing.

Define your inclusion rules:

  • [Property] Self-referencing canonical & no noindex directive
  • [Property] HTTP 200 only, no redirects (3xx) or errors (4xx/5xx)
  • [Property] Single absolute URL, consistent protocol & host

Exclude anything that dilutes the signal:

  • [Exclude] Noindexed, robots-blocked, or paywalled pages
  • [Exclude] Parameter, filter, and session-ID duplicates
  • [Exclude] Non-canonical variants, redirect targets, and 404s

Document the URL source you generate from (CMS export, database query, or crawl) so the list rebuilds the same way each time.


A clean, consistent list tells search engines you maintain quality control. Mixed or broken URLs erode that trust.

Sitemap Structure & Splitting

Keep large sites within sitemap limits by splitting files and tying them together with a sitemap index.

Respect the 50,000 URL and 50MB limits

Each sitemap file is capped at 50,000 URLs and 50MB uncompressed. Hit either limit and you must split into multiple files referenced by a sitemap index.

Plan your structure:

  • [Total URLs] Count canonical, indexable URLs to map file count
  • [Split logic] Group by content type, section, or template
  • [Naming] Predictable pattern, e.g. sitemap-products-1.xml

Then build the index:

  1. Create one index file that lists each child sitemap location.
  2. Keep child files under both limits, gzipping large ones to ease transfer.
  3. Submit the index URL (not every child) in Search Console.

Grouping by section also makes monitoring easier: if one segment shows coverage drops, you can isolate which sitemap it lives in.


Set [Owner] to keep file counts and splits updated as the site grows past each threshold.

Specialized Sitemaps (Image, Video, News)

Surface media and time-sensitive content with the right specialized sitemap extensions.

Use extensions for image, video, and news

When standard URL discovery is not enough, specialized sitemaps add structured detail for specific content types. Add them only when you publish that content type.

Image sitemaps help surface visuals tied to a page:

  • [Field] Image location URL for each key image on the page
  • [Scope] Only meaningful content images, not UI assets

Video sitemaps describe each hosted video:

  • [Field] Thumbnail URL, title, description, and content/player URL

News sitemaps cover recent articles for Google News:

  • [Field] Publication name and accurate publication date
  • [Rule] Include only articles from the last 48 hours

Define which extension applies:

  • [Content type] Image / video / news
  • [Source feed] Where the media metadata is generated from

Keep media URLs canonical and 200 too: the same quality rules apply across every sitemap type.

lastmod & Accuracy

Use accurate lastmod values so crawlers can prioritize genuinely changed pages.

Keep lastmod truthful; skip changefreq and priority

The lastmod value tells crawlers when a URL meaningfully changed. Google trusts it only when it is consistently accurate, so it must reflect real content updates, not a build timestamp or a daily blanket refresh.

Google ignores changefreq and priority, so do not rely on them to influence crawling; an accurate lastmod is the signal that matters.

Set your accuracy rules:

  • [Source] Pull lastmod from the content's true update date
  • [Format] Valid W3C datetime (date or full timestamp)
  • [Trigger] Update only on substantive content changes

Avoid common mistakes:

  • [Don't] Stamp every URL with today's date on each deploy
  • [Don't] Bump lastmod for trivial template or footer edits

If every URL claims to change daily, the signal becomes noise and crawlers learn to ignore it. Set [Validation] to spot-check lastmod against real edit history each release.

Submit & Reference

Make sure search engines can find your sitemap via robots.txt and Search Console.

Reference in robots.txt and submit in Search Console

Even a perfect sitemap is useless if engines cannot find it. Expose it in two places so discovery is reliable.

First, add the directive to robots.txt:

  • [Directive] Sitemap: full absolute URL to your sitemap or index
  • [Rule] Use the index URL if you split into multiple files
  • [Check] URL is absolute, lives at the domain root, returns 200

Second, submit in Google Search Console:

  1. Open the Sitemaps report for the correct property.
  2. Enter the sitemap (or index) path and submit.
  3. Confirm status reads Success and review discovered URL counts.

Repeat the submission step in Bing Webmaster Tools if Bing traffic matters to you.


Record where the sitemap is referenced under [Locations] so future audits confirm both signals stay live.

Sitemap QA & Monitoring

Catch coverage errors and stale URLs before they hurt indexing.

Validate, then monitor coverage errors

A sitemap needs ongoing QA because URLs change, redirect, and disappear over time. Build a recurring check so the file stays trustworthy.

Pre-publish validation:

  • [Check] Well-formed XML, correct namespace, under 50k URLs & 50MB
  • [Check] Every URL returns 200, is canonical, and is indexable
  • [Check] No redirects, 404s, noindex, or blocked URLs slipped in

Ongoing monitoring in Search Console:

  • [Metric] Submitted vs. indexed URL counts per sitemap
  • [Alert] Coverage errors, e.g. redirects or 404s reported
  • [Cadence] Review weekly or after each major release

Remember a sitemap aids discovery but does not guarantee indexing: investigate why valid URLs stay unindexed rather than re-submitting blindly.


Assign [Owner] and a [Review date] so monitoring never lapses.

How to use this template

  1. Generate a list of every canonical, indexable URL that returns a 200 status, pulled from your CMS, database, or a fresh crawl.
  2. Remove all noindexed, redirected, 404, robots-blocked, and non-canonical URLs so only index-worthy pages remain.
  3. Add an accurate lastmod value to each URL based on its true content update date, and skip changefreq and priority since Google ignores them.
  4. Count your URLs and, if you exceed 50,000 URLs or 50MB uncompressed in any file, split into multiple sitemaps under both limits.
  5. Create a sitemap index file that references each child sitemap when you have more than one sitemap file.
  6. Add image, video, or news sitemap extensions only for the content types you actually publish, keeping those media URLs canonical and 200.
  7. Add a Sitemap directive in robots.txt pointing to the absolute URL of your sitemap or sitemap index, and submit the same URL in Google Search Console.
  8. Validate the XML and monitor the Search Console Sitemaps and coverage reports on a regular cadence, fixing errors like redirects or 404s as they appear.

Pro tips

  • List only canonical, indexable URLs that return 200 - a sitemap is a quality signal, so never include redirects, 404s, noindexed, or non-canonical pages.
  • Keep lastmod honest: bump it only on real content changes, because stamping every URL with today's date trains crawlers to ignore the signal.
  • Submit your sitemap index URL rather than each child file, and reference it in robots.txt so engines discover it even without a manual submission.
  • Treat a sitemap as a discovery aid, not an indexing guarantee - if valid URLs stay unindexed, diagnose page quality or duplication instead of resubmitting.

Frequently asked questions

What URLs should I include in my XML sitemap?

Include only canonical, indexable URLs that return a 200 status code. Exclude anything that is noindexed, redirected, returns a 404 or 5xx error, is blocked by robots.txt, or is a non-canonical duplicate, since those weaken the quality signal your sitemap sends.

What are the size limits for a single sitemap file?

Each sitemap file is capped at 50,000 URLs and 50MB uncompressed. If you exceed either limit, split your URLs across multiple sitemap files and reference them all from a single sitemap index file.

Do changefreq and priority tags actually help?

No. Google ignores both changefreq and priority. Focus your effort on an accurate lastmod value, which reflects when a URL's content genuinely changed and is the only one of these signals Google may use to prioritize crawling.

How do I submit my sitemap to search engines?

Add a Sitemap directive in your robots.txt file pointing to the sitemap's absolute URL, and submit the same URL in the Sitemaps report in Google Search Console. If Bing traffic matters, also submit it in Bing Webmaster Tools.

Will adding a URL to my sitemap guarantee it gets indexed?

No. A sitemap is a discovery aid that helps search engines find your important URLs, but it does not guarantee indexing. Pages still need to meet quality and relevance thresholds, so investigate page quality or duplication if valid URLs remain unindexed.

When should I use an image, video, or news sitemap?

Use specialized sitemaps only when you publish that content type. Image and video sitemaps add structured metadata to help surface media, while news sitemaps cover articles published in the last 48 hours for Google News. The same canonical, 200-status rules apply to those URLs.