Improving our churn definition in data features

  • 28 July 2022
  • 0 replies

Userlevel 1
Badge +2


We’ve made an improvement to how we handle churn (subscription expirations) in data features to ensure the subscription metrics we offer in places like Charts are consistent with the subscription behavior in apps using RevenueCat.


Old Behavior

New Behavior

App Store

Churn date in some data features was reported as the original subscription expiration date, regardless of whether a grace period was offered

Churn date in these data features is now reported as the expiration of a subscription’s grace period if offered

Google Play Store, Stripe, and Amazon Appstore

Churn date in all data features was reported as the expiration of a subscription’s grace period (if offered)

No change


Subscription expirations in the SDK always take the grace period into account for reporting a subscriber’s status and revoking entitlements. Some data features like webhooks & integrations, already take the grace period into account as well.


If your app offers a grace period, any customer who has subscribed to that product and has not canceled their subscription may enter a grace period if their subscription is not renewed successfully at their next expiration date. The customer will retain access to their entitlements throughout the grace period while the store attempts to renew their subscription, but if it fails to do so, then at the end of the grace period the customer’s entitlements will be revoked.

Therefore, the customer’s access to the product has not truly “expired” until the end of their grace period. To reflect that fact and maintain consistency across the platform, we’ve updated Charts and Overview to ensure we’re always expressing a customer’s churn date (or their subscription expiration date) as the end of any grace period if one was offered. This will likely result in a slight increase in your reported active subscriptions and active trials if you use grace periods. If a grace period was not offered, the original subscription expiration date will continue to be their churn date.

For some stores this behavior has already been true, such as for the Play Store, but App Store subscriptions have previously used the original subscription expiration date to define churn in Charts and Overview. Some subscriptions that have previously expired but had a grace period offered will be updated to reflect this more consistent definition, and going forward you will see these data features reflect a subscriber’s churn date as the end of their grace period.

Other data sources, like our webhooks and other integrations, will not be impacted by this change; as they already use a subscriber’s grace period expiration date as their reported expiration date when a grace period is offered.

Our ETL exports will be updated to reflect this improved definition at a later time by providing the expiration date of a grace period as a separate field, and Customer Lists will be updated to reflect the improved definition as well.

If you have any questions or feedback, we’d love to hear from you. Thanks!


- Dan

PM @ RevenueCat

0 replies

Be the first to reply!