Discovery
MEDIUMSitemap entries share the host of the containing sitemap
Every <loc> URL shares the host of its containing sitemap document. Cross-host sitemap entries are silently dropped, so the off-host product URLs effectively don't exist for the crawler.
What this check looks for
Per sitemaps.org, a sitemap can only enumerate URLs on the same host as the sitemap itself. Cross-host URLs are silently dropped by Google and treated as a misconfiguration by other crawlers. We compare every parsed `<loc>` URL's host against the sitemap's own host and report any mismatch.
Which AI surfaces it affects
- Google AI Mode (UCP)60
- Microsoft Copilot50
- ChatGPT (ACP)30
- Perplexity30
- Meta AI30
Weighted against the live specs — ACP 2026-04-17, UCP 2026-04-08.
How to fix it
Keep every sitemap entry on the sitemap's own host
Shopify
Developer- Shopify's sitemaps use the storefront's canonical domain. If failing, you're auditing through a custom proxy / split-domain setup; the cross-host entries should be removed.
BigCommerce
A few minutes- Confirm your storefront URL setting matches the host serving the sitemap.
WooCommerce
A few minutes- WordPress → Settings → General → Site Address (URL) must match the sitemap host. Yoast / Rank Math generate the sitemap from this value.
Custom / headless
Developer- Filter URLs by host before writing them to the sitemap.
const SITEMAP_HOST = new URL(sitemapUrl).host;
const entries = products
.map(p => p.url)
.filter(u => new URL(u).host === SITEMAP_HOST);The spec it's pinned to
sitemaps.org — Sitemap file location
The sitemaps.org protocol requires entries to share the sitemap's host. Cross-host URLs are silently dropped by Google.
Does your store pass this check?
Run the full audit — 82 checks across five AI shopping surfaces. Most tools only check whether you get mentioned; we check whether an agent can buy from you.