XML Sitemap Generator
Free XML sitemap generator that crawls your site and produces a Google-ready sitemap.xml. Submit to Google Search Console and Bing Webmaster Tools to accelerate indexing of your pages. No signup, no page limits on the free tier.
Share on Social Media:
Free XML Sitemap Generator: Build a Search-Ready Sitemap in Seconds
Open Google Search Console for a young site and the Pages report often tells the same story: a handful of URLs indexed, a long list "Discovered – currently not indexed," and pages you published weeks ago nowhere to be found. The cause is rarely content quality at that stage. It is discovery. Google's crawler follows links it can find and quietly gives up where the trail goes cold, so a post that nothing links to can wait a long time for its first visit.
A sitemap.xml file closes that gap. It hands the crawler one flat, complete list of every URL you actually want indexed, with hints about freshness and importance attached. This free online XML sitemap generator crawls your site directly in the browser, shows you everything it finds, lets you prune the URLs that should never reach an index, and hands back a valid file to download. No install, no account, no paywall on the parts that count. If you have ever searched how to generate sitemap.xml, needed an XML sitemap generator from a URL list, or simply wanted to confirm what a plugin actually exported, this does it without adding anything to your stack.
How to Generate an XML Sitemap
You do not need to know XML, edit code, or touch server settings. The process is repeatable and finishes fast for most sites.
- Enter your website URL. Paste your full homepage address with the
https://prefix and the right subdomain, for examplehttps://www.example.comorhttps://blog.example.com. The www versus non-www choice matters because crawlers treat them as separate sites. - Choose your crawl settings. Set the page limit, decide whether to skip certain folders, and pick default change-frequency and priority values. The defaults are sensible if you are unsure.
- Start the crawl. Click generate. The tool fetches your homepage, reads its internal links, follows them, and keeps going until it has mapped the site or hit your page cap. Progress shows as it works.
- Review the discovered URLs. When the crawl finishes you get a list of every page found. Scan it for things that should not be indexed — login screens, cart pages, search-result URLs, staging links — and remove them.
- Set last-modified, priority, and change frequency. Optionally fine-tune the metadata. Give cornerstone pages higher priority and set realistic change-frequency hints for sections that update often.
- Generate and download the file. Build the final XML. The tool validates the structure and hands you a ready-to-use sitemap.xml file.
- Upload it to your site root. Place it at
https://www.yoursite.com/sitemap.xmlusing your file manager, FTP, or CMS. - Submit it to search engines. Add the sitemap URL in Google Search Console and Bing Webmaster Tools, and reference it in
robots.txtso crawlers find it on their own.
That is the full workflow. Most small and medium sites finish in under a minute, and you can rerun it any time you publish or restructure.
What an XML Sitemap Actually Contains
An XML sitemap is a text file written in Extensible Markup Language. It is not a page visitors see, and it is not the same as an HTML sitemap they click through. Its only reader is a crawler. Knowing what the generator produces makes the output easy to trust and tweak. Here is a minimal but complete sitemap with two entries:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://www.example.com/</loc>
<lastmod>2026-06-28</lastmod>
<changefreq>weekly</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>https://www.example.com/blog/sitemaps-explained</loc>
<lastmod>2026-06-12</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
</urlset>
Every entry is wrapped in a <url> block, and each block can carry four fields:
- <loc> — the full, absolute URL of the page. This is the only required field, and it must use the exact protocol and hostname you want indexed.
https://example.com/pageandhttps://www.example.com/pageare two different URLs to a crawler. - <lastmod> — the date the page last changed, in W3C format such as
2026-06-28. Crawlers use it to decide what is worth recrawling. - <changefreq> — a hint about update cadence: always, hourly, daily, weekly, monthly, yearly, or never. A hint, not a command.
- <priority> — a value from 0.0 to 1.0 showing how important a page is relative to your own other pages. It does nothing against competing websites.
The generator builds one of these blocks per discovered URL, escapes special characters (an ampersand in a query string becomes &, which is what keeps the XML valid), and closes the <urlset> tag. The output is a single file any compliant crawler parses on first read.
Crawl Mode vs. URL List Mode
The generator offers two ways to build the file, and the right one depends on whether you already know your URLs.
In crawl mode the tool behaves like a tiny search engine. It downloads your homepage, extracts every link in the HTML, drops external domains and non-page resources like images and PDFs, then queues the internal links it has not seen. It repeats this breadth-first walk until it runs out of new internal links or reaches your page cap.
Breadth-first matters in practice. Imagine a homepage that links to /blog and /products. The crawler visits both before it dives deeper, so a 200-page site discovered with a 50-page cap gives you the 50 shallowest, most-linked pages rather than 50 random ones. If your page limit cuts off mid-crawl, the pages you lose are the ones deepest in your structure — usually exactly where orphan content hides. Set the cap above your real page count when you can.
The catch is that a crawler can only reach what something links to. A page with zero internal links pointing at it is invisible to a link-following walk no matter how high you set the limit. That is where URL list mode earns its keep: instead of crawling, you paste the exact addresses you want, one per line, and the tool formats them straight into valid sitemap entries. It is faster, deterministic, and the right choice when you already have an export of your pages from a CMS or a spreadsheet. Many people use both — crawl first to catch what they forgot, then paste in the orphan URLs the crawl could never have reached.
Worked Example: From a Live Site to a Submitted Sitemap
Concrete numbers make the workflow clearer. Say you run a recipe blog at https://www.tastyplates.com with a homepage, an about page, a contact page, and 42 published recipes, plus a WordPress-generated tag archive and a login page.
You enter the homepage and set a page cap of 200. The crawl returns 61 URLs: the 45 real pages you expected, plus 14 tag-archive URLs like /tag/dessert and /tag/quick, plus /wp-login.php and /cart from a checkout plugin you forgot was active.
In the review step you remove the login and cart URLs outright. The tag archives are a judgment call: thin tag pages can dilute crawl budget, so you cut them and keep only the recipes and core pages, leaving 45 clean entries. You bump the homepage to priority 1.0, set the recipes to 0.7, and leave the about and contact pages at 0.5. Change frequency goes to weekly for the homepage (it lists newest recipes) and monthly for individual recipes.
You download sitemap.xml, upload it to the site root, add Sitemap: https://www.tastyplates.com/sitemap.xml to robots.txt, and submit the path in Search Console. A day later the Sitemaps report shows "45 discovered," matching your file exactly. If it had shown 47, you would know two unwanted URLs slipped back in — and exactly how many to hunt down.
Common Mistakes That Quietly Hurt You
A sitemap is easy to produce and easy to get subtly wrong. These are the errors that show up most often in Search Console's coverage warnings, and how to avoid them.
Listing noindexed or blocked URLs
Putting a URL in your sitemap while that page carries a noindex tag or is blocked in robots.txt is a direct contradiction. You are telling the crawler "index this" and "do not index this" at the same time. Google flags this as "Indexed, though blocked by robots.txt" or simply ignores the entry, and the conflicting signal wastes attention you could have spent elsewhere. List only canonical, indexable pages.
Stamping every URL with today's date
The lastmod field is useful only when it reflects a real content change. Some plugins rewrite every date to "now" on each regeneration. Do that for long enough and search engines learn the field is meaningless and stop trusting it — throwing away its single benefit. Update the date when the content actually changes and leave it stable otherwise.
Mixing domain forms
Pick one canonical form — www or not, http or https — and make sure every <loc> uses that exact form. A sitemap that mixes http://example.com/about and https://www.example.com/about entries splits signals across what the crawler sees as four separate URLs and can trip duplicate-content handling.
Letting dead URLs linger
Removing 404s is as important as adding new pages. A sitemap that points crawlers at deleted pages burns their crawl budget on requests that fail. Regenerate after you delete content, not only after you publish it.
Treating the sitemap as an index command
A sitemap is an invitation and a hint, never a guarantee. Engines still decide what to index based on quality, duplication, and crawl budget. If a thin page is not getting indexed, listing it again will not fix the underlying reason.
Sitemap Limits and Index Files
The sitemap protocol caps a single file at 50,000 URLs and 50 MB uncompressed. Most sites never come close, but large catalogs do. When you cross the limit, you do not cram everything into one oversized file. You split into multiple sitemaps and reference them from a sitemap index, which is itself an XML file that lists your individual sitemaps:
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://www.example.com/sitemap-posts.xml</loc>
<lastmod>2026-06-28</lastmod>
</sitemap>
<sitemap>
<loc>https://www.example.com/sitemap-products.xml</loc>
<lastmod>2026-06-27</lastmod>
</sitemap>
</sitemapindex>
Split logically rather than arbitrarily — for example one sitemap per content type or per section. A store with 120,000 products might use three product sitemaps plus one for editorial content, all listed in a single index file that you submit once. The advantage of splitting by type is diagnostic: when Search Console reports a coverage problem, you can see it is confined to, say, the product sitemap and narrow your search instead of scanning every URL on the site.
Where an XML Sitemap Genuinely Helps
A sitemap does not push you up the rankings. What it does is remove a discovery bottleneck, and that matters far more in some situations than others.
- Brand-new domains. A site with no backlinks and no crawl history can sit unnoticed for weeks. A sitemap gives crawlers a complete map on day one instead of leaving them to stumble in from nowhere.
- Deep or large sites. E-commerce catalogs and content libraries bury pages five or six clicks down. A sitemap surfaces URLs that internal links alone barely expose.
- Frequent publishing. News sites and active blogs add content constantly. Regenerating after each batch helps fresh posts get crawled sooner instead of waiting for the next organic visit.
- Orphan pages. A landing page reachable only from an email campaign, with no link from your navigation, is nearly invisible. Listing it in a sitemap is sometimes the only path to discovery.
- Migrations and redesigns. After a URL-structure change, a fresh sitemap helps engines learn the new addresses faster and shortens the window where old URLs throw errors.
- Non-WordPress and custom stacks. Plugins cover popular platforms, but a static site or a hand-built stack has no plugin. An online generator fills the gap with zero added dependencies.
- Verifying a plugin. Even if Yoast or RankMath generates your sitemap, an independent crawl is a quick way to confirm nothing important got excluded.
XML Sitemap vs. HTML Sitemap vs. robots.txt
These three files all touch crawling, so people new to technical SEO mix them up. They do different jobs.
An XML sitemap is machine-readable and lists URLs with metadata for crawlers. An HTML sitemap is a human-readable page, usually linked in the footer, that helps visitors navigate a large site; it adds some internal-linking value but does not replace the XML version. A robots.txt file is a set of access rules telling bots which areas they may crawl. They cooperate: robots.txt points crawlers to your XML sitemap with one Sitemap: line, the XML sitemap lists what you want crawled, and the HTML sitemap helps people. The recurring mistake is assuming a sitemap forces indexing. It does not.
Submitting and Maintaining Your Sitemap
Generating the file is half the job. Engines need to know it exists, and it needs to stay current.
Add it to robots.txt
Drop a line in robots.txt pointing to the sitemap, such as Sitemap: https://www.yoursite.com/sitemap.xml. Any crawler that reads your robots file then finds the sitemap automatically, even on engines where you never registered.
Submit in Google Search Console
Open the Sitemaps report, enter the path, and submit. Google reports how many URLs it discovered and flags errors like unreachable pages or invalid formatting. Check the report after each submission to confirm the file parsed and the discovered count matches what you built.
Submit in Bing Webmaster Tools
Bing has a similar flow, and because Bing powers other search experiences too, submitting there widens reach. The same sitemap.xml file works for both, so you generate once and submit in multiple places.
Privacy and Security
A sitemap lists only public URLs — the same addresses anyone reaches by browsing. The tool crawls pages that are already publicly accessible, so it never exposes anything previously hidden. There is no login and no personal information required. You keep the file and decide where it goes and which engines you submit it to. Because the tool is free with no sign-up, no account database ties your site to your identity. If your site has private sections, exclude those URLs and protect them with real authentication on the server — a sitemap is never a security boundary.
Related Tools
If you are working on your site's technical foundation, these other free Tools Hub utilities pair naturally with the sitemap generator:
- Robots.txt Generator — create the crawling-rules file that points search engines to your new sitemap.
- Meta Tag Generator — build accurate title and description tags so the pages in your sitemap show well in search results.
- Broken Link Checker — find dead internal links so your sitemap only lists pages that actually load.
- HTML to Markdown Converter — repurpose page content quickly when restructuring your site.
- URL Encoder / Decoder — clean up and verify URLs with special characters before adding them to a sitemap.
- Word Counter — gauge the depth of the content on the pages you are asking crawlers to index.
Frequently Asked Questions
Is this XML sitemap generator really free?
Yes. The core sitemap generation is completely free with no hidden charges. You can crawl your site, review the URLs, and download a valid sitemap.xml file without paying anything, making it a genuine free online XML sitemap generator for everyday use.
Do I need to create an account or sign up?
No. There is no sign-up and no login required. You enter your website URL, generate the sitemap, and download it. We do not ask for an email address or any personal details to use the tool.
Does the tool add a watermark or branding to my sitemap?
No. The downloaded sitemap is clean, standards-compliant XML with no watermark and no promotional URLs injected. It contains only the pages you chose to include, exactly as search engines expect.
Is my website data kept private?
The tool works only with the public URLs on your site, and it does not store your pages or require an account. The sitemap file is yours to download and upload wherever you like, so your data stays private and under your control.
How do I generate a sitemap.xml from a list of URLs?
Use the URL list input instead of the crawler. Paste your addresses, one per line, and the tool formats them into valid sitemap entries. This is ideal when you already know exactly which pages you want indexed and do not need a full crawl.
Will this work for a WordPress site?
Yes. While WordPress has sitemap plugins, this tool works for any platform, including WordPress, by crawling your live site. It is a good way to generate or independently verify a WordPress sitemap without installing another plugin.
Where do I put the sitemap file after downloading it?
Upload it to the root directory of your website so it is reachable at https://www.yoursite.com/sitemap.xml. Then reference it in your robots.txt file and submit the URL in Google Search Console and Bing Webmaster Tools.
The crawl missed some of my pages. Why?
Crawl-based discovery only finds pages reachable through internal links, so orphan pages with no links pointing to them get skipped. Either add internal links to those pages or use the URL list input to add them manually. Also confirm your page limit was high enough to cover the whole site.
Do priority and change frequency affect ranking?
No. Priority influences only how your own pages compare to each other in a crawler's eyes, and change frequency is a soft hint. Neither boosts your position against competing websites. Set them honestly and do not obsess over the exact numbers.
My site has more than 50,000 URLs. What now?
Split your URLs across multiple sitemap files and create a sitemap index file that references them all. Submit the index file to search engines, and they will read each child sitemap in turn.
How is an XML sitemap different from an HTML sitemap?
An XML sitemap is written for search engine crawlers and lists URLs with metadata, while an HTML sitemap is a visible page that helps human visitors navigate. You can have both; this tool produces the XML version that search engines read.
Can I generate a sitemap for Google specifically?
The sitemap protocol is a shared standard, so a single file works for Google, Bing, and other major engines. There is no separate Google-only format; you generate one XML sitemap for Google and the same file serves every compliant crawler.
🔗 Relevant Tools
Link to this tool
Found this tool useful? Add it to your website or blog with one of these snippets.
Add the live, working tool to your own page:
Leave a comment
Comments go straight to our team — they are not published on the site.