<?xml version="1.0" encoding="UTF-8"?>
<!--
  MoneyBadger sitemap. URLs and trailing-slash conventions are reconciled to what the
  SPA actually serves, verified against apps/web/src/App.tsx routes and the live nav /
  footer in apps/web/src/components/Layout.tsx:
    - tool / CTA routes carry NO trailing slash (/snap; /start/ is the ported
      directory index and keeps its slash to match the site's own links)
    - content pages ported from the oracle keep their trailing slash (/product/, /faq/, ...)
    - blog posts carry NO trailing slash and NO .html (the .html forms 301 to these)

  Lives in apps/web/public/ so Vite copies it into the publish dir (apps/web/dist), where
  Netlify serves it as a real static file before the SPA /* -> /index.html fallback.

  Intentionally excluded: /preview/* and /themoneybadger/ (see robots.txt), plus the
  unlinked app / funnel / member-only and contact routes, which stay out of the index and
  are noindexed at the header level (apps/web/public/_headers). Re-submit in Google Search
  Console > Sitemaps after this returns 200.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

  <!-- Home -->
  <url>
    <loc>https://moneybadger.us/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>

  <!-- Conversion / tool pages (the front doors for paid + organic intent).
       /assess retired 2026-07-18: it 301s to /snap (public/_redirects). -->
  <url>
    <loc>https://moneybadger.us/snap</loc>
    <lastmod>2026-07-18</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>

  <!-- Profession doors (the four landing pages built to earn organic profession
       traffic; added 2026-07-18). Each speaks its own pay language, funnels to /snap. -->
  <url>
    <loc>https://moneybadger.us/firefighters</loc>
    <lastmod>2026-07-18</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/police</loc>
    <lastmod>2026-07-18</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/military</loc>
    <lastmod>2026-07-18</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/nurses</loc>
    <lastmod>2026-07-18</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/start/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/overtime-calculator/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/fdny-retirement/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/nurse-shift-calculator/</loc>
    <lastmod>2026-07-18</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/active-duty-pay/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/pricing</loc>
    <lastmod>2026-07-14</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/coach</loc>
    <lastmod>2026-07-14</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>

  <!-- Marketing / content pages -->
  <url>
    <loc>https://moneybadger.us/product/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/who/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/research/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/methodology/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/faq/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <!-- Blog -->
  <url>
    <loc>https://moneybadger.us/blog/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/blog/why-is-my-overtime-taxed-so-much</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/blog/why-budget-calculators-get-your-paycheck-wrong</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/blog/the-paradigm-shift</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/blog/first-responders-financial-stress-crisis</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/blog/the-50-30-20-budget-rule-explained</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- Legal / utility -->
  <url>
    <loc>https://moneybadger.us/privacy/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/terms/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/accessibility/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://moneybadger.us/security/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>

</urlset>
