Skip to main content

Sitemap Visualizer

See every URL a sitemap holds.

How to use the Sitemap Visualizer, step by step

Real screenshots of the current tool, using sample inputs. Long results are shown as a preview.

  1. 1

    Find the field

    The tool takes one address: a sitemap URL, or any page on the site.

    Sitemap Visualizer in its default state before the walkthrough
  2. 2

    A page URL in place

    A page URL works as well as a sitemap URL. The tool finds the sitemap through robots.txt or the usual /sitemap.xml locations.

    Sitemap Visualizer with sample input or settings in place
  3. 3

    Review the result

    Select Show sitemap to run the tool. This screenshot shows the result returned for the sample input.

    Sitemap Visualizer showing its actual result with sample inputs

What this tool does

Sitemap Visualizer reads an XML sitemap and lists what is in it. Enter the sitemap address, or any page on the site: if the address is not a sitemap, the tool checks the Sitemap: lines in robots.txt, then /sitemap.xml and /sitemap_index.xml, and shows the address it read.

For a regular sitemap you get the URL count and a table of every URL with its lastmod date, its changefreq when the file sets one, and its priority, 50 rows at a time. For a sitemap index you get the child sitemaps and their dates; paste one to list its pages. When a sitemap has 50 entries or fewer and some leave out lastmod, the tool asks those URLs for their Last-Modified header and marks each such date (HTTP header).

It does not draw a tree, group URLs into sections, measure click depth, find orphan pages or export files. It reads the sitemap only and does not crawl your site.

How to use it

Five steps.

1

Enter a sitemap or site URL

Paste the address of your sitemap.xml or sitemap_index.xml. A homepage or any page on the site also works: the tool checks robots.txt, then /sitemap.xml and /sitemap_index.xml.

2

Click Visualize

Grigora's server fetches the file and parses the XML. The result shows how many entries it holds and the address it read.

3

Read the table

Each row is a URL with its lastmod date, plus changefreq (when the file sets it) and priority for a regular sitemap. Click Load more URLs to see the next 50.

4

Open a child sitemap

If the result is a sitemap index, each row is a child sitemap. Paste one into the field to list its pages.

5

Clean up the sitemap

Look for tag archives, search and filter URLs, staging hosts and http:// addresses, then fix them in the tool that generates your sitemap.

When teams use it

Six common workflows.

Pre-redesign URL inventory

Before a redesign or migration, list every URL the current sitemap declares, so the redirect plan covers each one. Reduces "we forgot about /this-section" mistakes.

Find URLs that do not belong

Read down the list for tag and author archives, internal search results, ?sort= and filter parameters, and staging hosts. Anything you would not want as a Google result should leave the sitemap.

Check lastmod dates

See which URLs carry a lastmod date and whether the dates look real. Google says it uses lastmod only when the dates are consistently accurate, so a date stamped on every page at once is worth fixing.

Spot deep URL paths

Scan the paths for deep nesting such as /shop/electronics/computers/laptops/. The tool shows each path as written; it does not count clicks from the homepage.

Competitor sitemap review

Enter a competitor's domain to see the URLs their sitemap lists and how many there are. For a sitemap index, paste each child sitemap in turn. Works when the sitemap is publicly reachable.

Check a sitemap index

Large sites split their sitemap into child files for posts, pages or products. Paste the index to list each file and its date, then paste the one you need to see its URLs.

Platform guides

Where each platform keeps its sitemap, and what to check.

WordPress

  1. Find the sitemap: Yoast SEO and Rank Math use yoursite.com/sitemap_index.xml, and WordPress without a plugin uses yoursite.com/wp-sitemap.xml
  2. Paste it into the visualizer. Both are sitemap indexes, so you get a list of child sitemaps
  3. Paste the post or page sitemap to list its URLs
  4. Look for tag and author archives or other URLs you do not want indexed, and exclude them in your SEO plugin settings

Shopify

  1. Paste yoursite.com/sitemap.xml. Shopify generates it automatically as an index of child sitemaps for products, collections, pages and blogs
  2. Paste the products or collections sitemap to list its URLs
  3. Check for products and collections you no longer sell

Webflow

  1. Paste yoursite.com/sitemap.xml. Webflow builds it automatically when the auto-generated sitemap setting is on
  2. Check that CMS Collection items you do not want in search are not listed
  3. Change the page or Collection settings, republish, and check the list again

Next.js

  1. Paste the sitemap your build produces, for example from next-sitemap or an app/sitemap.ts file
  2. Compare the list with the routes in your pages/ or app/ directory
  3. Exclude routes that should not be listed, such as previews, in your sitemap config
  4. Check the list again after each deploy

Headless CMS (Sanity, Contentful, Strapi)

  1. Paste the sitemap your front end builds from the CMS
  2. Check that each published content type appears, and that drafts do not
  3. Compare lastmod dates with when entries were last edited
  4. Check the list again after large content imports

Grigora vs. alternatives

Side-by-side.

CapabilityGrigoraScreaming FrogSitebulbFree ToolsManual
Lists the URLs in a sitemap.xmlYesYesYesVariesRead the XML
Runs in a web page, nothing to installYesNo, desktop appDesktop app or paid CloudYesN/A
Sitemap index filesLists child sitemapsYesYesVariesManual
Site structure diagram (tree or crawl map)NoYesYesLimitedManual
Depth indicators per URLNoYesYesNoManual
Export results to a fileNoYesYesLimitedManual
Free with no signupYesFree up to 500 URLs14-day trialLimitedN/A
Internal link graph (full crawl)NoYesYesNoManual
Orphan page detection (vs full crawl)NoYesYesNoManual

Common errors and fixes

Eight issues users hit.

No sitemap found

Cause: The address did not return sitemap XML, and neither did the Sitemap: lines in robots.txt, /sitemap.xml or /sitemap_index.xml.

Fix: Open the address in a browser to check it loads as XML. Find the real location in your SEO plugin or CMS settings, or add a Sitemap: line to robots.txt that points to it.

The result lists sitemaps, not pages

Cause: You entered a sitemap index. Yoast SEO, Rank Math, WordPress core and Shopify all publish one.

Fix: Paste one of the child sitemaps from the list into the field to see its URLs.

It read a different file from the one you entered

Cause: Your address returned an error, held no URLs or was a compressed .xml.gz file, so the tool fell back to robots.txt, /sitemap.xml or /sitemap_index.xml.

Fix: Check the address shown above the table. If it is not the file you meant, open your URL in a browser to see whether it errors or is empty, and use the uncompressed .xml version if there is one.

Every URL has the same lastmod

Cause: The sitemap generator writes the build or request time into every entry instead of each page's real edit date.

Fix: Fix the generator so lastmod changes only when the page does. Google's sitemap documentation says it uses lastmod only when the value is consistently and verifiably accurate.

URL patterns suggest duplicate categorization

Cause: Same content reachable via /products/widget AND /shop/widget: duplicate URLs split ranking signals.

Fix: Pick one canonical pattern. 301 redirect duplicates. Update internal links to canonical version. Submit fresh sitemap with only canonical URLs.

Date-stamped URL hierarchy

Cause: Blog URLs include /year/month/ in path (/blog/2024/03/post-slug): content appears dated, hierarchy is stale.

Fix: Migrate to flat /blog/post-slug structure. Implement 301 redirects from old date-stamped URLs. Update internal links and sitemap.

Filter and sort URLs in the list

Cause: Ecommerce filter combinations (?color=red&size=m&brand=x) multiply into large numbers of thin or duplicate URLs.

Fix: Leave them out of the sitemap. Google's faceted navigation guidance says to disallow facet URLs in robots.txt if you do not need them in Search. Do not add noindex as well: Google never sees the noindex on a page robots.txt blocks.

Mix of HTTP and HTTPS URLs in the list

Cause: Site partially migrated to HTTPS but sitemap or some URLs still reference http://: fragmented canonical signals.

Fix: Force HTTPS sitewide via 301 redirects. Regenerate sitemap with consistent HTTPS URLs. Verify all internal links use HTTPS. Resubmit sitemap to GSC.

Frequently asked questions

Twelve answers.

The entries in an XML sitemap, as a table: each URL with its lastmod date, plus changefreq and priority for a regular sitemap, and a count of how many entries the file holds.
No. It lists URLs in the order the sitemap gives them. It does not build a tree, group URLs by section or measure click depth, so read the URL paths to see how your sections nest.
Yes. If the address is not a sitemap, the tool checks the Sitemap: lines in robots.txt, then /sitemap.xml and /sitemap_index.xml, and shows the address of the one it read.
You get the list of child sitemaps and their lastmod dates, not the pages inside them. The tool does not open child sitemaps for you, so paste one into the field to list its URLs.
Files up to 8 MB of XML. Google allows up to 50 MB or 50,000 URLs per sitemap, so a very large file can fail here. The tool does not unzip .xml.gz files. Results show 50 rows at a time.
From the lastmod tag in the sitemap. When a sitemap of 50 entries or fewer leaves it out, the tool asks those URLs for their Last-Modified header and marks each such date (HTTP header).
No. An orphan is a page nothing links to, and this tool reads only the sitemap, not your links. Crawlers such as Screaming Frog and Sitebulb find orphans by comparing a full crawl with the sitemap.
Screaming Frog is a desktop crawler. Its free version crawls up to 500 URLs and draws tree graphs of your site. This tool runs in a web page with nothing to install, and reads only the sitemap.
Yes, if it is publicly reachable. Enter their domain and the tool looks in robots.txt and the usual sitemap locations. Some sites block automated requests, and then the tool reports an error.
No. There is no PNG, SVG, JSON or CSV export. Each URL in the table is a link you can open, and the sitemap address itself gives you the raw XML.
Any URL you would not want as a Google result: redirects, 404s, noindexed or robots.txt-blocked pages, duplicates of a canonical page, and internal search or filter URLs.
Yes, with no signup. Grigora's server fetches the sitemap to read it, and the results are not saved.

Related free tools

Other utilities.

Try Sitemap Visualizer now

Free, unlimited, no signup.

Try the Tool