<?xml version="1.0" encoding="UTF-8"?>
<!--
  Static sitemap for the marketing side of the site.

  Only pages that (a) exist as real URLs, (b) are allowed in robots.txt, and
  (c) render meaningful content without a login belong here. Listing a URL that
  is Disallow-ed or that 404s is worse than omitting it — Search Console reports
  it as an error against the whole sitemap.

  Tenant storefronts are NOT listed here. They are generated per tenant by the
  backend and served at /sitemap-storefronts.xml (see robots.txt), because the
  list changes every time a company onboards and a checked-in file would go
  stale immediately.

  `lastmod` should be bumped when a page's copy actually changes. Bumping it on
  every deploy without a real content change teaches Google to ignore it.

  Language note: the landing page exists in two languages at two real URLs —
  "/" (English) and "/bn" (Bangla) — so both are listed below with a reciprocal
  <xhtml:link> cluster. Three rules Google enforces, all easy to get wrong:

    • Reciprocity — every URL in a cluster must list every other URL, itself
      included. "/" and "/bn" therefore carry an IDENTICAL set of three links.
      A one-way annotation is discarded silently, with no Search Console error.
    • x-default — the edition served to a visitor whose language we do not
      have. English casts the wider net, so it points at "/".
    • The same cluster is also emitted in the page <head> (index.html for the
      first crawl, src/components/Seo.tsx per route after React boots). All
      three places must agree; a contradiction makes Google ignore all of them.

  The other pages are English-only for now. Do NOT give them a self-referencing
  single <xhtml:link> as "completeness" — a cluster of one is an incomplete
  cluster, not a complete one. They get alternates when /bn/pricing and
  /bn/register-tenant actually exist as URLs.
-->
<urlset
  xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  xmlns:xhtml="http://www.w3.org/1999/xhtml">

  <url>
    <loc>https://tenobacloude.com/</loc>
    <lastmod>2026-08-23</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
    <xhtml:link rel="alternate" hreflang="en-bd" href="https://tenobacloude.com/" />
    <xhtml:link rel="alternate" hreflang="bn-bd" href="https://tenobacloude.com/bn" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://tenobacloude.com/" />
  </url>

  <url>
    <loc>https://tenobacloude.com/bn</loc>
    <lastmod>2026-08-23</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
    <xhtml:link rel="alternate" hreflang="en-bd" href="https://tenobacloude.com/" />
    <xhtml:link rel="alternate" hreflang="bn-bd" href="https://tenobacloude.com/bn" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://tenobacloude.com/" />
  </url>

  <url>
    <loc>https://tenobacloude.com/pricing</loc>
    <lastmod>2026-08-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://tenobacloude.com/register-tenant</loc>
    <lastmod>2026-08-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

</urlset>
