Sitemap Examples: What a Sitemap Should Look Like and How to Make Yours

A sitemap is a list of your page addresses. See the smallest correct XML sitemap, five real sitemaps from live sites, HTML and visual examples, copy-paste templates and a free builder that writes yours.
Sitemap example: a website page tree turned into a sitemap.xml file sent to Google
On This Page 0%

    Is Google hiding your business?

    Run the free 60-second AI Visibility Audit and find out.

    No signup · Instant results

    A sitemap looks like a list of your website’s page addresses. The version Google reads is a small XML file: each page sits inside <url> and <loc> tags, with an optional last-changed date. There are also HTML sitemaps (a page of links for visitors) and visual sitemaps (a drawing used to plan a site). Below you will see all three, five real sitemaps from live websites, copy-paste templates, and a free builder that writes yours.

    Here is the idea that makes the rest easy: a sitemap is one list of pages, written three ways. Look at the same small business in each format and the differences stop being confusing.

    One list of pages, written three ways
    Example: a small plumbing company with six pages (an illustration, not a real business).
    The pages://about//services//services/drain-cleaning//services/water-heaters//contact/
    Visual sitemap
    Drawn to plan a website
    HomeAboutServicesContactDrain cleaningWater heaters
    HTML sitemap
    A page of links for people
    XML sitemap
    A file for Google and Bing
    <?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">  <url><loc>https://www.example.com/</loc></url>  <url><loc>https://www.example.com/about/</loc></url>  <url><loc>https://www.example.com/services/</loc></url>  <url><loc>https://www.example.com/services/drain-cleaning/</loc></url>  <url><loc>https://www.example.com/services/water-heaters/</loc></url>  <url><loc>https://www.example.com/contact/</loc></url></urlset>
    Same pages, three jobs. The highlighted page (drain cleaning) sits in all three. When SEO people say “sitemap”, they almost always mean the XML file.

    What should a sitemap look like?

    A correct XML sitemap in 2026 is shorter than most examples online. You need three tags: <urlset> around the whole list, <url> around each page, and <loc> with the page address. The sitemaps.org protocol, which Google, Bing and other engines follow, marks only those as required; everything else is optional.

    The smallest correct XML sitemap, line by line
    Tap any numbered line to see what it does. Copy the whole file with the button.
    sitemap.xml

    Tap another line to compare.

    Tags and rules from the sitemaps.org protocol and Google’s Build and submit a sitemap guide.

    Two more rules from the protocol catch people out. The file must be saved as UTF-8, and symbols inside addresses must be “escaped”, so & becomes &amp;. Dates use the W3C format, and you may drop the time and write just YYYY-MM-DD.

    What about <priority> and <changefreq>? You will still see them in templates, in plugin output and even in AI answers. Google stopped using both:

    What Google actually reads in a sitemap
    Old examples still show four tags per page. Two of them do nothing in Google.
    <loc>
    Read: the page address
    Required by the protocol. Google crawls the URL exactly as you list it.
    <lastmod>
    Read, if it is honest
    Google: “uses the <lastmod> value if it’s consistently and verifiably … accurate.” Bing calls it “crucial”.
    <changefreq>
    Ignored by Google
    Google: “Google ignores <priority> and <changefreq> values.” Bing “largely disregards these fields”.
    <priority>
    Ignored by Google
    Same line in Google’s guide. Leaving it in does no harm; adding it does no good.
    Sources: Google Search Central, Build and submit a sitemap (updated 8 July 2026); Bing Webmaster Blog, February 2023.

    Bing looked at this at scale. In its February 2023 study, 58% of hosts had at least one XML sitemap, and 84% of those sitemaps set lastmod. Bing also found most changefreq and priority values “are not set correctly”, which is why it ignores them too. The lesson: spend your effort on the right pages and honest dates.

    Real sitemap examples from live websites

    Templates are useful, but real files show what actually works at scale. We opened the public sitemaps of five well-known sites on 19 October 2026 and counted what is inside. Each one teaches one thing you can copy.

    Five live sitemaps, opened up
    We opened each file on 19 October 2026 and counted what is inside. Pick one.
    www.apple.com/sitemap.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
      <url><loc>https://www.apple.com/</loc></url>
      <url><loc>https://www.apple.com/accessibility/</loc></url>
      <url><loc>https://www.apple.com/airplay/</loc></url>
      <url><loc>https://www.apple.com/airpods-max/</loc></url>
      ...
    The bare minimum, at a giant

    863 URLsin one 74 KB file, and every entry is a single <loc> line. No dates, no priority, nothing else.

    What to copy: a sitemap can be nothing more than your page addresses. If you cannot keep dates honest, leave them out.

    Open it yourself: www.apple.com/sitemap.xml

    www.allbirds.com/sitemap.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
      <!-- This is the parent sitemap linking to additional sitemaps for products, collections and pages as shown below. The sitemap can not be edited manually, but is kept up to date in real time. -->
      <sitemap>
        <loc>https://www.allbirds.com/sitemap_products_1.xml?from=1878193471557&amp;to=7369944137808</loc>
      </sitemap>
      <sitemap>
        <loc>https://www.allbirds.com/sitemap_pages_1.xml?from=154421575&amp;to=94891114576</loc>
      </sitemap>
      <sitemap>
        <loc>https://www.allbirds.com/sitemap_blogs_1.xml</loc>
      </sitemap>
      ...
    A sitemap index, built by Shopify (store: Allbirds)

    8 fileslisted in the parent index, split by type: products, pages, collections, blogs, articles and more. Note &amp; inside the addresses: that is the escaped form of &.

    What to copy: split by page type, so you can see in Search Console which group has problems. On Shopify this happens for you.

    Open it yourself: www.allbirds.com/sitemap.xml

    seoshut.com/sitemap_index.xml
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" ...>
      <url>
        <loc>https://seoshut.com/blog/5xx-server-error/</loc>
        <lastmod>2026-10-18T09:29:21+00:00</lastmod>
        <image:image>
          <image:loc>https://seoshut.com/wp-content/uploads/2026/10/5xx-server-error-hero-1.jpg</image:loc>
        </image:image>
      </url>
      ...
    Our own site, generated by Rank Math

    5 sitemaps, 137 URLsPosts (60), pages (22), case studies (18), tools (30) and authors (7). Each post carries its images with <image:image>.

    What to copy: one sitemap per content type, real lastmod times from the last edit, and your images listed under the page that uses them.

    Open it yourself: seoshut.com/sitemap_index.xml

    techcrunch.com/wp-sitemap.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
      <sitemap>
        <loc>https://techcrunch.com/sitemap-page-1.xml</loc>
        <lastmod>2026-10-19</lastmod>
      </sitemap>
      <sitemap>
        <loc>https://techcrunch.com/sitemap-page-2.xml</loc>
        <lastmod>2026-10-19</lastmod>
      </sitemap>
      ...
    A big publisher's index (TechCrunch)

    2,061 sitemapsin the index, and the first one we opened holds 200 URLs. Dates are written short (YYYY-MM-DD), which the protocol allows.

    What to copy: many small files are fine. Short dates are fine. What matters is that every listed URL works.

    Open it yourself: techcrunch.com/wp-sitemap.xml

    www.squarespace.com/sitemap.xml
    <url>
      <loc>https://www.squarespace.com/press-coverage</loc>
      <changefreq>daily</changefreq>
      <priority>0.75</priority>
      <lastmod>2026-09-22</lastmod>
      <image:image>
        <image:loc>https://static1.squarespace.com/static/.../final_asset-press-and-media-banner.jpg</image:loc>
        <image:title>Press Coverage</image:title>
      </image:image>
    </url>
    One big file with images (Squarespace's own site)

    6,350 URLsin a 1.9 MB file, with 1,724 image entries. It also keeps changefreq and priority, which Google ignores but which do no harm.

    What to copy: nothing to fix if your builder adds extra tags. Spend your time on which pages are listed, not on these fields.

    Open it yourself: www.squarespace.com/sitemap.xml

    Excerpts copied from the live files and shortened with “…”. Counts are SEOs Hut measurements on 19 Oct 2026; sites change their files all the time.

    Notice how far every one of them is from the size limit. A single sitemap can hold 50,000 URLs or 50 MB (uncompressed), whichever comes first. That limit is the same for XML, RSS and text sitemaps, according to Google. Most small business sites will never get close:

    How full real sitemap files are
    URLs in one file, compared with the 50,000 limit. The bars are drawn to scale.
    Squarespace.comone file
    6,350
    Apple.comone file
    863
    TechCrunchfirst of 2,061 files
    200
    SEOs Hutblog posts file
    60
    The limitper file, any format
    50,000
    Measured by SEOs Hut on 19 Oct 2026 from each site’s public sitemap. Limit from Google and the sitemaps.org protocol: 50,000 URLs or 50 MB uncompressed per file.

    Sitemap index example: when one file is not enough

    A sitemap index is a sitemap of sitemaps. Instead of pages, it lists other sitemap files, and you submit only the index. Big sites use one because they must (Google allows up to 50,000 sitemaps in one index and up to 500 index files per site in Search Console). Small sites use one because plugins create it, and because splitting pages by type makes problems easier to spot.

    How a sitemap index works
    You submit one address. Google opens it and finds the other files.
    sitemap_index.xmllists files, not pages3 sitemaps insidepage-sitemap.xmlHome, About, Contactservice-sitemap.xmlDrain cleaning, Water heaters …post-sitemap.xmlEvery blog postsitemap_index.xmllists files, not pagespage-sitemap.xmlHome, About, Contactservice-sitemap.xmlDrain cleaning, Water heaters …post-sitemap.xmlEvery blog post
    An index can list up to 50,000 sitemaps (Google). Illustration of the structure; file names follow the pattern WordPress SEO plugins use.

    The format is almost the same as a normal sitemap. Swap <urlset> for <sitemapindex> and <url> for <sitemap>:

    sitemap_index.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
      <sitemap>
        <loc>https://www.example.com/page-sitemap.xml</loc>
        <lastmod>2026-10-02</lastmod>
      </sitemap>
      <sitemap>
        <loc>https://www.example.com/service-sitemap.xml</loc>
      </sitemap>
      <sitemap>
        <loc>https://www.example.com/post-sitemap.xml</loc>
      </sitemap>
    </sitemapindex>

    HTML sitemap example (the page for people)

    An HTML sitemap is an ordinary page on your site, often linked in the footer, that lists your important pages as clickable links. It helps a visitor who is lost, and it gives every page at least one internal link. Google’s current sitemap documentation only covers the files written for crawlers, so think of the HTML version as a navigation aid, not a ranking tool.

    HTML sitemap example for a local business
    What the page looks like to a visitor (links are placeholders here).
    Illustration of a typical layout: group by what the visitor wants (a service, a town), not by how the site was built.

    The code behind it is a plain list of links. Paste this into any page and change the addresses (the builder below can also write it from your URL list):

    sitemap page (HTML)
    <nav aria-label="Sitemap">
      <h1>Sitemap</h1>
      <h2>Services</h2>
      <ul>
        <li><a href="https://www.example.com/services/drain-cleaning/">Drain cleaning</a></li>
        <li><a href="https://www.example.com/services/water-heaters/">Water heaters</a></li>
      </ul>
      <h2>Areas we serve</h2>
      <ul>
        <li><a href="https://www.example.com/areas/round-rock/">Round Rock</a></li>
        <li><a href="https://www.example.com/areas/cedar-park/">Cedar Park</a></li>
      </ul>
    </nav>

    Visual sitemap example for a local business

    A visual sitemap is a planning drawing: boxes for pages, lines for how they connect. You make one before you build or rebuild a site, so every service and every town you serve gets its own page. Here is the shape we see work for local service businesses:

    Visual sitemap example: a local service business
    The plan you sketch before building (or rebuilding) a site.
    HomeServicesAreas we serveReviewsAboutContactDrain cleaningWater heatersLeak repairAustinRound RockCedar ParkOne page per service,one page per town you serve.Each box later becomes one URLin your XML sitemap.
    • Home
      • Services
        • Drain cleaning
        • Water heaters
        • Leak repair
      • Areas we serve
        • Austin
        • Round Rock
        • Cedar Park
      • Reviews
      • About
      • Contact
    Illustration. Draw yours with pen and paper, a spreadsheet or any diagram tool.

    Two levels deep is the sweet spot for most local sites: Home, then your main groups, then each service and each city page. Once the drawing is right, each box becomes one <loc> line in your XML sitemap.

    Image, language, news and text sitemap examples

    Most sites only need the standard file. These four extensions solve specific problems. Pick the one that matches your site and copy it:

    Lists the images on each page. Up to 1,000 <image:image> entries per page, according to Google’s image sitemap guide. Most WordPress SEO plugins add these for you, like the seoshut.com file above.

    image-sitemap.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
            xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
      <url>
        <loc>https://www.example.com/gallery/bathroom-remodel/</loc>
        <image:image>
          <image:loc>https://www.example.com/images/bathroom-after.jpg</image:loc>
        </image:image>
        <image:image>
          <image:loc>https://www.example.com/images/bathroom-before.jpg</image:loc>
        </image:image>
      </url>
    </urlset>

    For a site in two languages. Google’s rule: each <url> lists every language version, “including itself” (Google, localized versions).

    sitemap.xml (hreflang)
    <?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
            xmlns:xhtml="http://www.w3.org/1999/xhtml">
      <url>
        <loc>https://www.example.com/en/drain-cleaning/</loc>
        <xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/en/drain-cleaning/"/>
        <xhtml:link rel="alternate" hreflang="es" href="https://www.example.com/es/limpieza-de-drenajes/"/>
      </url>
      <url>
        <loc>https://www.example.com/es/limpieza-de-drenajes/</loc>
        <xhtml:link rel="alternate" hreflang="es" href="https://www.example.com/es/limpieza-de-drenajes/"/>
        <xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/en/drain-cleaning/"/>
      </url>
    </urlset>

    Only for publishers in Google News. Up to 1,000 <news:news> entries, and only articles “created in the last two days” (Google, news sitemaps).

    news-sitemap.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
            xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
      <url>
        <loc>https://www.example.com/news/new-water-rules-austin/</loc>
        <news:news>
          <news:publication>
            <news:name>Example Times</news:name>
            <news:language>en</news:language>
          </news:publication>
          <news:publication_date>2026-10-18</news:publication_date>
          <news:title>New water rules for Austin homes</news:title>
        </news:news>
      </url>
    </urlset>

    The simplest format Google accepts: one full URL per line, nothing else, saved with a .txt ending (Google). Handy for a tiny hand-built site.

    sitemap.txt
    https://www.example.com/
    https://www.example.com/services/drain-cleaning/
    https://www.example.com/services/water-heaters/
    https://www.example.com/contact/

    Does my website need a sitemap?

    Probably yes, and it costs nothing. Google’s own sitemap overview says a sitemap can help most when your site is large, new with few links pointing to it, or full of video and images. It also says you might not need one if your site is “small” (about 500 pages or fewer) and comprehensively linked internally.

    Even then, Google adds that “in most cases, your site will benefit from having a sitemap.” Most platforms make one for you anyway, so the real job is checking that yours exists, lists the right pages and has been submitted. That is what the next part walks you through.

    How to make a sitemap for your website, step by step

    Six steps, about 15 minutes for a small site. If you use WordPress, Shopify, Wix or Squarespace, step 2 is already done for you.

    Step 1. Check whether you already have one

    Type your domain plus each ending below into your browser. If you see a list of links or XML code, you have a sitemap. You can also paste your domain into our free Sitemap Checker, which finds it and tests every URL inside, or follow the five checks in how to find the sitemap of a website.

    Where your platform already keeps a sitemap
    Type your domain plus the ending in bold into your browser.
    WordPressbuilt in since 5.5
    yoursite.com/wp-sitemap.xml
    Yoast SEO or Rank MathWordPress plugins
    yoursite.com/sitemap_index.xml
    Shopifyevery store
    yourstore.com/sitemap.xml
    Wixevery site
    yoursite.com/sitemap.xml
    Squarespaceevery site
    yoursite.com/sitemap.xml
    Sources: WordPress core, Yoast, Rank Math, Shopify, Wix, Squarespace. When an SEO plugin is active, its sitemap usually replaces the WordPress one.

    Step 2. No sitemap? Build one here

    For a hand-built site, or any site without a generator, paste your page addresses below. You get a valid file to download in XML (for Google), HTML (for a visitor page) or text. List only pages you want people to find in search: no thank-you pages, logins, redirects or duplicates.

    Free sitemap builder

    Example addresses are filled in. Replace them with yours.

    2. Your sitemap
    
    

    Runs in your browser; nothing you paste is sent anywhere. It escapes symbols like & for you, removes duplicates and skips addresses from other domains. Only tick lastmod if every page really changed on that date.

    Step 3. Put the file at the top of your site

    Upload sitemap.xml to the main folder of your website (the same folder as your homepage), using your host’s file manager or FTP. Then open https://yoursite.com/sitemap.xml to confirm it loads. Google recommends the root because a sitemap there “can affect all files on the site”.

    Step 4. Add one line to robots.txt

    Your robots.txt file is where crawlers look first. Add this line anywhere in it, with your own address, so Google, Bing and other crawlers can find the sitemap without being told:

    robots.txt
    Sitemap: https://www.example.com/sitemap.xml

    Step 5. Submit it in Google Search Console

    Open Google Search Console, choose your website, then click Indexing and Sitemaps in the left menu. Type the end of your sitemap address (for example sitemap.xml or sitemap_index.xml) into “Add a new sitemap” and click Submit. Do the same in Bing Webmaster Tools.

    Skip the old “ping” trick you may read about: Google deprecated the sitemaps ping endpoint in June 2023. And keep expectations right. Google says submitting a sitemap is “merely a hint”: it helps Google find pages, but it does not guarantee they get crawled or indexed.

    Step 6. Read the status and fix what it shows

    Come back after a day or two. The Sitemaps report shows one of three statuses next to your file:

    The three statuses in the Search Console Sitemaps report
    What Google means, and what to do next.
    Status
    Google says
    Your next move
    Success
    “The sitemap was fetched and read without any errors.”
    Nothing to fix. Watch the “Discovered pages” number match your page count.
    Couldn’t fetch
    “Google couldn’t fetch the sitemap.”
    Open the address yourself. Fix a typo, a 404, a login wall or a robots.txt block, then resubmit.
    Sitemap had X errors
    “Fetched and partially read, but encountered some errors.”
    Click the sitemap to see the error lines. Usually a bad tag, an unescaped &, or a wrong date format.
    Quotes from Google’s Sitemaps report help page.

    Then check that the pages themselves made it in. Paste a few into our Google Index Checker, or use the steps in how to check if a page is indexed.

    Sitemap mistakes and how to fix them

    When a sitemap fails, it is usually one line. These are the five we fix most often, each shown wrong and right:

    Five sitemap mistakes, fixed
    Each one is a single line. Each one can stop Google reading the file or trusting it.
    An unescaped & breaks the file
    Wrong<loc>https://www.example.com/shop?size=10&color=red</loc>
    Right<loc>https://www.example.com/shop?size=10&amp;color=red</loc>

    The protocol requires symbols like & to be written as entity codes. The builder above does this for you.

    Short addresses are not allowed
    Wrong<loc>/services/drain-cleaning/</loc>
    Right<loc>https://www.example.com/services/drain-cleaning/</loc>

    Google asks for “fully-qualified, absolute URLs”.

    Listing the wrong version of a page
    Wrong<loc>http://example.com/contact</loc>
    Right<loc>https://www.example.com/contact/</loc>

    List the exact address you want in search (the canonical one). Leave out redirects, 404s and noindex pages.

    A typo in the namespace
    Wrong<urlset xmlns="http://sitemaps.org">
    Right<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

    This line must match the standard exactly, or the file is not read as a sitemap.

    Stamping today on every page
    Wrong<lastmod>2026-10-19</lastmod> (on all 140 pages)
    Right<lastmod>2025-03-04</lastmod> (the day this page really changed)

    Google, June 2023: if lastmod keeps claiming changes that did not happen, “eventually we’re not going to believe you anymore”.

    Rules from the sitemaps.org protocol, Google and the Google Search Central blog, 26 June 2023.

    One more that does not show up as an error: listing pages that redirect or return 404. Google asks you to include the URLs “you want to see in Google’s search results”, so every address in the file should load with a 200 status. Run your list through the Redirect Checker or Broken Link Checker before you submit. Redirected entries often come from old redirect chains.

    Sitemap done, but pages still not showing up? That is usually a crawl, content or local SEO problem, not the sitemap. Our team checks all of it in one audit.

    Get a website audit

    FAQs

    Are sitemaps still relevant?

    Yes. Google says that in most cases a site benefits from having a sitemap, especially if it is large, new or full of images and video. Bing calls the lastmod date “crucial” for knowing when pages change, and IndexNow recommends using sitemaps alongside its instant URL submissions. A sitemap takes minutes to set up and keeps working by itself.

    Where is the sitemap usually located?

    Usually at the top of the domain: /sitemap.xml on Shopify, Wix and Squarespace, /sitemap_index.xml with Yoast SEO or Rank Math, and /wp-sitemap.xml on WordPress without an SEO plugin. Many sites also list it in robots.txt on a line starting with “Sitemap:”. Our free Sitemap Checker can find it for you.

    Does Google use priority and changefreq in a sitemap?

    No. Google’s documentation states plainly that it ignores both priority and changefreq values. It does use lastmod, but only when the dates are consistently accurate. Bing says it largely disregards changefreq and priority too. You can leave them in a file your platform generates; there is no need to add them to a new one.

    How many URLs can one sitemap have?

    Up to 50,000 URLs or 50 MB uncompressed per sitemap file, whichever limit you hit first. For more, split your pages across several sitemaps and list them in a sitemap index. WordPress core is stricter by default and puts at most 2,000 entries in each of its sitemap files, adding more files as your site grows.

    Does submitting a sitemap guarantee my pages get indexed?

    No. Google calls a submitted sitemap “merely a hint” and says it does not guarantee every listed page will be crawled and indexed. It helps Google discover your pages; whether they get indexed depends on quality, duplicates and technical issues. If pages stay out of the index, check them with URL Inspection or our Google Index Checker.

    Sources: sitemaps.org protocol, Google: Build and submit a sitemap, Google: Sitemaps overview, Google: Large sitemaps, Google: Sitemaps report, Google: sitemaps ping deprecation, Bing: the importance of lastmod, IndexNow FAQ, WordPress 5.5 sitemaps. Real-file counts: SEOs Hut, 19 October 2026.

    Zamiul Islam
    Written By

    Zamiul Islam

    Technical SEO Expert

    Zamiul handles the technical side of SEOs Hut campaigns: crawl and indexing audits, site speed and Core Web Vitals, redirects, structured data and WordPress fixes. He runs the technical checks behind our 205-point audit and writes our guides on how search engines crawl, index and rank websites.

    Reviewed by Sayed Hasan, Founder and CEO

    Scroll to Top