I’ve updated my subscriptions/products in Google Play and restarted my app, but RevenueCat Purchases.getOfferings() never updates with updated titles, descriptions, or pricing. How do I bust the cache to get subscription/product updates?
I have a Flutter app and am running the purchases_flutter: ^3.6.0 package.
The on-device cache of offerings, as well as PurchaserInfo, lasts for approximately 5 minutes. An app restart will re-fetch the latest offerings from the dashboard, or if you are calling getOfferings often, it will be refresh after that expiration. You can read more about fetching and displaying offerings here: https://docs.revenuecat.com/docs/displaying-products
The on-device cache of offerings, as well as PurchaserInfo, lasts for approximately 5 minutes. An app restart will re-fetch the latest offerings from the dashboard, or if you are calling getOfferings often, it will be refresh after that expiration. You can read more about fetching and displaying offerings here: https://docs.revenuecat.com/docs/displaying-products
I am seeing this too. I did add a test intro offer, which appeared, but then I have changed it, and I cannot seem to get the new intro offer to appear. It takes a solid 5 mins
I think this is a pretty major issue. You should be able to pass a “skipCache” boolean or something like that when getting offerings. We are programatically updating users offering when they enter a promo code but I have to get the user to restart the app. Its certainly costing me a couple of percent in doing that!
This is clearly a cost-saving measure on revenuecat's end.
I really need to get the most up to date offerings when i run the getOfferings function, we have some important logic attached to our offerings metadata.
Any solutions? Its 2025 and this is still causing issues
Hi all, we do have a method that invalidates the cache and forces a refresh. You can learn more about the invalidateCustomerInfoCache method here.
Also, please ensure you’ve enabled server notifications for both stores (Apple, Google), as this will speed up webhook and integration delivery times, reduce lag time for Charts, and, in the case of iOS, allow using our Handling Refund Requests feature.
We use 3 different kinds of cookies. You can choose which cookies you want to accept. We need basic cookies to make this site work, therefore these are the minimum you can select. Learn more about our cookies.