Skip to content

Sitemap Validator

Free sitemap validator that actually fetches every URL. Checks XML syntax, live URL health, robots.txt, and hreflang across Google, GPTBot, ClaudeBot & PerplexityBot. No signup.

server · 1h delete 30-90 seconds free · no account
This tool uses a server. Your file is uploaded over an encrypted connection, processed, and deleted within one hour. Every other tool on the site runs entirely in your browser.

Follows up to 200 child sitemaps · health-checks first 500 URLs (or 1000 if expanded) · fetches each URL as Chrome + Googlebot + GPTBot + ClaudeBot + PerplexityBot · cross-checks robots.txt per crawler.

Running…

uploaded over TLS · deleted within one hour

Scope

What it is, and what it isn't.

Every tool on ToolsVale is scoped to one job. Here is exactly what this one does, and what it does not — so you know whether it fits before you start.

What it is

  • A live sitemap auditor that fetches every URL, not just parses the XML. Under the hood, this tool does three things no free competitor does. First, it parses your sitemap XML with lxml (with a stdlib fallback), following any sitemap-index files up to 200 children deep with cycle detection. Second, for each URL (up to 500 by default, 1,000 with expand), it fires five concurrent HTTP requests — one as Chrome, one as Googlebot, one as GPTBot, one as ClaudeBot, one as PerplexityBot — and records the status code, redirect chain, noindex meta tags, X-Robots-Tag headers, and canonical URLs. Third, it fetches your robots.txt, parses it with a custom implementation that matches Google's own longest-match precedence rules, and cross-checks every URL per crawler. The result: a 50-rule audit across 11 categories, three scores, and platform-specific fix instructions for 17 detected frameworks.
  • The only free tool with an "AI Discoverability" score. AI Discoverability is a 0-100 score measuring what percentage of your sitemap URLs are simultaneously (a) returning 200 for GPTBot, ClaudeBot, and PerplexityBot, (b) not blocked by your robots.txt for those crawlers, (c) not carrying a noindex directive, and (d) self-canonical. The score comes with a per-crawler breakdown so you can see, for example, "ClaudeBot 100%, PerplexityBot 100%, GPTBot 33%" — telling you exactly which AI answer engine is losing visibility on your content. This score doesn't exist in any other free sitemap validator.

What it isn't

  • Not a sitemap generator. This tool validates existing sitemaps — it doesn't create them from scratch. If you need to generate a sitemap, use your CMS (WordPress: Yoast/Rank Math/AIOSEO all generate sitemaps automatically; Shopify/Webflow/Wix auto-generate them; Next.js/Nuxt/Astro/Gatsby have official plugins) or a dedicated crawler like Screaming Frog. Once you have a sitemap URL, come back here to audit it.
  • Not a full technical SEO audit. This tool focuses specifically on your sitemap — the XML file, the URLs it lists, and how those URLs behave for crawlers. It doesn't check on-page SEO (titles, meta descriptions, headings, schema markup, Core Web Vitals) — that's what our Schema Validator, Meta Tag Checker, and Open Graph Checker are for. Think of this as one piece of a technical SEO stack, not a replacement for the whole thing.
  • Not a rendering engine — we don't execute JavaScript. We fetch URLs with an HTTP client, not a headless browser. That means if your sitemap URLs return an HTML shell and inject the real content via React/Vue/Angular after page load, we see the shell — the same thing GPTBot and PerplexityBot see (they don't render JS either). Googlebot does render JS in a second pass, but for AI crawlers this is exactly the right test: if we see an empty page, so does ChatGPT.
Comments

What people made of this one.

Notes from other visitors. Sign in with Google to add yours, or send a private suggestion straight to the developer.

Sign in to leave a comment. We only use Google — no passwords, no email spam.

Sign in with Google

No comments yet. Be the first.

How this compares

This tool vs. the alternatives.

A same-page side-by-side against the tools a visitor would otherwise pick. Every value is verifiable on the competitor's current site — flag anything that looks stale.

Feature Sitemap Validator this tool xml-sitemaps.com Validator Sitechecker Sitemap Validator Duplichecker XML Sitemap Validator
Live URL fetch per URL ✓ up to 1,000 Paid tier only
Multi-crawler audit (5 UAs) ✓ Chrome, Googlebot, GPTBot, ClaudeBot, PerplexityBot ✗ single UA ✗ single UA ✗ single UA
AI Discoverability score ✓ with per-crawler breakdown
robots.txt per-URL per-crawler check
Framework detection (17 CMS) ✓ Yoast, Rank Math, Shopify, Webflow, +13
Platform-specific fixes ✗ generic only ✗ generic only ✗ generic only
Google 2026 deprecation flags with citations ✓ links to Google docs ✗ still errors on
Fuzzy duplicate detection (slash, case, tracking params) ✓ with canonical suggestion ✗ exact only ✗ exact only ✗ exact only
Sitemap-index deep crawl ✓ up to 200 children, cycle-safe Basic (single level) Basic
hreflang validation ✓ 6 rules (self-ref, reciprocal, ISO, x-default, conflicts) Partial
Shareable 48h audit link
CSV export Paid tier
Signup required

Compared on public plans as of the last review date. Competitor features change — if you spot a stale row, please flag it and we'll re-verify.

How to use it

Sitemap Validator
in three moves.

01

Paste your sitemap URL

Drop in any XML sitemap URL — usually yoursite.com/sitemap.xml or yoursite.com/sitemap_index.xml. Works with gzipped .xml.gz files too. If your site uses a sitemap index (Yoast, Rank Math, Shopify, most e-commerce), we follow every child sitemap automatically.

02

Pick your checks

All five toggles are on by default: URL health, AI crawlers, robots.txt cross-check, duplicate detection, and (optionally) expand from 500 to 1,000 URLs. Turn off AI crawlers if you only care about Google — audit runs faster.

03

Click Validate — wait 30-60 seconds

We fetch your sitemap, parse the XML, follow any child sitemaps (up to 200), then hit every URL as five different crawlers: Chrome, Googlebot, GPTBot, ClaudeBot, and PerplexityBot. First run can take up to 60 seconds while the server wakes up. Later runs are much faster.

04

Read the 3 scores, expand issues for platform-specific fixes

You get three scores: Schema Health, Google Compliance, and AI Discoverability (with per-crawler breakdown). Every issue includes an expandable "Details & fix" section. If we detected your CMS (Yoast, Rank Math, Shopify, Webflow, and 13 others), fixes are prefixed with the exact admin path. Copy the fix, share the audit as a 48-hour link, or export the URL health table as CSV.

Formats & limits

What goes in, what comes out.

Format field guide
Input Output Typical saving Best for
Any XML sitemap URL (.xml or .xml.gz) 3 scores, 50-rule audit, per-URL health across 5 crawlers, shareable 48h link 2-3 hours vs. a manual sitemap + URL audit SEO consultants and agencies auditing client sitemaps
Sitemap index URL (Yoast, Rank Math, Shopify, Next.js, Astro, Gatsby) Recursive audit across up to 200 child sitemaps with cycle detection Catches issues on child sitemaps most tools never even open E-commerce (Shopify, WooCommerce) and large publishers
International site with hreflang xhtml:link annotations 6 INTL-* rules — invalid ISO codes, missing x-default, missing self-ref, non-reciprocal links, conflicts Google flags these silently in Search Console — we surface them upfront Multi-region / multi-language sites
Sitemap on a WordPress site with Yoast, Rank Math, AIOSEO, or WooCommerce Every fix prefixed with the exact WordPress admin path No more Googling "where is Yoast sitemap settings" WordPress site owners and freelance WP developers
Why this one

Built against the ways these tools disappoint.

We ran the same files through the popular alternatives first. These are the gaps we found, and what this tool does instead.

01

Every free sitemap validator on the market stops at XML syntax. They tell you the file parses, count your URLs, maybe flag a missing lastmod — and that's it. They never actually try to fetch a single URL.

We fetch every URL in your sitemap (up to 1,000) as five different crawlers: Chrome, Googlebot, GPTBot, ClaudeBot, and PerplexityBot. So we catch 404s, noindex pages, redirect chains, cross-domain redirects, canonical mismatches — and, uniquely, URLs your robots.txt blocks specifically for AI crawlers.

test: Take the top-ranking free sitemap validator on Google and search its output for the word "GPTBot", "ClaudeBot", or "AI Discoverability". You won't find any of them. We're the only tool that ships this by default.
02

They flag and as required elements, then throw warnings or errors when they're missing or "wrong". This has been outdated advice since June 2023.

We flag and as noise Google deliberately ignores, cite the exact Google Search Central page (updated 2026-07-08), and recommend removing them to shave file size. This is what an SEO consultant would tell you — most validators are running on advice from 2015.

test: Google's own docs at developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap literally say: "Google ignores and values." Every finding we emit for these tags links directly to that page.
03

Generic "fix your sitemap" boilerplate with no platform context. If you're on Yoast, they don't tell you to open the WordPress admin — they hand you an XML snippet you have no idea where to paste.

We detect your CMS from sitemap signatures — Yoast, Rank Math, All in One SEO, Shopify, Webflow, Wix, Squarespace, Ghost, Drupal, Joomla, Next.js (next-sitemap), Nuxt, Astro, Gatsby, SvelteKit, Framer, WooCommerce — and prefix every fix with the exact admin path or config file to edit.

test: Run your Yoast-based site. In the fix panel, you'll see: "In WordPress admin → SEO → General → Features → toggle XML sitemaps." No other free validator ships platform-specific fixes.
Key Factors

What makes a sitemap "good" in 2026?

Every URL actually responds with 200 OK

A sitemap listing 404s, redirect chains, or noindex pages wastes Google's crawl budget and signals a stale site. This is the single biggest factor because it's the one every free validator ignores — they parse the XML and never check whether the URLs work. We fetch each URL and flag anything that isn't a clean 200.

URLs load for AI crawlers, not just Google

Your robots.txt can be configured to block GPTBot, ClaudeBot, and PerplexityBot while still allowing Googlebot. Many sites do this without realizing they're invisible in ChatGPT, Claude, and Perplexity answers. We hit every URL as all five crawlers and score AI Discoverability separately from Google Compliance.

robots.txt agrees with the sitemap

If your sitemap lists a URL that your robots.txt Disallows for Googlebot, Google will treat that as a mistake. We parse robots.txt with a proper longest-match implementation (matching Google's own parser) and cross-check every URL, per crawler.

No duplicate or near-duplicate URLs

Exact duplicates are easy — but the real crawl-budget killers are near-duplicates: /page vs /page/, /Page vs /page, /page vs /page?utm_source=x. We cluster these fuzzily using rapidfuzz and suggest a canonical URL for each cluster based on Google's own preferences (shorter, no params, no trailing slash, lowercase).

No tags Google actively ignores

and have been ignored by Google since at least 2023 — confirmed on Google Search Central as of 2026-07-08. Keeping them just inflates your sitemap file. We flag their presence with an info-level finding and a link to Google's exact wording so you don't have to argue with a client about it.

The detail

How this actually works.

Every free sitemap validator on Google’s first page does the same thing: it parses your XML, counts your URLs, flags a missing <lastmod> here and there, and calls it a day. None of them fetch a single URL. None check whether your pages actually respond with 200 OK. None ask whether GPTBot, ClaudeBot, and PerplexityBot can even reach the URLs you’re listing.

Your sitemap is perfect for Google. But GPTBot, ClaudeBot, and PerplexityBot might not even see your URLs. That’s the gap this tool closes. Free, no signup, no watermark — a real sitemap validator that behaves like an SEO consultant with a bandwidth-heavy checklist.

Why sitemap validation looks different in 2026

For roughly a decade, “validate my sitemap” meant one thing: does the XML sitemap file parse against the sitemaps.org 0.9 protocol? That check is trivial — any competent XML parser can do it in milliseconds. But the interesting failures in 2026 have nothing to do with XML syntax:

  • Your sitemap lists /blog/old-post which now returns a 404, and Google logs a “URL is not in the sitemap” mystery in Search Console.
  • Your robots.txt was updated to Disallow: / for GPTBot last year to save on scraper bandwidth — and now nothing you publish shows up in ChatGPT search results.
  • Your Yoast plugin quietly started emitting <priority> and <changefreq> tags on every URL, adding 40% to your sitemap file size for tags that Google explicitly ignores.
  • Your international site has 400 hreflang annotations, three of which use invalid ISO codes that Google silently rejects.
  • Your Shopify sitemap index has 47 child sitemaps and 12,000 URLs — and your last “validator” only opened the parent file.

None of these are XML syntax problems. All of them cost you visibility. A modern sitemap validator has to catch them.

What this sitemap validator actually checks

The tool runs 50 rules across 11 categories. Here’s what each category does and why it matters — beyond what any XML syntax checker can tell you.

1. Live URL health across five different crawlers

For every URL in your sitemap (up to 500 by default, 1000 with the Expand toggle), we fire five concurrent HTTP requests — one identifying as Chrome (a real user), one as Googlebot, one as GPTBot, one as ClaudeBot, and one as PerplexityBot. For each, we record the HTTP status code, the redirect chain, any <meta name="robots" content="noindex"> tag in the returned HTML, any X-Robots-Tag: noindex response header, and the canonical URL declared on the page.

This catches: 4xx errors, 5xx errors, redirect chains, cross-domain redirects (Google usually ignores those in sitemaps), URLs that redirect to another URL also in the sitemap (redundant listing), noindex pages that shouldn’t be in a sitemap at all, and canonical mismatches (the page tells Google “the real URL is somewhere else,” which means the sitemap listing gets ignored).

2. AI Discoverability score with per-crawler breakdown

The AI Discoverability score is unique to this tool. It measures the percentage of your sitemap URLs that are simultaneously (a) returning HTTP 200 for GPTBot, ClaudeBot, and PerplexityBot, (b) not blocked by your robots.txt for those crawlers, (c) not carrying a noindex directive, and (d) self-canonical. You get an aggregate 0-100 score plus a breakdown per AI crawler.

A common failure pattern: sites unblocked ClaudeBot but forgot GPTBot, or added a User-agent: GPTBot / Disallow: / rule during a scraper-bandwidth panic in 2023 and never removed it. The per-crawler breakdown surfaces this immediately — you’ll see something like “GPTBot 12%, ClaudeBot 100%, PerplexityBot 100%” and know exactly which crawler you’re invisible to.

3. robots.txt cross-check per URL per crawler

We fetch your robots.txt, parse it with a custom implementation that matches Google’s own longest-match precedence rules (not the stdlib urllib.robotparser, which handles wildcards and $ anchors incorrectly), and cross-check every URL in your sitemap against it — separately for each of the five crawlers.

We flag two situations. ROBOTS-URL-DISALLOWED-001 means Googlebot is blocked from a URL you’ve listed — a critical error, because it’s a self-contradicting signal Google will treat as a mistake. ROBOTS-URL-DISALLOWED-AI-ONLY-001 means the URL is allowed for Google but blocked specifically for one or more AI crawlers — the AEO-era killer rule.

4. Framework attribution with platform-specific fixes

Every fix in the audit is prefixed with the exact admin path for your CMS. We detect 17 platforms from sitemap signatures: Yoast SEO, Rank Math, All in One SEO, Shopify, Webflow, Wix, Squarespace, Ghost, Drupal, Joomla, next-sitemap (Next.js), @nuxtjs/sitemap (Nuxt), @astrojs/sitemap (Astro), gatsby-plugin-sitemap, svelte-sitemap, Framer, and WooCommerce.

If you’re on Yoast, every fix starts with “In WordPress admin → SEO → General → Features …” instead of a generic XML snippet you have no idea where to paste. If you’re on Next.js, we point at your next-sitemap.config.js. If Shopify, we tell you which Shopify admin screen. This is what an SEO consultant would do — most validators leave you Googling.

5. Fuzzy duplicate detection with canonical suggestions

Exact duplicates are easy to catch — anyone can do it. The real crawl-budget killers are near-duplicates: /page vs /page/, /Page vs /page, /page vs /page?utm_source=newsletter. We cluster these fuzzily using the rapidfuzz library and suggest a canonical URL for each cluster based on Google’s own stated preferences: shorter wins, no query parameters wins, no trailing slash wins, lowercase wins.

You get one aggregate finding per cluster, not a spam of duplicates for a single problem. If /products/widget, /products/widget/, /products/Widget, and /products/widget?ref=fb all resolve to the same page, you see one DUPE-TRACKING-PARAMS-001 finding with all four variants and a “Suggested canonical: /products/widget” hint.

6. Google 2026 deprecation flags with citations

Two tags — <priority> and <changefreq> — have been ignored by Google for years. Most free validators still throw errors when they’re missing. We flag their presence as info-level findings, with a link straight to Google’s own documentation (last updated 2026-07-08) which literally states: “Google ignores <priority> and <changefreq> values.” Removing them shrinks your sitemap file, speeds up fetches, and stops sending Google signals it disregards.

7. hreflang validation for international sitemaps

Six INTL rules cover xhtml:link hreflang annotations: missing x-default, invalid ISO 639-1 codes (like xyz-INVALID), missing self-referencing hreflang, missing reciprocal links (A points to B but B doesn’t point back), conflicting hreflang directives for the same URL, and hreflang targets that return 4xx/5xx. If you run a multi-region or multi-language site, this catches issues that Google Search Console reports vaguely as “hreflang doesn’t match” without telling you which URL.

8. Sitemap index deep crawl

Most large sites use a sitemap index — a parent XML file that references multiple child sitemaps. Shopify, WooCommerce, Yoast on any large site, Rank Math, Next.js with next-sitemap, Astro, and Gatsby all default to this pattern. Most validators only open the parent file. We follow every child sitemap up to 200 deep, with breadth-first traversal and cycle detection (in case a child accidentally references the parent).

Reading your audit: what the three scores mean

Every audit produces three scores from 0 to 100. Each is calculated from the severity-weighted count of findings in specific categories, so they’re objectively comparable across runs.

Schema Health covers XML-level correctness: syntax errors, invalid schema, deprecated tags, hreflang issues, and structural limits (50k URLs, 50MB file, 200 child sitemaps in an index). A score under 90 means your sitemap has structural problems most crawlers will parse around, but which cost you clarity.

Google Compliance covers everything Google specifically flags: URL health (404s, redirect chains, noindex conflicts), robots.txt parity, duplicates, index integrity, and gzip compression on large files. A score under 75 means Google is actively wasting crawl budget on this sitemap, or dropping URLs from indexation because of contradictory signals.

AI Discoverability — the differentiator — is the percentage of your URLs that are visible to GPTBot, ClaudeBot, and PerplexityBot simultaneously. Click “Per-crawler” under the gauge to see individual crawler scores. If your Google Compliance is 95 but AI Discoverability is 40, you’re winning traditional SEO and losing AEO — a bigger and bigger gap in 2026.

Fixing the most common sitemap issues

404 URLs in your sitemap

The most common finding. Either the URL was deleted and the sitemap generator didn’t clean up, or the URL was renamed and only the old URL is in the sitemap. Fix: remove the URL from the source (delete the CMS post, or exclude it from your sitemap plugin’s rules), then regenerate. For Yoast: SEO → Search Appearance → check the post type’s visibility. For Next.js: adjust your next-sitemap.config.js exclude array.

URLs that redirect to another URL

Google explicitly recommends listing only final canonical URLs. Every redirect wastes crawl budget and dilutes ranking signals. Replace the redirecting URL with its final destination. Bonus: if the final URL is also listed separately in the sitemap, we flag that as HEALTH-REDIRECT-IN-SITEMAP-001 — you have redundant listings taking crawl budget.

Pages with noindex meta tag

A page with <meta name="robots" content="noindex"> tells Google “don’t index me.” Including such a URL in a sitemap sends the opposite signal — “please index me.” Google treats this as a mistake and picks one signal to follow (usually noindex wins). Either remove the noindex tag (if you actually want indexing) or remove the URL from your sitemap (if you don’t).

Canonical mismatches

If a page’s <link rel="canonical" href="..."> points to a different URL than the one listed in your sitemap, Google will follow the canonical and drop the sitemap URL. Common cause: your CMS auto-generates canonicals from URL structure but your sitemap plugin uses a different rule. Reconcile by either updating the canonical or removing the non-canonical URL from the sitemap.

Missing Sitemap: directive in robots.txt

Add one line to your robots.txt:

Sitemap: https://yoursite.com/sitemap.xml

This helps every search engine and AI crawler discover the sitemap without you manually submitting it. For a sitemap index, point at the index URL, not individual child sitemaps.

Duplicate URLs with tracking parameters

If your sitemap contains /product/widget, /product/widget?utm_source=email, and /product/widget?ref=partner, you’re telling Google those are three distinct URLs. They’re not. Strip tracking parameters at sitemap-generation time. In WordPress with Yoast/Rank Math: sitemap plugins typically don’t emit tracking params by default, so this usually means a theme or custom plugin is doing it — audit your <link> tag generators.

Making your sitemap AI-crawler friendly

AEO (Answer Engine Optimization) is the 2026 term for making sure your content appears when someone asks ChatGPT, Claude, Perplexity, or Gemini a question. The mechanic is simple: the AI engine runs a search, fetches the top URLs, and cites them in its answer. If your URLs aren’t fetchable by the AI’s crawler, you’re invisible in the answer — no matter how well you rank in traditional Google search.

Check your robots.txt for these user agents and make sure they’re not blocked from important content:

  • GPTBot — OpenAI’s crawler. Used by ChatGPT search and ChatGPT’s browse mode.
  • ClaudeBot — Anthropic’s crawler. Used by Claude’s web browsing.
  • PerplexityBot — Perplexity’s crawler. Also uses Perplexity-User for on-demand fetches.
  • OAI-SearchBot — OpenAI’s search-specific crawler (separate from GPTBot, which is for training). Coming to this tool in v1.1.
  • Google-Extended — Google’s Gemini training crawler. Separate from Googlebot. Coming to this tool in v1.1.

A common defensive robots.txt pattern from 2023-2024 blocked GPTBot to reduce scraper bandwidth. That made sense when GPT-4 was training. In 2026, GPTBot is also OpenAI’s search crawler — blocking it means you don’t appear in ChatGPT’s search results, which have real traffic. Reconsider.

Sitemap best practices by platform

WordPress (Yoast SEO, Rank Math, AIOSEO)

All three plugins auto-generate a sitemap index at /sitemap_index.xml and split child sitemaps by post type: /post-sitemap.xml, /page-sitemap.xml, /category-sitemap.xml, /product-sitemap.xml for WooCommerce, and so on. Fix common issues via the plugin admin, not by editing XML directly.

If your Yoast sitemap includes tag pages, category pages, or attachment URLs you don’t want indexed, toggle them off in SEO → Search Appearance → per-post-type visibility. Rank Math uses SEO → Sitemap Settings with per-post-type toggles. AIOSEO uses All in One SEO → Sitemaps → General Sitemap.

Shopify

Shopify auto-generates /sitemap.xml as an index with child sitemaps for products, collections, pages, and blogs. You can’t edit the XML directly. To exclude a product: set it to unavailable in Products admin. To exclude a page: page-level SEO settings. For meta tag overrides: theme templates.

Webflow, Wix, Squarespace, Framer

All four generate /sitemap.xml automatically. Excluding pages happens via page-level SEO settings (“Hide page from search results” or similar). No XML editing.

Next.js, Nuxt, Astro, Gatsby, SvelteKit

All five use plugins that generate a sitemap at build time. Next.js uses next-sitemap with next-sitemap.config.js. Nuxt uses @nuxtjs/sitemap configured in nuxt.config.ts. Astro uses @astrojs/sitemap in astro.config.mjs. Gatsby uses gatsby-plugin-sitemap in gatsby-config.js. All support filters, custom pages, and hostname configuration — check each plugin’s docs for the specific API.

Ghost

Ghost generates sitemaps automatically at /sitemap.xml (index) with children like /sitemap-posts.xml. Exclude specific posts by setting their access level to “Members only” or “Paid” (which excludes them from public sitemaps), or use routes.yaml for custom routing.

Sitemap index vs single sitemap: when to use which

The sitemaps.org protocol caps a single XML sitemap file at 50,000 URLs or 50 MB uncompressed. If you’re under both, a single sitemap is simpler. Over either, you need a sitemap index that references multiple child sitemaps.

A few reasons to use a sitemap index even when you’re under the limits:

  • Logical separation — /post-sitemap for blog posts, /page-sitemap for evergreen pages, /product-sitemap for e-commerce. Makes debugging in Google Search Console easier since coverage errors are reported per child sitemap.
  • Change frequency isolation — Google fetches sitemaps opportunistically; a sitemap with 10,000 rarely-changing pages doesn’t need to be re-fetched as often as a sitemap with 100 daily-updated pages.
  • Multi-language separation — /en-sitemap, /fr-sitemap, /es-sitemap. Combined with hreflang, this gives you clean per-language indexation reporting.

This tool follows sitemap indexes up to 200 child sitemaps deep, with breadth-first traversal and cycle detection. For 99% of real sites that’s plenty.

Common myths debunked

Myth: “I need to set <priority> on every URL to tell Google what’s important.” False. Google has ignored <priority> for years. Set it or don’t — Google uses its own signals (internal linking, click data, freshness) to determine importance.

Myth: “<changefreq> controls how often Google crawls my pages.” False. Google uses observed change patterns and page importance to schedule crawls. <changefreq> is ignored.

Myth: “My XML sitemap must be at /sitemap.xml.” False. Any URL works, as long as you declare it in robots.txt with a Sitemap: directive or submit it in Search Console. Popular defaults: /sitemap.xml, /sitemap_index.xml, /sitemap-index.xml.

Myth: “Submitting the sitemap to Google via a ping URL forces re-crawl.” False and deprecated. Google removed the ping endpoint in June 2023. Just publish the sitemap and reference it in robots.txt — Google finds it.

Myth: “Big sitemaps hurt SEO.” False. Sitemap size is neutral. What hurts is a sitemap full of 404s, redirects, or noindex pages — Google wastes crawl budget on garbage. A clean 50,000-URL sitemap is fine.

Myth: “Sitemap validators are all the same.” Also false — that’s the whole reason this tool exists. Try any free competitor and search their output for “GPTBot,” “AI Discoverability,” or “framework-specific fix.” You won’t find them. Comparison table is in the sidebar.

Related tools

Sitemap validation is one piece of a technical SEO audit. For the rest:

  • Schema Validator — validates JSON-LD, Microdata, and RDFa against schema.org v30 and Google’s 2026 structured data rules, with the same 5-crawler UA coverage.
  • Meta Tag Checker — validates title, description, robots, canonical, and social meta tags across all 5 crawlers.
  • Broken Link Checker — crawls your site and flags broken internal and external links with the exact page each broken link is on.
  • Trailing Slash Checker — audits URL consistency across trailing-slash, www, and http/https variants.
  • Open Graph Checker — validates Open Graph, Twitter Card, and other social preview tags.

All are free, no signup, and share the same underlying infrastructure — multi-crawler HTTP checks, framework attribution, and platform-specific fixes.

Get started

Paste your sitemap URL at the top of this page. Leave the five checkboxes ticked (URL health, AI crawlers, robots.txt, duplicate detection). Click Validate sitemap. Watch the URLs check in real time. Read your three scores, expand any issues you want to fix, and copy the platform-specific fix straight from the audit. Share the audit as a 48-hour link with a client or teammate if you need to.

No signup. No usage cap beyond the 1,000-URL health-check ceiling (500 by default). No paid tier planned. Just a sitemap validator that behaves the way one should in 2026 — treating your sitemap as a live thing crawled by five different agents, not a static XML file to be parsed.

Last reviewed August 2026 · this tool runs server.

FAQ

The questions people actually type in.

Is this sitemap validator really free?

Yes — completely free, no signup, no watermark, no usage caps beyond the per-audit URL limits (500 default, 1,000 expanded). We run it on Render's free tier. The only cost we ever pay is a small monthly bill for the backend when traffic scales. There is no paid tier planned.

What's the difference between a sitemap validator and a sitemap checker?

Nothing meaningful — the terms are used interchangeably. "Validator" implies stricter conformance checking (does your XML meet the sitemaps.org 0.9 protocol?), while "checker" is looser (is anything obviously wrong?). This tool does both — plus everything most tools skip: live URL health, robots.txt parity, AI crawler visibility, and framework-specific fixes.

Why does Google ignore and in my sitemap?

Because Google found the values were unreliable — most site owners either left the defaults, set everything to 1.0, or the CMS generated arbitrary values. Google's official documentation (last updated 2026-07-08) confirms: "Google ignores and values." Keeping them just inflates your sitemap file. Our tool flags them as an info-level finding so you know you can safely remove them.

Does this check if my sitemap works for ChatGPT, Claude, or Perplexity?

Yes — this is the key differentiator. We fetch every URL as GPTBot (OpenAI/ChatGPT), ClaudeBot (Anthropic/Claude), and PerplexityBot (Perplexity), then cross-check your robots.txt for per-crawler Disallow rules. You get a separate "AI Discoverability" score alongside your Google Compliance score, with a per-crawler breakdown. If your site is blocking AI crawlers unintentionally, you'll see it immediately.

My sitemap has 50,000 URLs. Will you check all of them?

No — we cap health checks at 500 URLs by default, or 1,000 if you toggle the "Expand" option. The XML itself is fully parsed and every URL is counted, so you'll still see all 50,000 in the total. But live health checks are capped because fetching 50,000 URLs as five different crawlers = 250,000 requests, which would either take hours or overwhelm your server. We check the first N URLs in file order — usually representative enough to catch systemic issues.

Do you store my sitemap or the URLs I check?

No. URLs are sent over TLS, the audit runs in memory, and nothing persists after your session unless you explicitly click "Share 48h link" — which stores the audit report (not your URLs individually) for 48 hours so you can share the result. No logs, no analytics on the URLs themselves, no third parties.

Why did the first run take almost a minute?

The backend runs on Render's free tier, which spins down after 15 minutes of inactivity. Your first request after an idle period has to boot the server, which takes 30-60 seconds. Subsequent audits complete in 15-30 seconds. If the tool gets heavy traffic, we'll upgrade to Render's paid tier which eliminates the cold start entirely.

Can I share the audit with a client or teammate?

Yes — click "Share 48h link" at the top-right of any completed audit. We generate a private, unguessable URL that anyone can open to see the exact same audit (issues, scores, framework detection, URL health table). Links expire after 48 hours automatically. Nobody can find your audit by guessing or crawling — the tokens are 128-bit random.

Next

Tools people use with this one.

All 44 tools
under 15s

Schema Validator

The best free schema validator — checks JSON-LD, Microdata, and RDFa against schema.org v30 and Google's 2026 rules, plus content parity and AI-crawler visibility.

server · 1h delete Open
site → link report

Broken Link Checker

Crawl your whole site and find every broken link — and see exactly which page each one sits on. Live results, redirects flagged separately, CSV export.

server · 1h delete Open