<?xml version="1.0" encoding="UTF-8"?>
<!--
  okayhonee.com sitemap.

  Only real, indexable, self-describing pages belong here.

  DELIBERATELY EXCLUDED:
    /d/<token>  — user-written share snapshots. Hard-coded noindex, permanently out of this file.

  /privacy/ and /terms/ ARE listed now. They used to be hash routes only (/#/privacy, /#/terms), which
  are not real URLs and could not be listed. They now also exist as prerendered static pages in
  public/, so they are fetchable without JavaScript — which is the whole reason they were built (a
  payment processor's account review does not run a SPA). The in-app hash routes still work and render
  the same text from src/data/legalContent.tsx; these are the canonical addresses.

  Update <lastmod> when a page's content actually changes. A date that never moves is a weaker
  freshness signal than no date at all.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://okayhonee.com/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <!-- 0.9, NOT 1.0. `/` leads with the listener product now as well, and its prerendered copy
       restates most of this page — two near-identical URLs both asking for top priority is how a
       duplicate cluster gets collapsed onto whichever one Google prefers, which could as easily be
       this one as the root. The root is the product; this is the page that answers the query. -->
  <url>
    <loc>https://okayhonee.com/talk-to-someone/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <!-- The decode's own two URLs. `/` used to BE the HER decode, which is why only HIM needed a
       page of its own; since the root was reassigned to the listener product the decode lives at
       /#/decode, and Google does not index a fragment as a separate URL — so without this the
       original half of the product had no indexable address at all, while every page that points at
       it (/how-it-works/, /about/, /404.html) still does. -->
  <url>
    <loc>https://okayhonee.com/decode-her/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://okayhonee.com/decode-him/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://okayhonee.com/how-it-works/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://okayhonee.com/about/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://okayhonee.com/safety/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <!-- Low priority, but present: these need to be crawlable and citable, not competitive. -->
  <url>
    <loc>https://okayhonee.com/privacy/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://okayhonee.com/terms/</loc>
    <lastmod>2026-08-08</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
</urlset>
