Sitemap Generator

Paste a list of URLs, get back a valid sitemap.xml with optional change frequency, priority, and last-modified date.

Include lastmod (today's date)
Stamps every URL with today's date as the last-modified value.

sitemap.xml


          
        

How it works

Your input is split on newlines, trimmed, and each line is validated by actually constructing a URL object from it; only lines that parse and use http: or https: make it in, and the tool tells you how many lines it skipped rather than silently eating them. Every accepted URL is run through an XML escaper covering all five special characters (&, <, >, ", '), which matters more than it sounds: a URL with ?page=2&sort=asc in a sitemap without escaping is invalid XML and some parsers will reject the whole file. Each entry gets a <loc>, optionally a <lastmod> stamped with today's date in YYYY-MM-DD form, and optionally the changefreq and priority you picked, all wrapped in a <urlset> with the sitemaps.org 0.9 namespace and an XML declaration up top.

Here's the part most sitemap tools won't tell you: Google has publicly said it ignores <changefreq> and <priority> entirely. They exist in the spec, this tool supports them, but they don't do anything for Google. The one optional field that does matter is <lastmod>, and only if it's truthful. That cuts both ways: if you regenerate your sitemap weekly and every URL gets stamped with the generation date, Google learns your lastmod is noise and starts ignoring it. Include it when the dates mean something, skip it when they don't. Also keep the hard limits in mind: 50,000 URLs and 50 MB uncompressed per sitemap file before you need an index file.

Generation, validation, and the download all run in this page's JavaScript. The XML is built as a string in memory and handed to you as a Blob; your URL list is never uploaded, which you can verify by watching the Network tab while you generate.

Common questions

Do I need changefreq and priority?

No, both are optional hints, and Google has said for years it largely ignores priority and treats changefreq loosely at best. Include them if another crawler you care about uses them, otherwise a plain URL list with lastmod is perfectly valid.

What counts as a valid URL here?

Any line that parses as a full http:// or https:// URL. Relative paths or lines missing the protocol are skipped and called out in the result message so you know what got left out.

Is there a limit to how many URLs I can add?

The sitemap protocol caps a single file at 50,000 URLs, this tool doesn't enforce that limit itself, but if you're near it, consider splitting into multiple sitemap files with a sitemap index.