<?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://typingsutra.com/</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>

  <!-- /pricing, /learn and /practice are intentionally NOT listed. They are in
       prerender.js's EXCLUDE set (they fetch on mount / are app surfaces), so
       they have no snapshot and fall through to the SPA fallback — which serves
       a byte-identical copy of the prerendered homepage. Listing them submitted
       three duplicate URLs to Google. Anything added here MUST have its own
       prerendered snapshot; prerender.js reads this file as its route list. -->

  <url>
    <loc>https://typingsutra.com/exam-boards</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/psssb-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/ssc-chsl-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/rrb-ntpc-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/dsssb-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/rsmssb-ldc-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/upsssc-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/bssc-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/psssb-clerk-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/psssb-senior-assistant-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/psssb-punjabi-typing</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/psssb-english-typing</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/ssc-chsl-hindi-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/ssc-chsl-english-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/ssc-chsl-ldc-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/ssc-chsl-deo-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/rrb-ntpc-hindi-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/rrb-ntpc-english-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/dsssb-hindi-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/dsssb-english-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/dsssb-junior-clerk-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/pspcl-typing-test</loc>
    <lastmod>2026-07-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/pspcl-punjabi-typing-test</loc>
    <lastmod>2026-07-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/pspcl-english-typing-test</loc>
    <lastmod>2026-07-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/cpct-typing-test</loc>
    <lastmod>2026-07-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/cpct-hindi-typing-test</loc>
    <lastmod>2026-07-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/cpct-english-typing-test</loc>
    <lastmod>2026-07-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <!-- /psssb-clerk-it-typing-test and /psssb-clerk-accounts-typing-test are
       retired. They were 85% identical to /psssb-clerk-typing-test because the
       typing test is the same for all three streams; they are now sections on
       that page and 301 to it from vercel.json. Do not re-add. -->

  <url>
    <loc>https://typingsutra.com/psssb-steno-typist-typing-test</loc>
    <lastmod>2026-07-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/upsssc-hindi-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/upsssc-english-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/upsssc-junior-assistant-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/upsssc-junior-clerk-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/upsssc-assistant-grade-3-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/bssc-hindi-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/bssc-english-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/rsmssb-hindi-typing-test</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/rsmssb-ldc-typing-practice-guide</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/learn-punjabi-typing</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/learn-hindi-typing</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/learn-english-typing</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/learn-hindi-remington</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/punjabi-keyboard</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/hindi-keyboard</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>


  <url>
    <loc>https://typingsutra.com/ppsc-senior-assistant-typing-test</loc>
    <lastmod>2026-07-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://typingsutra.com/ppsc-senior-assistant-punjabi-typing-test</loc>
    <lastmod>2026-07-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <!-- noindex, follow (set in-page): /terms /privacy /shipping /refunds /contact
       are compliance pages, and /rsmssb-ldc-full-typing-test plus the two
       rsmssb-ldc practice pages are app surfaces whose visible bulk is a fetched
       session list rather than prose. All remain reachable from navigation;
       they are simply not submitted for indexing. Do not re-add. -->

  <!-- Deliberately NOT listed, and carrying noindex,follow set in-page:
         /terms /privacy /shipping /refunds /contact  — compliance pages,
           78-363 words each; they must exist and stay reachable, but
           indexing them drags down the average quality of what is crawled.
         /rsmssb-ldc-full-typing-test
         /rsmssb-ldc-hindi-typing-practice
         /rsmssb-ldc-english-typing-practice  — app surfaces. Their visible
           bulk is a fetched session list, not prose (206-282 real words).
       All eight stay linked in navigation. Do not re-add. -->
</urlset>
