<?xml version="1.0" encoding="UTF-8"?>
<!--
  The public pages: the landing page, the explainers, the guides and the
  trust pages. The wizard steps are deliberately absent: they are gated on
  state a crawler does not have, so listing them would be submitting URLs
  that render empty.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://exam-shuffle.com/</loc>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/how-it-works</loc>
    <changefreq>monthly</changefreq>
    <!-- Below the landing page deliberately. This page is a supporting
         explainer, not the destination for the product's own name. -->
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/about</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <!-- The guides index and every article on it. Above the trust pages and
       below the landing page: these are the pages a search for the problem
       (rather than for the product's name) should land on. Each article's
       URL is listed individually because the index alone tells a crawler
       nothing about what it links to.

       This list is static and the guides are generated from the Markdown in
       src/content/guides/, so the two can drift. `src/test/sitemap.test.ts`
       fails when a guide is not listed here. -->
  <url>
    <loc>https://exam-shuffle.com/guides</loc>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/question-order-effects</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/exam-day-seating-and-distribution-checklist</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/randomizing-exams-in-google-forms-canvas-moodle</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/are-your-exam-versions-equally-difficult</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/managing-answer-keys-across-versions</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/multiple-choice-questions-that-survive-shuffling</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/does-shuffling-reduce-copying</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/guides/multiple-exam-versions-in-word</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <!-- Privacy, terms and contact: real, indexable pages a reviewer or a
       reader can reach, but not what anyone is searching for -- hence the
       low priority and the yearly changefreq, since none of them changes
       often once written. -->
  <url>
    <loc>https://exam-shuffle.com/privacy</loc>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/terms</loc>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://exam-shuffle.com/contact</loc>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
</urlset>
