Free Online Tool

XML Sitemap Generator

Crawl any website and get a ready-to-upload sitemap.xml — up to 500 pages, with lastmod dates, priorities and clean URLs. No installation, no sign-up.

A sitemap is a list of the URLs on your site that you want search engines to know about. It does not make pages rank, and it does not replace good internal linking — but it does make discovery faster and more complete, especially for pages buried deep in the structure or recently published.

Enter a starting URL and this crawler follows your internal links, collects what it finds, and hands back a valid sitemap.xml you can upload straight to your web root.

Crawling the website…

This may take 30–90 seconds depending on site size. Please wait.

Enter any website URL and we'll crawl it for you — discover every internal page (up to 500) and download a Google-ready sitemap.xml in one click.

How to use the Sitemap Generator

  1. Enter your homepage URL

    Use the canonical version — if your site redirects to www and https, start there, so the crawler collects the URLs Google actually indexes rather than a set of redirects.

  2. Start the crawl and let it work

    The crawler follows internal links outward from the starting page. Larger sites take longer; it stops at 500 URLs.

  3. Review the URL list before downloading

    Look for anything that does not belong — tag archives, search result pages, paginated duplicates, test pages. A sitemap full of low-value URLs sends a weak signal.

  4. Download sitemap.xml

    The file is valid against the sitemaps.org schema and ready to upload as-is.

  5. Upload to your web root

    It must sit at yoursite.com/sitemap.xml. Anywhere else and search engines will not find it by convention.

  6. Submit it and reference it in robots.txt

    Add the file in Google Search Console and Bing Webmaster Tools, and add a Sitemap: line with the absolute URL to your robots.txt.

What this tool does

Crawls up to 500 pages from any starting URL Follows internal links automatically Adds lastmod, changefreq and priority Skips external links, assets and blocked paths Downloads a valid, ready-to-upload sitemap.xml No installation and no account needed

What a sitemap does — and does not do

A sitemap is a discovery aid. It tells search engines "these URLs exist, here is when each changed". That is the whole job.

It does not make pages rank. It does not guarantee indexing — Google treats a sitemap as a hint, not an instruction, and routinely declines to index URLs listed in one. And it does not fix a badly structured site. If a page is reachable only from a sitemap and from nowhere else on your site, that tells Google the page is not important enough for you to link to, which is not the message you want.

Where it genuinely helps: brand-new sites with few inbound links, large sites where pages sit five clicks deep, sites with thin internal linking, recently published pages you want found quickly, and any site that has just been migrated.

The anatomy of the file

<?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-09-14</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
</urlset>

Only <loc> is required, and it must be a full absolute URL. lastmod is the one optional field Google actually pays attention to — but only if it is accurate. If every URL claims it was modified today, Google learns to ignore the field entirely for your site.

Be realistic about the other two. Google has stated plainly that it ignores changefreq and priority. They remain in the spec, other crawlers may read them, and they do no harm — just do not expect them to influence anything at Google.

What belongs in it

The principle: a sitemap should list the canonical, indexable URLs you would be happy to see in search results. Nothing else.

Include: your homepage, service and product pages, published blog posts, category pages that offer real value, and any landing page you want found.

Exclude:

  • Pages carrying a noindex tag — listing them sends contradictory instructions
  • URLs that redirect — list the destination instead
  • Non-canonical duplicates, including parameter variants
  • Internal search result pages
  • Thin tag archives that exist only because the CMS created them
  • Login, cart, checkout and thank-you pages
  • Anything returning a 404 or 500

That last group matters more than it looks. Google Search Console reports errors for sitemap URLs that cannot be indexed, and a sitemap that is half errors degrades trust in the whole file.

Limits and splitting

A single sitemap can hold 50,000 URLs or 50 MB uncompressed, whichever comes first. Above that, split into multiple files and reference them from a sitemap index — a small file that lists other sitemaps rather than URLs.

Even well below the limit, splitting by content type is worth doing on larger sites. Separate sitemaps for pages, blog posts and products mean Search Console reports indexing coverage per group, so you can see at a glance that your products are indexing fine while your blog is not. That diagnostic split is the real benefit, not the size limit.

After you upload

  1. Confirm it loads. Open yoursite.com/sitemap.xml in a browser. If you see XML, you are set. If you see a 404, it is in the wrong place.
  2. Add it to robots.txt. One line: Sitemap: https://www.example.com/sitemap.xml. Use the absolute URL, and place it anywhere in the file.
  3. Submit in Search Console. Sitemaps → enter the path → Submit. Do the same in Bing Webmaster Tools.
  4. Check back in a week. The sitemap report shows discovered versus indexed counts. A large gap is the interesting number — it means Google found your pages and chose not to index them, which points at content quality or duplication rather than discovery.

Static file or dynamic route?

A crawled, downloaded file is a snapshot. It is perfect for a brochure site that changes a few times a year, and for auditing a site you do not control.

For anything that publishes regularly, generate the sitemap dynamically from your database instead, so new posts appear the moment they are published. Most CMS platforms do this already; on a custom PHP site it is a short script mapping your published rows to <url> entries. Use this tool to verify that the dynamic output is complete and correct — crawl the site, compare the URL list against your generated sitemap, and investigate anything that appears in one but not the other.

Why the crawl might miss pages

The crawler follows links in your HTML. Pages it will not find include anything linked only through JavaScript that runs after load, anything behind a form or a login, orphan pages with no inbound internal links at all, and paths blocked by robots.txt.

If pages are missing from the crawl, that is diagnostic rather than a tool failure — Googlebot discovers pages the same way. An orphan page that this crawler cannot reach is very likely a page Google is not finding either, and the fix is a link to it from somewhere in your navigation, not an entry in a sitemap.

Frequently asked questions

Does a sitemap help my site rank higher?
No. A sitemap helps search engines discover URLs — it has no direct effect on ranking. It is most valuable for new sites, large sites with deep pages, recently published content, and sites that have just migrated.
Where does the sitemap file have to go?
At your web root, as yoursite.com/sitemap.xml. Anywhere else and search engines will not find it by convention. After uploading, add a Sitemap: line with the absolute URL to your robots.txt as well.
How many URLs can one sitemap contain?
Fifty thousand URLs or 50 MB uncompressed, whichever comes first. Above that, split into several files and list them in a sitemap index. Splitting by content type is worth doing earlier, because Search Console then reports indexing coverage per group.
Should I include noindex pages in my sitemap?
No. Listing a noindex page sends contradictory instructions and produces errors in Search Console. A sitemap should contain only canonical, indexable URLs you want in search results.
Do changefreq and priority actually do anything?
Google has stated it ignores both. They remain valid in the spec and other crawlers may read them, so they do no harm — just do not expect them to influence Google. The lastmod field does matter, provided it is accurate.
Why are some of my pages missing from the crawl?
The crawler follows links in your HTML, so it misses pages linked only via JavaScript, pages behind forms or logins, orphan pages with no internal links, and paths blocked by robots.txt. That is useful information — Googlebot discovers pages the same way.
Should I use a static file or generate the sitemap dynamically?
A static file is fine for a brochure site that rarely changes. Anything publishing regularly should generate the sitemap from the database so new content appears immediately. Use this crawler to verify the dynamic output is complete.
Google says my sitemap URLs are "discovered but not indexed" — why?
That gap means Google found the pages and chose not to index them, which usually points at thin content, duplication or a canonical pointing elsewhere. It is a content problem, not a sitemap problem.