<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://cross-deck.com/</loc>
    <lastmod>2026-06-12T12:00:49.466Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/apps/dashboard/</loc>
    <lastmod>2026-06-12T12:00:49.215Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/</loc>
    <lastmod>2026-06-12T12:40:54.712Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/app-monetization-metrics-every-indie-developer-should-watch/</loc>
    <lastmod>2026-06-12T12:40:54.718Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/app-store-rejection-forensics-step-by-step/</loc>
    <lastmod>2026-06-12T12:40:54.726Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/app-store-server-notifications-v2-explained-for-founders/</loc>
    <lastmod>2026-06-12T12:40:54.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/billing-retry-and-grace-period-explained-for-ios-subscriptions/</loc>
    <lastmod>2026-06-12T12:40:54.717Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/crossdeck-vs-revenuecat-which-is-better-for-app-subscriptions-and-analytics/</loc>
    <lastmod>2026-06-12T12:40:54.713Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/crossdeck-vs-telemetrydeck-when-analytics-alone-is-not-enough/</loc>
    <lastmod>2026-06-12T12:40:54.713Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/editorial/</loc>
    <lastmod>2026-06-12T12:40:54.712Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/google-play-subscription-events-explained-for-app-founders/</loc>
    <lastmod>2026-06-12T12:40:54.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-ai-coding-tools-should-install-subscription-analytics-safely/</loc>
    <lastmod>2026-06-12T12:40:54.721Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-build-a-privacy-first-analytics-strategy-for-paid-apps/</loc>
    <lastmod>2026-06-12T12:40:54.718Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-build-a-subscription-analytics-dashboard-from-scratch-and-why-not-to/</loc>
    <lastmod>2026-06-12T12:40:54.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-calculate-and-improve-net-revenue-retention-for-app-subscriptions/</loc>
    <lastmod>2026-06-12T12:40:54.721Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-capture-ios-app-errors-and-connect-them-to-subscription-state/</loc>
    <lastmod>2026-06-12T12:40:54.725Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-capture-javascript-errors-without-installing-a-second-sdk/</loc>
    <lastmod>2026-06-12T12:40:54.724Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-capture-network-failures-and-failed-api-calls-in-your-app/</loc>
    <lastmod>2026-06-12T12:40:54.725Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-compare-ios-android-and-web-revenue-in-one-place/</loc>
    <lastmod>2026-06-12T12:40:54.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-connect-stripe-web-subscriptions-to-ios-app-access/</loc>
    <lastmod>2026-06-12T12:40:54.715Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-create-a-paid-app-launch-checklist-for-developers/</loc>
    <lastmod>2026-06-12T12:40:54.723Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-create-a-subscription-app-stack-stripe-app-store-analytics-entitlements/</loc>
    <lastmod>2026-06-12T12:40:54.718Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-debug-a-subscription-user-who-should-have-pro-access/</loc>
    <lastmod>2026-06-12T12:40:54.719Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-design-paid-features-that-map-cleanly-to-entitlements/</loc>
    <lastmod>2026-06-12T12:40:54.723Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-identify-which-app-features-drive-paid-conversion/</loc>
    <lastmod>2026-06-12T12:40:54.720Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-instrument-a-next-js-app-for-subscriptions-and-entitlement-checks/</loc>
    <lastmod>2026-06-12T12:40:54.718Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-instrument-a-swiftui-app-for-telemetry-and-paid-access/</loc>
    <lastmod>2026-06-12T12:40:54.717Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-know-when-a-paying-customer-hit-a-checkout-error/</loc>
    <lastmod>2026-06-12T12:40:54.724Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-map-stripe-products-to-mobile-app-entitlements/</loc>
    <lastmod>2026-06-12T12:40:54.716Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-measure-onboarding-impact-on-subscription-revenue/</loc>
    <lastmod>2026-06-12T12:40:54.721Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-monetize-an-ios-app-without-stitching-tools-together/</loc>
    <lastmod>2026-06-12T12:40:54.713Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-monitor-failed-payments-and-billing-retry-in-your-app/</loc>
    <lastmod>2026-06-12T12:40:54.721Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-prepare-your-app-for-subscription-pricing-experiments/</loc>
    <lastmod>2026-06-12T12:40:54.723Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-prevent-sandbox-purchases-from-polluting-production-revenue/</loc>
    <lastmod>2026-06-12T12:40:54.719Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-reduce-subscription-churn-by-understanding-product-behavior/</loc>
    <lastmod>2026-06-12T12:40:54.717Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-see-app-revenue-in-real-time-before-app-store-connect-catches-up/</loc>
    <lastmod>2026-06-12T12:40:54.715Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-set-up-global-error-handlers-in-a-web-app-without-double-reporting/</loc>
    <lastmod>2026-06-12T12:40:54.724Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-set-up-slack-and-email-alerts-for-production-errors-without-drowning-your-team/</loc>
    <lastmod>2026-06-12T12:40:54.725Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-track-feature-adoption-and-revenue-in-the-same-dashboard/</loc>
    <lastmod>2026-06-12T12:40:54.720Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-track-refunds-and-understand-why-users-ask-for-them/</loc>
    <lastmod>2026-06-12T12:40:54.723Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-track-trial-to-paid-conversion-in-a-mobile-app/</loc>
    <lastmod>2026-06-12T12:40:54.714Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-use-ai-prompts-to-install-an-app-analytics-sdk/</loc>
    <lastmod>2026-06-12T12:40:54.720Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-use-one-payment-relationship-across-ios-android-and-web/</loc>
    <lastmod>2026-06-12T12:40:54.715Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/how-to-validate-app-store-purchases-without-building-subscription-infrastructure/</loc>
    <lastmod>2026-06-12T12:40:54.716Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/i-watched-apple-review-my-app-live/</loc>
    <lastmod>2026-06-12T12:40:54.726Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/products-vs-entitlements-the-simplest-way-to-manage-paid-app-access/</loc>
    <lastmod>2026-06-12T12:40:54.714Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/revenuecat-alternative-subscription-infrastructure-with-product-analytics-built-in/</loc>
    <lastmod>2026-06-12T12:40:54.714Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/revenuecat-products-entitlements-and-offerings-a-plain-english-guide/</loc>
    <lastmod>2026-06-12T12:40:54.720Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/sandbox-vs-production-for-app-subscriptions-how-to-test-safely/</loc>
    <lastmod>2026-06-12T12:40:54.719Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/sentry-alternative-for-saas-founders-who-need-customer-context/</loc>
    <lastmod>2026-06-12T12:40:54.724Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/source-maps-for-production-javascript-errors-how-to-use-them-safely/</loc>
    <lastmod>2026-06-12T12:40:54.725Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/storekit-2-subscription-analytics-what-developers-should-track/</loc>
    <lastmod>2026-06-12T12:40:54.716Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/stripe-webhooks-for-app-subscriptions-what-founders-need-to-know/</loc>
    <lastmod>2026-06-12T12:40:54.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/telemetrydeck-alternative-privacy-friendly-analytics-connected-to-revenue/</loc>
    <lastmod>2026-06-12T12:40:54.714Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/telemetrydeck-signals-explained-how-product-events-become-growth-insights/</loc>
    <lastmod>2026-06-12T12:40:54.720Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/the-app-subscription-dashboard-indie-developers-actually-need/</loc>
    <lastmod>2026-06-12T12:40:54.717Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/the-complete-guide-to-app-revenue-intelligence/</loc>
    <lastmod>2026-06-12T12:40:54.723Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/what-apple-p8-keys-are-and-why-subscription-platforms-need-them/</loc>
    <lastmod>2026-06-12T12:40:54.716Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/what-are-breadcrumbs-in-error-monitoring/</loc>
    <lastmod>2026-06-12T12:40:54.724Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/what-is-a-payment-rail-in-app-monetization/</loc>
    <lastmod>2026-06-12T12:40:54.719Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/what-is-an-app-revenue-source-of-truth/</loc>
    <lastmod>2026-06-12T12:40:54.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/what-is-an-entitlement-in-app-subscriptions/</loc>
    <lastmod>2026-06-12T12:40:54.714Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/what-plain-english-error-summaries-are-and-why-founders-need-them/</loc>
    <lastmod>2026-06-12T12:40:54.725Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/what-to-track-before-launching-a-paid-ios-app/</loc>
    <lastmod>2026-06-12T12:40:54.717Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/why-app-store-revenue-reports-are-not-enough-for-product-decisions/</loc>
    <lastmod>2026-06-12T12:40:54.718Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/why-did-apple-reject-my-app/</loc>
    <lastmod>2026-06-12T12:40:54.726Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/blog/why-your-app-analytics-should-connect-to-revenue-events/</loc>
    <lastmod>2026-06-12T12:40:54.716Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/compare/</loc>
    <lastmod>2026-06-12T12:00:49.399Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/contact/</loc>
    <lastmod>2026-06-12T12:00:49.399Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/</loc>
    <lastmod>2026-06-12T12:00:49.433Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/alerts-and-triage/</loc>
    <lastmod>2026-06-12T12:00:49.409Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/api-keys/</loc>
    <lastmod>2026-06-12T12:00:49.409Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/api-reference/</loc>
    <lastmod>2026-06-12T12:00:49.410Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/apple-one-off-purchases/</loc>
    <lastmod>2026-06-12T12:00:49.412Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/billing/</loc>
    <lastmod>2026-06-12T12:00:49.412Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/capture-an-error/</loc>
    <lastmod>2026-06-12T12:00:49.412Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/changelog/</loc>
    <lastmod>2026-06-12T12:00:49.416Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/cli/</loc>
    <lastmod>2026-06-12T12:00:49.417Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/connect-apple/</loc>
    <lastmod>2026-06-12T12:00:49.418Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/connect-google/</loc>
    <lastmod>2026-06-12T12:00:49.419Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/connect-stripe/</loc>
    <lastmod>2026-06-12T12:00:49.421Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/contracts/</loc>
    <lastmod>2026-06-12T12:00:49.422Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/cookie-policy-template/</loc>
    <lastmod>2026-06-12T12:00:49.423Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/create-a-project/</loc>
    <lastmod>2026-06-12T12:00:49.423Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/delete-a-users-data/</loc>
    <lastmod>2026-06-12T12:00:49.423Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/entitlements/</loc>
    <lastmod>2026-06-12T12:00:49.430Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/guides/app-review-sessions/</loc>
    <lastmod>2026-06-12T12:00:49.430Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/identify-users/</loc>
    <lastmod>2026-06-12T12:00:49.431Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/identity-verification/</loc>
    <lastmod>2026-06-12T12:00:49.432Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/install-prompts/</loc>
    <lastmod>2026-06-12T12:00:49.433Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/internal-traffic/</loc>
    <lastmod>2026-06-12T12:00:49.434Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/limits-and-quotas/</loc>
    <lastmod>2026-06-12T12:00:49.434Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/migration/</loc>
    <lastmod>2026-06-12T12:00:49.437Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/node-sdk/</loc>
    <lastmod>2026-06-12T12:00:49.438Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/products/</loc>
    <lastmod>2026-06-12T12:00:49.438Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/prove-it/</loc>
    <lastmod>2026-06-12T12:00:49.439Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/quickstart-ios/</loc>
    <lastmod>2026-06-12T12:00:49.440Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/quickstart-web/</loc>
    <lastmod>2026-06-12T12:00:49.441Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/rail-webhooks/</loc>
    <lastmod>2026-06-12T12:00:49.443Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/react-native-sdk/</loc>
    <lastmod>2026-06-12T12:00:49.444Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/revenue-intelligence/</loc>
    <lastmod>2026-06-12T12:00:49.444Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/sandbox-vs-production/</loc>
    <lastmod>2026-06-12T12:00:49.453Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/sdk-event-durability/</loc>
    <lastmod>2026-06-12T12:00:49.454Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/server-events/</loc>
    <lastmod>2026-06-12T12:00:49.457Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/source-maps/</loc>
    <lastmod>2026-06-12T12:00:49.459Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/source-maps/ai-setup/</loc>
    <lastmod>2026-06-12T12:00:49.458Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/swift-sdk/</loc>
    <lastmod>2026-06-12T12:00:49.460Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/track-events/</loc>
    <lastmod>2026-06-12T12:00:49.460Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/troubleshooting/</loc>
    <lastmod>2026-06-12T12:00:49.461Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/web-sdk/</loc>
    <lastmod>2026-06-12T12:00:49.463Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/web-sdk/error-codes/</loc>
    <lastmod>2026-06-12T12:00:49.461Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/webhooks-receive/</loc>
    <lastmod>2026-06-12T12:00:49.464Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/what-no-sdk-can-capture/</loc>
    <lastmod>2026-06-12T12:00:49.465Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/docs/workspace-operations/</loc>
    <lastmod>2026-06-12T12:00:49.465Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/</loc>
    <lastmod>2026-06-12T12:00:49.470Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/aup/</loc>
    <lastmod>2026-06-12T12:00:49.468Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/cookie-policy/</loc>
    <lastmod>2026-06-12T12:00:49.468Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/customer-disclosure/</loc>
    <lastmod>2026-06-12T12:00:49.469Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/dpa/</loc>
    <lastmod>2026-06-12T12:00:49.470Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/privacy/</loc>
    <lastmod>2026-06-12T12:00:49.471Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/sdk-data/</loc>
    <lastmod>2026-06-12T12:00:49.474Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/security/</loc>
    <lastmod>2026-06-12T12:00:49.475Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/sub-processors/</loc>
    <lastmod>2026-06-12T12:00:49.476Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/legal/terms/</loc>
    <lastmod>2026-06-12T12:00:49.477Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/pricing/</loc>
    <lastmod>2026-06-12T12:00:49.482Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/</loc>
    <lastmod>2026-05-15T10:49:33.691Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/</loc>
    <lastmod>2026-05-15T10:49:33.723Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/app-monetization-metrics-every-indie-developer-should-watch/</loc>
    <lastmod>2026-05-15T10:49:33.721Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/app-store-server-notifications-v2-explained-for-founders/</loc>
    <lastmod>2026-05-15T10:49:33.745Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/billing-retry-and-grace-period-explained-for-ios-subscriptions/</loc>
    <lastmod>2026-05-15T10:49:33.743Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/crossdeck-vs-revenuecat-which-is-better-for-app-subscriptions-and-analytics/</loc>
    <lastmod>2026-05-15T10:49:33.747Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/crossdeck-vs-telemetrydeck-when-analytics-alone-is-not-enough/</loc>
    <lastmod>2026-05-15T10:49:33.749Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/editorial/</loc>
    <lastmod>2026-05-15T10:49:33.723Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/google-play-subscription-events-explained-for-app-founders/</loc>
    <lastmod>2026-05-15T10:49:33.731Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-ai-coding-tools-should-install-subscription-analytics-safely/</loc>
    <lastmod>2026-05-15T10:49:33.732Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-build-a-privacy-first-analytics-strategy-for-paid-apps/</loc>
    <lastmod>2026-05-15T10:49:33.744Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-build-a-subscription-analytics-dashboard-from-scratch-and-why-not-to/</loc>
    <lastmod>2026-05-15T10:49:33.725Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-calculate-and-improve-net-revenue-retention-for-app-subscriptions/</loc>
    <lastmod>2026-05-15T10:49:33.724Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-capture-ios-app-errors-and-connect-them-to-subscription-state/</loc>
    <lastmod>2026-05-15T10:49:33.738Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-capture-javascript-errors-without-installing-a-second-sdk/</loc>
    <lastmod>2026-05-15T10:49:33.738Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-capture-network-failures-and-failed-api-calls-in-your-app/</loc>
    <lastmod>2026-05-15T10:49:33.750Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-compare-ios-android-and-web-revenue-in-one-place/</loc>
    <lastmod>2026-05-15T10:49:33.742Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-connect-stripe-web-subscriptions-to-ios-app-access/</loc>
    <lastmod>2026-05-15T10:49:33.727Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-create-a-paid-app-launch-checklist-for-developers/</loc>
    <lastmod>2026-05-15T10:49:33.727Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-create-a-subscription-app-stack-stripe-app-store-analytics-entitlements/</loc>
    <lastmod>2026-05-15T10:49:33.739Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-debug-a-subscription-user-who-should-have-pro-access/</loc>
    <lastmod>2026-05-15T10:49:33.731Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-design-paid-features-that-map-cleanly-to-entitlements/</loc>
    <lastmod>2026-05-15T10:49:33.734Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-identify-which-app-features-drive-paid-conversion/</loc>
    <lastmod>2026-05-15T10:49:33.733Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-instrument-a-next-js-app-for-subscriptions-and-entitlement-checks/</loc>
    <lastmod>2026-05-15T10:49:33.735Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-instrument-a-swiftui-app-for-telemetry-and-paid-access/</loc>
    <lastmod>2026-05-15T10:49:33.742Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-know-when-a-paying-customer-hit-a-checkout-error/</loc>
    <lastmod>2026-05-15T10:49:33.729Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-map-stripe-products-to-mobile-app-entitlements/</loc>
    <lastmod>2026-05-15T10:49:33.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-measure-onboarding-impact-on-subscription-revenue/</loc>
    <lastmod>2026-05-15T10:49:33.733Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-monetize-an-ios-app-without-stitching-tools-together/</loc>
    <lastmod>2026-05-15T10:49:33.741Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-monitor-failed-payments-and-billing-retry-in-your-app/</loc>
    <lastmod>2026-05-15T10:49:33.736Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-prepare-your-app-for-subscription-pricing-experiments/</loc>
    <lastmod>2026-05-15T10:49:33.747Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-prevent-sandbox-purchases-from-polluting-production-revenue/</loc>
    <lastmod>2026-05-15T10:49:33.743Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-reduce-subscription-churn-by-understanding-product-behavior/</loc>
    <lastmod>2026-05-15T10:49:33.741Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-see-app-revenue-in-real-time-before-app-store-connect-catches-up/</loc>
    <lastmod>2026-05-15T10:49:33.749Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-set-up-global-error-handlers-in-a-web-app-without-double-reporting/</loc>
    <lastmod>2026-05-15T10:49:33.750Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-set-up-slack-and-email-alerts-for-production-errors-without-drowning-your-team/</loc>
    <lastmod>2026-05-15T10:49:33.736Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-track-feature-adoption-and-revenue-in-the-same-dashboard/</loc>
    <lastmod>2026-05-15T10:49:33.734Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-track-refunds-and-understand-why-users-ask-for-them/</loc>
    <lastmod>2026-05-15T10:49:33.740Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-track-trial-to-paid-conversion-in-a-mobile-app/</loc>
    <lastmod>2026-05-15T10:49:33.746Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-use-ai-prompts-to-install-an-app-analytics-sdk/</loc>
    <lastmod>2026-05-15T10:49:33.728Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-use-one-payment-relationship-across-ios-android-and-web/</loc>
    <lastmod>2026-05-15T10:49:33.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/how-to-validate-app-store-purchases-without-building-subscription-infrastructure/</loc>
    <lastmod>2026-05-15T10:49:33.739Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/products-vs-entitlements-the-simplest-way-to-manage-paid-app-access/</loc>
    <lastmod>2026-05-15T10:49:33.720Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/revenuecat-alternative-subscription-infrastructure-with-product-analytics-built-in/</loc>
    <lastmod>2026-05-15T10:49:33.725Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/revenuecat-products-entitlements-and-offerings-a-plain-english-guide/</loc>
    <lastmod>2026-05-15T10:49:33.739Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/sandbox-vs-production-for-app-subscriptions-how-to-test-safely/</loc>
    <lastmod>2026-05-15T10:49:33.748Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/sentry-alternative-for-saas-founders-who-need-customer-context/</loc>
    <lastmod>2026-05-15T10:49:33.735Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/source-maps-for-production-javascript-errors-how-to-use-them-safely/</loc>
    <lastmod>2026-05-15T10:49:33.737Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/storekit-2-subscription-analytics-what-developers-should-track/</loc>
    <lastmod>2026-05-15T10:49:33.731Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/stripe-webhooks-for-app-subscriptions-what-founders-need-to-know/</loc>
    <lastmod>2026-05-15T10:49:33.748Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/telemetrydeck-alternative-privacy-friendly-analytics-connected-to-revenue/</loc>
    <lastmod>2026-05-15T10:49:33.737Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/telemetrydeck-signals-explained-how-product-events-become-growth-insights/</loc>
    <lastmod>2026-05-15T10:49:33.735Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/the-app-subscription-dashboard-indie-developers-actually-need/</loc>
    <lastmod>2026-05-15T10:49:33.728Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/the-complete-guide-to-app-revenue-intelligence/</loc>
    <lastmod>2026-05-15T10:49:33.726Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/what-apple-p8-keys-are-and-why-subscription-platforms-need-them/</loc>
    <lastmod>2026-05-15T10:49:33.740Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/what-are-breadcrumbs-in-error-monitoring/</loc>
    <lastmod>2026-05-15T10:49:33.745Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/what-is-a-payment-rail-in-app-monetization/</loc>
    <lastmod>2026-05-15T10:49:33.742Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/what-is-an-app-revenue-source-of-truth/</loc>
    <lastmod>2026-05-15T10:49:33.722Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/what-is-an-entitlement-in-app-subscriptions/</loc>
    <lastmod>2026-05-15T10:49:33.726Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/what-plain-english-error-summaries-are-and-why-founders-need-them/</loc>
    <lastmod>2026-05-15T10:49:33.730Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/what-to-track-before-launching-a-paid-ios-app/</loc>
    <lastmod>2026-05-15T10:49:33.720Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/why-app-store-revenue-reports-are-not-enough-for-product-decisions/</loc>
    <lastmod>2026-05-15T10:49:33.726Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/blog/why-your-app-analytics-should-connect-to-revenue-events/</loc>
    <lastmod>2026-05-15T10:49:33.729Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/</loc>
    <lastmod>2026-05-15T10:49:33.758Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/activity/</loc>
    <lastmod>2026-05-15T10:49:33.761Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/apps/</loc>
    <lastmod>2026-05-15T10:49:33.780Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/audit-log/</loc>
    <lastmod>2026-05-15T10:49:33.765Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/billing/</loc>
    <lastmod>2026-05-15T10:49:33.782Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/cohorts/</loc>
    <lastmod>2026-05-15T10:49:33.766Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/customers/</loc>
    <lastmod>2026-05-15T10:49:33.755Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/developers/api-keys/</loc>
    <lastmod>2026-05-15T10:49:33.785Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/developers/integrations/</loc>
    <lastmod>2026-05-15T10:49:33.785Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/developers/webhooks/</loc>
    <lastmod>2026-05-15T10:49:33.786Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/entitlements/</loc>
    <lastmod>2026-05-15T10:49:33.767Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/errors/</loc>
    <lastmod>2026-05-15T10:49:33.773Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/errors/settings/</loc>
    <lastmod>2026-05-15T10:49:33.772Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/events/</loc>
    <lastmod>2026-05-15T10:49:33.778Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/funnels/</loc>
    <lastmod>2026-05-15T10:49:33.776Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/people/</loc>
    <lastmod>2026-05-15T10:49:33.768Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/products/</loc>
    <lastmod>2026-05-15T10:49:33.759Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/rails/</loc>
    <lastmod>2026-05-15T10:49:33.783Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/revenue/</loc>
    <lastmod>2026-05-15T10:49:33.778Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/dashboard/settings/</loc>
    <lastmod>2026-05-15T10:49:33.757Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/</loc>
    <lastmod>2026-05-15T10:49:33.790Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/api-keys/</loc>
    <lastmod>2026-05-15T10:49:33.791Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/connect-stripe/</loc>
    <lastmod>2026-05-15T10:49:33.793Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/cookie-policy-template/</loc>
    <lastmod>2026-05-15T10:49:33.791Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/create-a-project/</loc>
    <lastmod>2026-05-15T10:49:33.789Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/source-maps/</loc>
    <lastmod>2026-05-15T10:49:33.793Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/source-maps/ai-setup/</loc>
    <lastmod>2026-05-15T10:49:33.793Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/web-sdk/</loc>
    <lastmod>2026-05-15T10:49:33.792Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/docs/web-sdk/error-codes/</loc>
    <lastmod>2026-05-15T10:49:33.792Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/legal/cookie-policy/</loc>
    <lastmod>2026-05-15T10:49:33.796Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/onboarding/</loc>
    <lastmod>2026-05-15T10:49:33.801Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/pricing/</loc>
    <lastmod>2026-05-15T10:49:33.803Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/sign-in/</loc>
    <lastmod>2026-05-15T10:49:33.805Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/public/start-free/</loc>
    <lastmod>2026-05-15T10:49:33.807Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/start-free/</loc>
    <lastmod>2026-06-12T12:00:49.614Z</lastmod>
  </url>
  <url>
    <loc>https://cross-deck.com/status/page/</loc>
    <lastmod>2026-06-12T12:00:49.616Z</lastmod>
  </url>
</urlset>