<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
  <url><loc>https://keydispense.com/</loc><lastmod>2026-09-03</lastmod><changefreq>weekly</changefreq><priority>1.0</priority></url>
  <url><loc>https://keydispense.com/author/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/guide/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/compare/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/glossary/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/tools/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/tools/build-vs-buy-licensing/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/tools/perpetual-vs-subscription/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/tools/license-validation-volume/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.8</priority></url>
  <url><loc>https://keydispense.com/legal/</loc><lastmod>2026-09-03</lastmod><changefreq>yearly</changefreq><priority>0.4</priority></url>
  <url><loc>https://keydispense.com/privacy/</loc><lastmod>2026-09-03</lastmod><changefreq>yearly</changefreq><priority>0.4</priority></url>
  <url><loc>https://keydispense.com/terms/</loc><lastmod>2026-09-03</lastmod><changefreq>yearly</changefreq><priority>0.4</priority></url>
  <url><loc>https://keydispense.com/disclosure/</loc><lastmod>2026-09-03</lastmod><changefreq>yearly</changefreq><priority>0.4</priority></url>
  <url><loc>https://keydispense.com/sitemap/</loc><lastmod>2026-09-03</lastmod><changefreq>monthly</changefreq><priority>0.3</priority></url>
  <url><loc>https://keydispense.com/blog/</loc><lastmod>2026-09-03</lastmod><changefreq>weekly</changefreq><priority>0.9</priority></url>
  <url><loc>https://keydispense.com/blog/why-digital-products-need-licensing/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/why-digital-products-need-licensing.jpg</image:loc><image:title>Why Digital Products Need Licensing</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/generating-license-keys/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/generating-license-keys.jpg</image:loc><image:title>Generating License Keys That Work</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/validating-keys-without-frustrating-users/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/validating-keys-without-frustrating-users.jpg</image:loc><image:title>Validating Keys Without Frustrating Users</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/activation-limits-casual-sharing/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/activation-limits-casual-sharing.jpg</image:loc><image:title>Activation Limits and Casual Sharing</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/handling-refunds-revocation/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/handling-refunds-revocation.jpg</image:loc><image:title>Handling Refunds and Revocation</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/licensing-without-building-it/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/licensing-without-building-it.jpg</image:loc><image:title>Building Licensing Without Building It Yourself</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/licensing-models-digital-products/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/licensing-models-digital-products.jpg</image:loc><image:title>Licensing Models for Digital Products</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/protect-product-without-punishing/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/protect-product-without-punishing.jpg</image:loc><image:title>Protecting Your Product Without Punishing Customers</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/scaling-licensing-as-you-grow/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/scaling-licensing-as-you-grow.jpg</image:loc><image:title>Scaling Licensing as You Grow</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/offline-license-activation-flow/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/offline-license-activation-flow.jpg</image:loc><image:title>How do you activate a license when the customer&#39;s machine never touches the internet?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/trial-keys-that-convert/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/trial-keys-that-convert.jpg</image:loc><image:title>What is the best way to structure trial keys so they convert to paid?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/leaked-license-key-response/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/leaked-license-key-response.jpg</image:loc><image:title>What should a developer do when a license key leaks on a public forum?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/device-fingerprinting-license-enforcement/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/device-fingerprinting-license-enforcement.jpg</image:loc><image:title>How much device fingerprinting is reasonable for license enforcement in desktop apps?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/duplicate-webhook-license-issuing/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/duplicate-webhook-license-issuing.jpg</image:loc><image:title>Why does license issuing break when your payment webhook fires twice?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/support-tooling-license-lookup/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/support-tooling-license-lookup.jpg</image:loc><image:title>Which license lookup tools should support staff have before launch day?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/migrating-legacy-license-keys/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/migrating-legacy-license-keys.jpg</image:loc><image:title>When should you migrate existing customers from an old license key format?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/team-seat-license-changes/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/team-seat-license-changes.jpg</image:loc><image:title>How do you license a team plan when seats change every month?</image:title></image:image></url>
  <url><loc>https://keydispense.com/blog/grace-periods-failed-renewals/</loc><lastmod>2026-09-07</lastmod><changefreq>monthly</changefreq><priority>0.7</priority><image:image><image:loc>https://keydispense.com/assets/blog/grace-periods-failed-renewals.jpg</image:loc><image:title>What should a subscription app do when a license check fails at renewal?</image:title></image:image></url>
</urlset>
