Skip to main content
Before trusting FloKit’s payback reports or acting on recommendations, verify that your data pipeline is complete and consistent. Use this checklist after initial setup and again whenever you add a new data source or make changes to your attribution or subscription stack.

Subscription source

  • Subscription platform connected (RevenueCat, Adapty, or Stripe)
  • trial_started, subscription_started, renewal_completed, subscription_cancelled, and refund_issued events visible in FloKit → Data → Events
  • No duplicate events — verify by checking for repeated transaction_id values
  • Revenue amounts match your source-of-truth within a 2% tolerance (platform fees may cause minor differences)
  • Sandbox and test events excluded or flagged — confirm test environment events are not inflating production metrics

Attribution source

  • MMP connected (AppsFlyer or Adjust)
  • install_attributed events visible in FloKit → Data → Events
  • campaign_id and ad_set_id populated on attributed installs
  • Organic installs showing channel = organic and not being misattributed to paid campaigns
  • Attribution lookback windows match your MMP configuration (typically 7 days for click, 1 day for view-through)

Identity mapping

  • user_id is consistent across your subscription platform and MMP — both use the same backend identifier
  • anonymous_iduser_id linking is working — verify in FloKit → Data → Identity
  • Identity join rate is >90% for subscription events
  • No large volume of unknown user_id values on subscription or revenue events
  • RevenueCat app_user_id set to your backend user_id during authentication
  • MMP customer_user_id set to your backend user_id in the SDK configuration

Revenue reconciliation

  • FloKit reported revenue is within 5% of your subscription platform’s dashboard for the past 30 days
  • Refunds are correctly reducing revenue and not being double-counted
  • Currency conversion is correct for multi-currency apps — verify that currency field is populated on all revenue events
  • Plan prices in revenue events match actual charge amounts (not list prices when discounts apply)

Payback reports

  • First payback report shows the campaigns and channels you expect
  • CAC values are within the expected range — cross-check against your existing campaign analytics
  • Cohorts cover at least 14 days of subscription history before drawing conclusions from LTV curves
  • No campaigns showing $0 spend — verify that your ad platform connection is pulling cost data
  • Payback window in the report settings matches your target payback period (e.g. 12 months)