Sitemap generator

Compliant XML sitemap, ready for Google. Free, no upload. 1 GB max · Up to 1 GB · Processed locally, never sent to a server.

A search engine finds pages by following links. The ones no link points to — a recent article, an isolated landing page, a site that has only just gone live — stay unknown for longer than they need to. A sitemap is the list you supply to flag those addresses. This tool takes your URLs pasted one per line and produces the matching XML file, downloadable under the name sitemap.xml.

Every line passes through the address parser built into the browser before it gets written. The https:// prefix is added when it is missing, the domain name is brought down to lower case, a trailing slash completes a bare domain and special characters are encoded. A line that the parser refuses stops the generation and is shown back to you exactly as you typed it.

None of the addresses you paste is visited: the file is assembled by the code of the page, then handed to the download from the memory of the tab. The tool has no idea whether your URLs respond, whether some of them are duplicates, or whether they are indexable at all. Putting the list together is entirely down to you.

How to use it

  1. Paste your addresses, one per line Blank lines are ignored and the protocol stays optional: example.com and https://example.com/ end up identical once normalization has run.
  2. Choose the update frequency Five values are offered, weekly by default, going up to yearly. The "Do not specify" option removes the changefreq tag from the file outright.
  3. Click "Generate sitemap" Validation is strict: if a single address cannot be read, nothing is produced and the offending lines are listed, five at most, so you can fix the input.
  4. Read through the XML shown The file appears in the second box: encoding declaration, urlset container, then one block per address holding loc, lastmod and, where you asked for it, changefreq.
  5. Download or copy the file The "↓ Download sitemap.xml" button saves the file with the type application/xml; the "Copy" button puts the same content on the clipboard for pasting straight onto the server.

Exactly what the file contains

The file opens on an XML declaration in UTF-8, then on a urlset container carrying the sitemaps.org schema namespace in version 0.9. That namespace is not decoration: a file missing it is rejected as non-compliant. Each address then takes up a url block made of a loc tag, a lastmod tag and, if you asked for it, a changefreq tag.

Addresses are escaped before being written: an ampersand becomes the matching entity, and so do angle brackets and quotation marks. That detail matters for URLs carrying parameters, where a raw ampersand makes the XML invalid and causes the whole file to fail on reading. The lastmod date is the day of generation, computed in universal time, and it is the same for every address in the list.

Priority and frequency, two overrated fields

The format provides for a priority tag, scored from 0 to 1. The tool produces none, and that is a choice: Google has publicly stated that it does not use it, just as it does not use changefreq. Both values are declarative and therefore unverifiable, and across a large share of sites they ended up set to the maximum on every page, which drained them of any power to discriminate.

That leaves lastmod, the only one of the three actually taken into account, and only when it holds together. A generation date copied identically onto hundreds of addresses, then refreshed at every export, reports nothing at all. If you want that field to earn its place, replace the dates with those of the real last modifications, or pull the file out of your publishing system.

Format limits and putting the file online

A single sitemap file cannot go past 50,000 addresses or 50 MB uncompressed. Beyond that, the specification requires splitting the list into several files and declaring them in a sitemap index. The addresses listed also have to belong to the same host as the file itself: a sitemap sitting on example.com carries no authority over another-site.com.

The file normally goes at the root, at example.com/sitemap.xml. Two ways of making it known can be used together: a Sitemap line followed by its absolute address in robots.txt, which every engine reads, and a submission in the Sitemaps section of Search Console, which reports read errors and the number of addresses accepted. Accepted does not mean indexed: a sitemap proposes, it compels nothing.

When a static sitemap adds nothing

On a site of a few pages all reachable from the menu, the gain is marginal, since the links are enough for discovery. On a site run by a CMS, a plugin is probably already producing a dynamic sitemap that updates with every publication; a hand-pasted file goes stale with the next article and competes with the generated one. And a sitemap fixes neither a page set to noindex, nor a block in robots.txt, nor content judged too thin: listing an address does not make it indexable.

Frequently asked questions

Why do all my addresses carry the same date?

Because lastmod is filled in with the day of generation, the same for the whole list. For real modification dates, correct them in the file or produce it from your CMS.

The priority tag is missing from the file, is that an oversight?

No, it is deliberately not generated. Google has stated that it does not use it, and a priority declared by the site owner has never carried weight in the order pages are crawled.

A single invalid address blocks the whole generation

That is the intended behaviour: a sitemap containing a malformed address can be rejected in full by the engine. The first five offending lines are displayed so you can go back over them.

Can I mix several domains in the list?

Nothing stops you technically, but the file will only count for the host that serves it. Plan on one sitemap per domain, hosted on the domain it covers.

Should every page on the site appear in it?

No. Keep the list to the canonical addresses that respond normally and that you want indexed, leaving out redirects, noindex pages, duplicates and addresses carrying sort parameters.

Does the file have to be compressed?

It is not required. Gzip compression is accepted by search engines and becomes useful on long lists; the tool delivers plain XML here, which you can compress yourself before uploading.

Similar tools

Discover other tools

Categories