<?xml version="1.0" encoding="UTF-8"?>
<!--
  Every URL here is genuinely public and meant for search engines. Every other route in
  this app is behind a login, so listing them would point crawlers at an empty SPA shell.

  Keep lastmod in step by hand:
  - homepage/privacy/terms: match LEGAL_UPDATED in src/features/legal/legalContent.ts
    (only privacy/terms actually change with it, but the homepage entry is bumped
    alongside them for simplicity since it changes at roughly the same cadence).
  - each blog post: match its own publishedAt in src/features/blog/blogContent.ts.
  - /blog itself: bump when a post is added or removed.
  - keyfren-vs-*: bump when src/features/compare/compareContent.ts changes for that page.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.keyfren.com/</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/privacy</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/terms</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/blog</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/blog/how-to-keep-in-touch-with-friends-you-never-see</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/blog/how-often-should-you-contact-friends</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/blog/stay-in-touch-without-being-fake</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/blog/networking-follow-up-system</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/blog/relationship-manager-vs-crm</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/keyfren-vs-dex</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/keyfren-vs-clay</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.keyfren.com/keyfren-vs-covve</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <!-- A reference doc for a specific audience (evaluating B2B customers), not an SEO
         target — low priority is deliberate, not an oversight. -->
    <loc>https://www.keyfren.com/dpa</loc>
    <lastmod>2026-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.3</priority>
  </url>
</urlset>
