What this sitemap generator does
This XML sitemap generator starts at the URL you enter, follows the links it finds on the same host, and records each page. A page goes into the sitemap when it answers with a 2xx status and is not marked noindex or canonicalized to another URL. Everything else is listed with the reason it was left out, so the crawl doubles as a quick site audit.
It is a free sitemap generator that crawls up to 20,000 pages, with no account. By default a crawl stops at 500 pages or 2 clicks from the start page. Raise Stop after and set Max depth to No limit for a larger site. Small sites finish in seconds. A crawl of thousands of pages can take an hour or more, and the progress panel shows how far it has got. The files can be downloaded at any time, even mid-crawl.

Create a sitemap in four steps
- Enter the home page and open the options if you want limits, exclusions, or a slower speed.
- Start the crawl. robots.txt is read first, and the site's current sitemap if it has one.
- Check the Issues tab for broken links, redirects, and pages left out on purpose.
- Download sitemap.xml, upload it to the root of the site, and submit it.
What goes into sitemap.xml
Each url entry has a loc. A lastmod date is added when the page publishes a modified time in article:modified_time, og:updated_time, or dateModified, or when the server sends a Last-Modified header. Google says it uses lastmod when the value is consistently accurate, so no date is invented when neither source has one.
priority and changefreq are off by default, because Google documents that it ignores both. They can be turned on for other search engines or tools that read them. Priority is set from click depth: 1.00 for the start page, then 0.80, 0.64, and so on.
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>https://www.example.com/field-notes</loc>
<lastmod>2026-10-28</lastmod>
<image:image>
<image:loc>https://www.example.com/images/notes.jpg</image:loc>
</image:image>
</url>
</urlset>Image sitemap tags
With images turned on, each page lists the images in its HTML as image:image entries, which makes the file an image sitemap as well. Only image:loc is written. Google stopped using the caption, title, license, and location tags of the image extension, so they are left out.
Large sites and the sitemap index
The sitemap protocol allows 50,000 URLs and 50 MB uncompressed per file. When a crawl finds more, the generator writes sitemap-1.xml, sitemap-2.xml, and so on, and sitemap.xml becomes the sitemap index that lists them. Submit the index, and the search engine reads the files inside it. The index can also be named sitemap_index.xml.
Split a sitemap into sections
A site does not have to reach 50,000 URLs to use an index. Under Sitemap index and sections, the sitemap index generator can give each part of the site its own file:
- Sections by folder puts
/blog/pages insitemap-blog.xmland/tools/pages insitemap-tools.xml. With two folder levels,/blog/freelancing/getssitemap-blog-freelancing.xml. Folders smaller than the chosen size, and pages outside any folder, go intositemap-main.xml. - Sections from my rules takes one line per file, such as
freelancing: /category/freelancing/ordevelopment: /category/development/. The first rule that matches a URL wins, and every other URL goes into the main file.
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap><loc>https://www.example.com/sitemap-main.xml</loc></sitemap>
<sitemap><loc>https://www.example.com/sitemap-blog.xml</loc></sitemap>
<sitemap><loc>https://www.example.com/sitemap-tools.xml</loc></sitemap>
</sitemapindex>A section that passes 50,000 URLs is split again into numbered files, such as sitemap-blog-1.xml. Each index entry carries the newest lastmod of the pages in that file. In Google Search Console, the Sitemaps report lists every file in an index on its own, and the Page indexing report can be filtered by sitemap, which shows which section of the site has indexing problems.
All files, including a sitemap.txt list, an HTML sitemap page grouped by folder, and a CSV crawl report, can be downloaded one by one or together as a ZIP.
robots.txt, sitemap location, and submission
Upload the files to the root of the site. The protocol limits a sitemap to URLs in its own folder and below, so the root covers the whole host. Then add a robots.txt sitemap line, which lets any crawler find the file without being told:
Sitemap: https://www.example.com/sitemap.xmlSubmit the same address in Google Search Console and Bing Webmaster Tools. The generator shows the exact line for your host once the files are ready. After the upload, the sitemap validator reads the live file and confirms it matches the protocol.
What the crawl checks along the way
- Broken links: 4xx and 5xx responses and failed requests, with the page that links to each one.
- Redirects: linked URLs that send visitors elsewhere, and where they go. The redirect checker traces one of them hop by hop.
- noindex pages and pages whose canonical points to another URL.
- URLs blocked by robots.txt.
- Missing and duplicate titles. The meta tag checker reads the full head of any one page.
- Slow responses over 3 seconds.
- Pages listed in the current sitemap that no crawled page links to.
Limits of the crawl
- JavaScript is not run, so links that only appear after a script runs are found only through the current sitemap.
- Only the host of the start page is crawled. www and non-www count as different hosts, and the crawler follows the redirect from the address you enter.
- Localhost and private network addresses are refused.
- The crawl runs from this tab. Closing it ends the crawl, and nothing is saved on the server.
- Sites that block automated requests can return errors for pages that open fine in a browser.