Sitemap XML Builder & Validator
Create sitemap XML from a list you control, or check an existing local XML document. Review real URLs and dates without crawling or submitting a site.
Ctrl / ⌘ + Enter to run
Example URLs are loaded. Replace them with your actual canonical URLs before building.
256 KiB UTF-8 input/output · Up to 1,000 entries · No URLs fetched
Validation covers the supported core sitemap structure. It does not establish URL availability, ownership, canonical status, crawl access or indexing. XML validation produces normalized output; it does not preserve source formatting or comments.
Build a sitemap from an explicit inventory
- Choose a URL list or CSV. A list contains one absolute page URL per line; a sitemap index instead lists the URLs of your sitemap files.
- Optionally supply the URL where this XML will be published. It lets the tool check origin and directory scope.
- Build, review and download the XML. To check an existing file, switch to Validate existing XML and paste or load its UTF-8 text.
CSV columns and honest modification dates
A comma-delimited CSV must start with loc. Optional unique
columns are lastmod, changefreq and priority. Standard quoted fields and doubled quote escaping
are parsed with Papa Parse. Each row must match the header width. Blank
optional cells are omitted. For example:
loc,lastmod
https://example.com/,
https://example.com/article,2025-01-15
The illustrated date is fictional. lastmod means when the
referenced page changed, not when this tool ran. For an index, it
describes the referenced sitemap file. Supply a real YYYY-MM-DD date or a
date-time with an explicit zone, optional seconds and at most millisecond
precision. Omit a date you do not know. Year-only, month-only, zone-free
times and leap seconds are outside this tool’s supported subset.
URL sets, indexes and protocol limits
A urlset contains page entries; a sitemapindex
references separate sitemap files. This tool supports both core structures
in http://www.sitemaps.org/schemas/sitemap/0.9. Image, video,
news, alternate-language and other extensions are intentionally outside
its scope and are rejected rather than silently discarded.
The sitemap protocol allows up to 50,000 URLs and 50 MB uncompressed per sitemap; this tool deliberately limits input and output to 256 KiB UTF-8 and 1,000 entries. It rejects location URLs of 2,048 characters or more after normalization. XML tree depth is limited to four below the document node, with 20,000 nodes. Large collections should be split with another workflow and referenced from an index.
Origins, duplicates and escaping
Entries must share a scheme, hostname and port. If a published location is supplied, entries must also belong to its directory or a descendant. Cross-site ownership/submission arrangements are outside this local checker. Standard URL serialization handles Unicode and host normalization, then duplicate serialized URLs are rejected. Redirects and alternate URLs that a server treats as equivalent cannot be detected without inspecting that server.
Provide literal URLs in lists and CSV, including a normal ampersand in
query strings. Generated XML escapes ampersands and other XML characters.
In pasted XML, use predefined escapes such as & or
numeric character references. Whitespace, credentials, fragments,
malformed percent escapes and non-HTTP(S) schemes are rejected in
locations.
What does XML validation mean here?
The browser’s native XML parser checks well-formedness in a separate document. The tool then checks the root namespace, supported nesting, single required location per entry, optional fields, dates, duplicates and URL scope. Prefixes are accepted when they resolve to the correct namespace. DTD/entity declarations are rejected before parsing. Processing instructions and unsupported attributes are rejected, and no schema file or listed URL is fetched. A schemaLocation annotation may be present on the root but is not resolved.
This is a check of the supported core model, not complete XSD validation or a search-engine submission check. Parsing is synchronous native browser work and cannot be interrupted midway; the small input cap limits its scope. A malformed XML message may include the browser’s line and column; semantic issues identify an entry or field. Accepted XML is rebuilt with normalized URLs, standard field order and escaped text.
Will this make Google index my URLs?
A sitemap can help discovery, but submitting one does not guarantee
crawling or indexing. This page neither crawls nor submits anything.
Google ignores changefreq and priority; the
URL-set builder accepts them only as optional protocol fields. It never
adds them or a modification date automatically.
Read the official Sitemaps protocol , Google sitemap guidance , and W3C date-time profile . Native parsing behavior is documented by MDN DOMParser .