<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

  <!-- Core -->
  <url>
    <loc>https://plaintxt.app/</loc>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>

  <!-- NOTE: the site uses trailingSlash:true, so the canonical URL the server
       returns 200 for is the trailing-slash form (e.g. /faq/). The sitemap MUST
       list those exact URLs — listing /faq (no slash) makes Google fetch a
       308 redirect to /faq/ and report "Redirect error" on the submitted URL. -->

  <!-- Product info -->
  <url>
    <loc>https://plaintxt.app/how-it-works/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://plaintxt.app/use-cases/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://plaintxt.app/security/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://plaintxt.app/plans/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://plaintxt.app/roadmap/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- Support / info -->
  <url>
    <loc>https://plaintxt.app/about/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://plaintxt.app/faq/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://plaintxt.app/contact/</loc>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- Legal -->
  <url>
    <loc>https://plaintxt.app/privacy/</loc>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://plaintxt.app/terms/</loc>
    <changefreq>yearly</changefreq>
    <priority>0.5</priority>
  </url>

  <!--
    NOT included (noindex / private):
    /create       — app-flow page
    /inbox        — requires auth
    /settings     — requires auth
    /search       — requires auth
    /c/*          — conversation pages, requires auth
    /control-room — operator-only, token-gated
    /admin-docs   — operator-only, token-gated
    /restore-internal — operator-only
    /api/*        — API endpoints
  -->

</urlset>
