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

  Your sitemap.xml index has referenced this file since 2026-07-20. If it isn't
  on the server, Search Console has been logging a fetch error for it that whole
  time — worth checking the Sitemaps report after deploying this.

  Contains the four original marketplace categories plus the five added in
  July 2026. Category pages only; see the note on detail and facet URLs at the
  bottom.

  Place at:  /sitemap-marketplace.xml   (site root, alongside sitemap.xml)
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

  <!-- ── Original categories ─────────────────────────────────────────── -->

  <url>
    <loc>https://herdmanager.app/marketplace/goats-for-sale/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://herdmanager.app/marketplace/stud-services/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://herdmanager.app/marketplace/kidding-reservations/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://herdmanager.app/marketplace/products/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>

  <!-- ── Added July 2026 ─────────────────────────────────────────────── -->

  <url>
    <loc>https://herdmanager.app/marketplace/semen-for-sale/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://herdmanager.app/marketplace/goat-services/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://herdmanager.app/marketplace/livestock-hauling/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://herdmanager.app/marketplace/embryos-for-sale/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://herdmanager.app/marketplace/wanted/</loc>
    <lastmod>2026-07-26</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>

</urlset>

<!--
  ─────────────────────────────────────────────────────────────────────────
  WHAT'S DELIBERATELY NOT IN HERE
  ─────────────────────────────────────────────────────────────────────────

  DETAIL URLs  (/marketplace/semen-for-sale/{id}/ etc.)
    Generated client-side from Firestore. Listing them statically means the
    sitemap is wrong the moment something sells, and a sitemap full of URLs
    that resolve to "no longer available" trains Google to trust it less.
    Google crawls inward from the category pages, which is the right trade
    where inventory turns over.

    If detail coverage becomes worth having later, generate this file from a
    scheduled Cloud Function reading publicListings — the same one that runs
    marketplaceStalenessSweep already has the data in hand.

  GOAT FACET URLs  (/goats-for-sale/{breed}/ and /{breed}/{state}/)
    These exist and are genuinely valuable — "Nigerian Dwarf goats for sale in
    Texas" is a real search. But breed × state is several hundred combinations
    and most have no inventory on any given day. Submitting them all creates
    soft-404s at scale, which is worse than not submitting them.

    Two better options, in order of effort:
      1. Link to the highest-inventory facets from the category page so Google
         discovers them naturally and only where there's something to see.
      2. Generate facet URLs dynamically, including only combinations with
         listings above a threshold.

  WANTED DETAIL PAGES
    Individually noindexed at render time. The category page above is indexed
    because "goats wanted" is a legitimate query; the individual requests are
    not offers and shouldn't compete in results for people trying to buy.

  ─────────────────────────────────────────────────────────────────────────
  AFTER DEPLOYING
  ─────────────────────────────────────────────────────────────────────────

  1. Confirm https://herdmanager.app/sitemap-marketplace.xml actually loads.
  2. Update <lastmod> for it in sitemap.xml to 2026-07-26.
  3. Resubmit sitemap.xml in Search Console and check the Sitemaps report —
     if this file was previously 404ing, that error should clear.
  4. Run one URL per new category through the URL Inspection tool. These pages
     render entirely in JavaScript with no SSR fallback, so the thing to verify
     is that the rendered HTML and JSON-LD are actually being seen. That check
     matters more here than on your static landing pages.

  Note: sitemap-pages.xml carries a "Generated by src/landing/build_landing.py
  — do not hand-edit" header. If that script also emits this file, add these
  URLs there instead of maintaining this by hand, or the next build will
  overwrite it.
-->
