Sitemap Diff Checker
After a redesign, a migration or a CMS update, which pages disappeared from the sitemap, and which are new? Paste the old and the new sitemap, or two plain lists, and get the difference.
Changes
+1 / −1
2 unchanged · 3 old · 3 new
Added (1)
- https://example.com/blog/new-post
Removed (1)
- https://example.com/blog/old-post
How it works
- Paste the old sitemap, either the XML or one URL per line, into the first box.
- Paste the new one into the second box.
- Choose whether a trailing slash makes two addresses different.
- Read the added and removed lists and copy them for your redirect plan.
What people use it for
After a migration
Confirm that every old URL is still in the new sitemap or has a planned redirect.
Auditing a release
See exactly which pages a deployment added or dropped.
Comparing exports
Compare two crawls or two lists of addresses without a spreadsheet.
Questions
- What does it compare?
- Only the addresses. In an XML sitemap the content of each <loc> tag is read (with & and CDATA decoded); if no tag is found the text is read as one URL per line. Dates, priorities and alternate-language entries are ignored. An address counts as the same when it is written the same way, apart from the options below.
- What counts as the same address?
- The part after # is ignored, and so is the case of the domain name. With the option on, a trailing slash is ignored as well, so /about and /about/ match; with it off they differ, which is what you want to know if your site treats them differently. The case of the path always counts, because paths are case-sensitive on most servers. A query string such as ?page=2 is part of the address.
- What about sitemap index files?
- An index lists other sitemaps, not pages. Compare the index files themselves to see which sitemaps were added or dropped, then compare each pair of sitemaps. The tool does not fetch anything: it only reads what you paste.
- Is there a size limit?
- A single sitemap can hold at most 50,000 URLs under the sitemaps protocol, and the tool says so when a side goes over. Up to 5 million characters of each box are read. Nothing is uploaded.