List every URL on a page and every URL in its sitemap
Enter an address. The server fetches the page, resolves every link to an absolute URL, reads the sitemap the site declares, and returns both lists grouped by same-site and external, ready to filter and export.
Enter a page URL; the sitemap is discovered from robots.txt or /sitemap.xml on the same host.
Observations, not verdicts. What you enter is processed for this result and written to a usage journal described in the privacy policy; nothing else is stored.
How to get all page URLs from a website
-
Enter the start URL
Usually the homepage. Its HTML is fetched once, as a plain HTTP client would fetch it, and every anchor with an href is collected.
-
The sitemap is discovered
robots.txt is read for Sitemap lines; failing that, /sitemap.xml is tried. A sitemap index is expanded into the sitemaps it lists, and each URL entry is collected with its lastmod where present.
-
Filter the two groups
Page links and sitemap URLs are shown separately, each split into same-site and external. A text filter narrows either list; the counts update as you type.
-
Export
CSV for a spreadsheet, JSON for a script. Both carry the URL, the group, the anchor text for page links and the lastmod for sitemap entries.
Link extractor versus website extractor
Two different questions that people search with the same words.
Link extractor: what does this page point at?
One page, every anchor, resolved against the base URL so relative paths and protocol-relative links come back absolute. Mailto and tel links are listed under their scheme, not dropped.
Website extractor: what does the site say it contains?
The sitemap is the site's own declaration of its URLs. It is often more complete than crawling one page and sometimes less honest; comparing the two lists is where the useful findings are.
Same-site means registrable domain
blog.example.de and www.example.de count as the same site; example.de and example-shop.de do not. The split uses the public suffix list, not string matching.
Not a crawler
The tool reads one page and the sitemap. It does not follow the links it found, does not check whether they return 200, and does not run JavaScript, so links a script injects after load are not seen.
What the lists are good for, and what they are not
Most people who search for a URL extractor want one of three things: an inventory of a site before a migration, a seed list for a crawl or an agent run, or a quick look at where a page sends its visitors. All three come out of the same two fetches, and none of them needs a browser.
Inventory
The sitemap list is the site's own claim about what it contains, with a lastmod per URL where the site bothers to set one. Exported as CSV it is the starting point for a redirect map, a content audit or a comparison against what the search console reports as indexed. The page-link list from the homepage is the complementary view: what the site actually exposes to a visitor on arrival. URLs in the sitemap that no page links to, and links on the homepage that the sitemap omits, are both worth a second look.
Seed list
An agent that has to visit every product page or every help article needs a list to work through. The sitemap gives it in one request and, filtered by path, gives it per section. The JSON export is shaped to be pasted into a loop block of a workflow: an array of objects with url and lastmod, nothing else.
Where the page sends people
The external group of the page-link list is the set of third parties a visitor can reach in one click: partners, social networks, payment providers, tracking redirects. It is a static view, read from the HTML. Where a control resolves at click time through a script, this tool cannot see the destination; the form destination checker loads the page in a real browser and reports where each control actually leads.
What is not judged
Nothing is scored. A link is listed with its group and its anchor text, not with an opinion about whether it should exist. Broken links are not detected, because no link is followed. Pages that need JavaScript to render their navigation show fewer links than a visitor sees, and the result notes when the HTML contained very few anchors relative to its size. A site that blocks plain HTTP clients returns whatever it returns, and that is what is shown.
The fetched HTML and the parsed sitemap are discarded when the response is sent. A usage journal entry with timestamp and size is what remains, as the privacy policy describes; the URL you entered and the lists that came back are not stored.
Questions about extracting URLs
How do I get all the URLs of a website?
Enter the homepage. The sitemap list is the closest thing to a complete inventory the site itself publishes; the page-link list shows what the homepage exposes. Export either as CSV or JSON.
Does the tool crawl the whole site?
No. It fetches one page and the sitemap. Following every link and checking every status code is a crawl, which takes minutes to hours and is not what this tool is for.
Why are links missing that I can see in my browser?
They are probably added by JavaScript after load. The server reads the HTML as sent. The agent view loads the page in a real browser and lists its controls, links included.
What counts as external?
A different registrable domain, decided with the public suffix list. Subdomains of the same domain are same-site.
Is the list stored?
No. It is built for one response and then dropped. A usage journal keeps the time and size of the fetch.
Related tools
- Form destination checker Where each form and button on a page actually submits, from a real browser
- AI crawler checker What robots.txt allows GPTBot, ClaudeBot and the others on the same site
- Website to text The content of one of those URLs as text or Markdown
- Web crawling The glossary entry, and where crawling ends and scraping begins
Work through the list with an agent
Five browser hours, no card. Paste the JSON export into a loop block and let a session visit each URL.