Free Tool · No Signup

Sitemap Extractor — Pull Every URL From Any XML Sitemap

Reviewed by Ali Yasin Jatoi, Founder & Lead Engineer· Updated 2026-07-03

Paste a sitemap.xml URL. Get the full URL list — including nested sitemap-index children — with lastmod, changefreq, and priority. Export to CSV in one click. Built by an agency that runs weekly sitemap audits, informed by a Pearl Lemon internal fleet of 150+ WordPress sites.

Paste a bare domain, a full URL — with or without https://. We handle the rest.Handles sitemap-index recursion.Max 25,000 URLs / run.

Handles sitemap-index recursion

Point us at your top-level sitemap_index.xml — we follow every child sitemap and merge the URLs into one clean list. No copy-pasting individual sitemaps.

CSV export in one click

Columns for URL, lastmod, changefreq, priority, and source sitemap. Drop straight into Screaming Frog, Search Console URL Inspection lists, or your favorite spreadsheet.

No signup, no rate limits

No email harvest, no “start free trial” dark pattern. Built as an internal tool for our WordPress fleet audits — released free because we hate signup walls too.

How to extract URLs from a sitemap.xml

  1. 01
    Find your sitemap URL

    Most sites live at /sitemap.xml or /sitemap_index.xml. WordPress with Yoast uses /sitemap_index.xml. Rank Math uses /sitemap_index.xml. Shopify uses /sitemap.xml. Check /robots.txt for the exact URL.

  2. 02
    Paste + extract

    Drop the URL above and click Extract. If it's a sitemap-index, we recurse into every child sitemap automatically (up to 50 children, 25,000 URLs total).

  3. 03
    Filter, export, act

    Filter by folder (e.g. /blog/), spot orphan or stale URLs by lastmod, and export the full list to CSV for Screaming Frog, GSC, or a Notion database.

7 ways SEOs and site owners use this tool

Audit indexability at a glance

Paste your sitemap, look at the URL count, and compare it to the “Pages indexed” number in Google Search Console. A big delta means Google is filtering out low-value URLs — a signal to prune or consolidate.

Find stale content by lastmod

Sort the CSV by lastmod. Anything older than 18 months is a refresh candidate. In our own fleet audits, ~30% of the average client site's traffic sits on stale URLs that just need a facts refresh + a new publish date.

Extract competitor URL inventories

Point the extractor at a competitor's sitemap. Instant taxonomy of their content strategy: how many blog posts, how many product/service pages, how deep their category tree goes. Faster than crawling.

Build URL lists for Screaming Frog list mode

Screaming Frog's list mode wants one URL per line. Export CSV → paste the URL column → crawl. Skip the spider-crawl step entirely when you already have a clean sitemap.

Validate a site migration

Post-migration, extract the new sitemap and diff it against the old one. Missing URLs = broken redirects. We use this exact workflow for every WordPress replatform we manage.

Bulk-inspect URLs in Search Console

GSC's URL Inspection API takes a list of URLs. Export CSV → feed the URL column → get index status, canonical, and coverage for every page in your sitemap.

Feed a content brief generator

Paste your competitor's blog sitemap into an LLM alongside your own to generate topical gap analyses — minus the “please stop rate-limiting me” pain of scraping.

Prove your sitemap is even valid

If the tool returns 0 URLs, your sitemap has a parsing problem — malformed XML, wrong Content-Type header, or a robots.txt disallow. Fix that before Google gives up crawling it.

Frequently asked questions

How do I extract URLs from a sitemap.xml?
Paste the full URL of your sitemap (for example https://example.com/sitemap.xml) into the input above and click Extract URLs. We fetch the XML server-side, parse every <url> entry, follow nested sitemap-index children, and return a filterable table plus a CSV download.
Does this work with sitemap-index files?
Yes — sitemap-index recursion is the whole point. If your top-level sitemap contains <sitemap> children instead of <url> entries, we follow every child (up to 50) and merge the URL lists.
Can I export the extracted URLs to CSV?
Yes. After extraction, click Download CSV. Columns: URL, lastmod, changefreq, priority, source sitemap. Opens cleanly in Google Sheets, Excel, Numbers, or Screaming Frog list mode.
Are gzipped sitemaps (.xml.gz) supported?
Not yet. Strip .gz from the URL and try the plain XML version — nearly every CMS serves both. Gzip support is on the roadmap.
What are the limits?
Per extraction: up to 50 child sitemaps, 25,000 URLs, and 10MB per fetch. Enough for 99% of sites. For enterprise sitemaps beyond that, we run manual audits — see our WordPress support service.
Is my sitemap data stored?
No. Extractions run in-memory server-side and are returned to your browser. Nothing is persisted, logged with your URL, or shared with third parties.
Why does the extractor sometimes fail?
Three common causes: (1) the sitemap URL 404s or 403s, (2) the file is served as .gz, or (3) the XML is malformed. The error message will tell you which. If it's still failing, your CMS is likely serving the file with the wrong Content-Type — Google may also be struggling to parse it.
Do you have a Chrome extension?
Not yet. The web version is faster than an extension because we recurse and export server-side. If you want a CLI or extension port, email us — we'll open-source it if there's demand.
Built by an agency, not a keyword farmer

Free tool. Paid maintenance if you'd rather not do it yourself.

We built this because we needed it. If you'd rather have a team run the sitemap audit, fix the broken URLs, and keep your indexability healthy every week — that's what we do for a living.

Related in the WordPress toolkit

Every page in this cluster answers a specific search intent. Jump to the one that matches yours.

Call Book a call