A sitemap is a file that lists the pages of your website you want search engines to find, crawl, and index. The kind that matters for SEO is the XML sitemap, a machine-readable list of URLs with their last-modified dates that you hand to Google directly. There is also the HTML kind, a regular page of links built for human visitors, and the two solve different problems. This post covers the whole subject: the formats search engines accept, the 50,000 URL and 50MB limits and how index files stretch past them, what Google actually reads in the file and what it ignores, the submission workflow in Search Console, and the habits that keep a sitemap useful instead of decorative.
The short version
- An XML sitemap lists the URLs you want indexed, ideally with honest lastmod dates.
- Limits are 50,000 URLs and 50MB uncompressed per file; a sitemap index chains files together.
- Google ignores priority and changefreq, and trusts lastmod only when it stays accurate.
- Submit in Search Console, reference it in robots.txt, and keep only canonical 200-status URLs inside.
- A sitemap aids discovery; it does not force indexing and it is not a ranking factor.
What an XML sitemap looks like
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.example.com/</loc>
<lastmod>2026-08-02</lastmod>
</url>
<url>
<loc>https://www.example.com/services/</loc>
<lastmod>2026-06-14</lastmod>
</url>
</urlset> That is the whole format. The file must be UTF-8 encoded, each url entry holds one absolute address inside a loc element, and lastmod holds the date the page content last changed. Everything else the protocol allows is optional, and the two best-known options, priority and changefreq, are dead weight: Google has said it ignores both. The URLs must live on the same host as the sitemap unless you prove ownership of both sides, either through Search Console verification or by pointing at the file from the other host's robots.txt.
The highest-value habit in this entire topic is an honest lastmod. Google uses the field to decide what to recrawl, but only after the dates prove trustworthy, and a generator that stamps today's date on every URL at every build teaches Google to ignore yours. Wire lastmod to real content changes or leave it out; a missing date beats a lying one.
The formats search engines accept
| Format | What it is | When it fits |
|---|---|---|
| XML urlset | The standard sitemap, URLs plus lastmod | Almost every site, the default choice |
| Sitemap index | A sitemap of sitemaps | Sites past 50,000 URLs, or anyone splitting by section |
| Plain text file | One absolute URL per line, nothing else | Quick jobs and generated lists; no lastmod support |
| RSS or Atom feed | Your blog feed doing double duty | Fresh content discovery; only covers recent posts |
All four can be served gzipped to save bandwidth, though the 50MB limit applies to the uncompressed size. In practice the XML urlset wins because it is the only everyday format that carries lastmod, and lastmod is the only optional field Google respects. The feed option is worth knowing for one pattern: submitting both a full XML sitemap and the blog feed, so new posts surface through the feed quickly while the sitemap covers the whole archive.
The limits and how index files work
One sitemap holds up to 50,000 URLs and 50MB uncompressed. Past either limit you split the URLs across multiple sitemap files and list those files in a sitemap index, which is itself just a sitemap of sitemaps and can reference up to 50,000 of them. An index cannot list another index, so the structure stays one level deep. The format mirrors the urlset exactly:
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://www.example.com/sitemap-pages.xml</loc>
<lastmod>2026-08-02</lastmod>
</sitemap>
<sitemap>
<loc>https://www.example.com/sitemap-blog.xml</loc>
<lastmod>2026-08-10</lastmod>
</sitemap>
</sitemapindex> Splitting is worth doing long before any limit forces it. Search Console reports indexing coverage per submitted sitemap, so a site that splits into sitemap-pages, sitemap-blog, and sitemap-products can see at a glance that products index at 95 percent while blog posts languish at 60, instead of staring at one blended number. On large sites that per-section readout is the cheapest indexing diagnostic available, and it is the main reason serious platforms generate an index file even at a few thousand URLs.
What Google reads and what it ignores
Google reads loc and lastmod, and treats the whole file as a hint rather than a command. It ignores priority and changefreq entirely. It also retired the ping endpoint that generators used to call after each build; announced in mid-2023, the shutdown means resubmitting is now pointless as a routine and the working pattern is simple: Google refetches known sitemaps on its own schedule, so keep the file at a stable URL and let the honest lastmod values inside it carry the news. A sitemap also feeds more than the URL list. Multilingual sites can carry hreflang annotations in it, and the specialized variants below carry image and video details. None of it changes rankings; all of it changes how completely and how quickly your pages get found.
Who actually needs one
Google discovers pages by following links, so a small site with clean internal linking gets found either way. The sitemap starts earning its keep when discovery gets hard: sites with thousands of pages, new sites that few people link to yet, deep archives that internal links barely reach, pages rendered in ways crawlers struggle to follow, and sites that publish or update fast enough that waiting for a natural recrawl costs real traffic. It also buys you the page indexing report in Search Console, which compares what you said matters against what Google chose to index. That report is where indexing problems surface first, and without a submitted sitemap you never get it.
The special-purpose variants
- Image sitemaps surface images that load through scripts and galleries, and can list up to 1,000 images per page.
- Video sitemaps carry duration, description, and thumbnail data for video content you want in video results.
- News sitemaps are required plumbing for Google News publishers and only cover articles from the last 48 hours.
Most sites need none of these. A single well-maintained sitemap.xml, regenerated automatically on every publish, covers the typical business site completely. WordPress generates one natively and every major SEO plugin refines it; so do Shopify, Wix, and Squarespace, and static generators like the one this site runs on build it at deploy time.
How to submit it and keep it healthy
-
Find your sitemap URL
Usually your-domain.com/sitemap.xml or sitemap_index.xml. If nothing loads there, your platform's SEO settings will say where it lives.
-
Submit it in Search Console
Sitemaps, paste the URL, submit. Google reports how many of the listed URLs it has indexed, and the gap between the two numbers is your work list.
-
Reference it in robots.txt
A single Sitemap line with the full URL hands the list to Bing and every other crawler without a webmaster account, and it is standard practice in a clean robots.txt file.
-
Submit to Bing too
Bing Webmaster Tools accepts the same file and can import your verified sites straight from Search Console, which makes the second submission a two minute job.
-
Keep the list clean
Only canonical, indexable, 200-status URLs belong. Redirects, noindexed pages, and dead URLs in a sitemap are contradictions that erode Google's trust in the file.
What a sitemap cannot do
A sitemap is an invitation list, not a command. Listing a URL does not force Google to index it; pages still have to clear the same quality bar as everything else, and thin pages stay out of the index no matter how prominently the sitemap features them. It cannot rescue a page that robots.txt blocks or that carries a noindex tag, since the file only suggests where to crawl. And it is not a substitute for internal links: a page reachable only through the sitemap, with no links pointing at it, is telling Google that even its own site does not consider it important. Discovery through the sitemap plus prominence through internal linking is the combination that gets pages indexed.
The fastest read on sitemap health takes one minute: open the page indexing report and compare submitted against indexed. A wide gap is never the sitemap's fault; it is Google declining pages, and the listed reasons, duplicates, soft 404s, crawled but not indexed, are your actual technical to-do list.
Where the HTML sitemap still fits
The old-fashioned links page is not an SEO tool anymore, but on large sites it still helps visitors find deep pages, and it gives every page on the site one more internal link path. If you build one, build it for people, organized by topic, not as a URL dump. The XML file remains the one search engines care about, and keeping it accurate belongs to the same routine as your redirects and crawl rules, which is to say technical SEO.
Questions people ask about sitemaps
Does every website need a sitemap?
Strictly, no. Google can find a small, well-linked site without one. But a sitemap costs nothing, most platforms generate it automatically, and it becomes genuinely important for large sites, new sites with few backlinks, and pages that are weakly linked internally.
How big can an XML sitemap be?
Up to 50,000 URLs and 50MB uncompressed per file. You can gzip the file to save bandwidth, but the uncompressed size still has to fit the limit. Bigger sites split URLs across several sitemaps and list them in a sitemap index file, which can itself reference up to 50,000 sitemaps.
Is a sitemap a ranking factor?
No. A sitemap helps Google discover and recrawl your URLs; it does not make any of them rank better. Listing a page is not even a guarantee of indexing, only an invitation. Rankings come from the quality, relevance, and links of the pages themselves.
Do priority and changefreq matter?
No. Google has said publicly that it ignores both fields. The lastmod date is the one it uses, and only when it proves consistently accurate. Generators that fill every page with priority 0.8 are decorating, not helping.
How do I submit a sitemap to Google?
Open Search Console, choose Sitemaps in the left menu, enter the sitemap URL, and submit. Add a Sitemap line to robots.txt as well so every other crawler finds it without an account. The old trick of pinging google.com/ping was retired and no longer works.
Should URLs I do not want indexed be in the sitemap?
No. The sitemap is your statement of which pages matter. Listing redirected, noindexed, or 404 URLs sends Google contradictory signals, and Search Console will report the mess back to you as errors.