Stay up to date with the latest & greatest from the RevenueCat team.
As of today, RevenueCat is supporting a new event type that is surfaced via the customer view on the RevenueCat dashboard, webhooks, and integrations: The EXPIRATION event. This event is fired after the subscription of a customer expires (not necessarily at the exact second the subscription expires, but shortly thereafter). This should make it even easier for you to understand the subscription status of your customers, both by looking at the dashboard or in your own backend systems. The webhook documentation has more details about the event and its fields. A few points to note:For subscriptions that expired before we shipped this new event, we will backfill and show these events on the customer page in the dashboard as you visit the page for a given customer for the first time; however, we will not send these backfilled events to webhooks and integrations (so you don’t have to handle the case where you suddenly get expiration events from long churned customers). In order to send this n
Today, we are launching two big improvements. Continue reading for all the nitty gritty details, but let’s start with the big advantages you have with the new features: You can now share subscriptions not only between versions of the same app on different platforms (e.g., between iOS and Google Play Store), but also between different apps on the same platform. We now support the Amazon Appstore for your Android apps. For more information, see our documentation on installing the SDK and configuring Amazon Appstore products. To enable these changes, we’ve completely overhauled our model for how apps are created and set up. Logging into your RevenueCat dashboard, you will notice that the “Apps” dropdown menu has been replaced with “Projects”:A Project is a set of Apps. Each App is specific to one platform. For example, a typical Project might contain one iOS App and one Google Play Store App. All Apps within one project share the same basic setup, including entitlements, offerings, inte
New SDK ReleasesIn the new SDK version, we’ve redesigned the way that user identification works. We introduced two new methods, logIn and logOut, for handling user identification. These replace createAlias, identify and reset.To take advantage of the new Identity features, you just need to replace identify and createAlias with logIn, and reset with logOut. These new methods hopefully make usage more clear, and there’s some under-the-hood performance improvements you’ll get for free. New Dashboard OptionsRegardless of whether you have started using the new SDK, we’re also introducing a new option in the dashboard so you can configure the desired behavior when two different App User IDs restore the same Apple or Google receipt. Available options are: Transfer to the new user (default) Block the transferThis behavior can be changed at any time through the RevenueCat dashboard, and it replaces the deprecated SDK property allowAppStoreAccountSharing.(Note: Some developers may see the legacy
Today, we are launching two new charts showing realized (historic) Lifetime Value (LTV): one for LTV per Customer and another for LTV per Paying Customer. These two realized LTV metrics are also sometimes called ARPU (Average Revenue Per User) / ARPPU (Average Revenue Per Paying User). They shows the actual (gross) revenue that was generated by a (paying) customer cohort, divided by the number of customers in that cohort. Customers are cohorted by the date they were first seen, i.e. the date they first opened your app.Using the “Customer Lifetime” selector, you can define the time period after the customer was first seen that should be considered in terms of revenue. For example, by setting the “Customer Lifetime” selector to 30 days, all revenue generated by customers in their first 30 days will be added up, and any revenue generated after that will be discarded for the purpose of this chart.These charts give you an overall view how the monetization of customer cohorts has developed o
Over the past few months, we’ve been busy at work improving our new charts. Starting today, we have migrated everyone to the new charts experience. The new charts do not just have a refreshed look & feel, they also provide improved functionality over the old charts: We have launched a number of new charts: Annual Recurring Revenue (ARR) provides an industry-standard way of looking at your recurring revenue, normalized by subscription duration. Movement charts (Active Subscriptions Movement, MRR Movement, Active Trials Movement) provide full transparency on what causes important indicators of your business to increase or decrease. Refund Rate offers a view of what proportion of your transactions end up getting refunded. Initial Conversion allows analyzing what proportion of newly acquired customers take an action on your paywall (starting a free trial, starting a paid subscription, or making a one-time purchase). Conversion to Paid allows analyzing what proport
SummaryWe’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. Store(s) 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
We’re happy to announce that RevenueCat now supports Apple’s AdServices attribution framework for Apple Search Ads (ASA).You can now view AdServices ASA attribution data within RevenueCat Charts. You can unlock insights to drive more profitable growth for your app by: Filtering and segmenting RevenueCat charts by Apple Search Ads campaigns or ad groups Following your campaign's install base over time to understand the long-tail revenue generated from subscriptions We previously only supported Apple’s deprecated iAd attribution framework. While iAd gave in-depth attribution information you can only receive this data if users opted in through Ad-Tracking Transparency (ATT). The current AdServices framework is more focused on privacy and while it gives less individual depth on attribution data, you no longer require an ATT opt-in from the user, increasing the breadth of data you’ll collect.This integration is available starting in these SDK versions: iOS: purchases-ios 4.10.0 React Na
RevenueCat SDK 4.0.0-beta.1 is out Hey all, some of you might know we’ve been hard at work migrating our mixed-language Purchases.framework to Swift. Well, we did it, and we’re excited to share it with you!For context, here were our goals of the migration: 🦶 Lowers our overall footprint for modules. 🗣️ Unifies the language used for the entire SDK. 🚤 Faster feature development, bug fixes on old logic, and integration through simplified SDK, CI, and testing infrastructure. 🐐 Improve consistency among our API calls, classes, properties, etc. Enable us to implement StoreKit2 changes easier. 🧑🏫 Easier onboarding for new members (internal and external). You can find a more detailed breakdown of the motivations and our actual migration plan in our SwiftMigration.md.We haven’t added any new features (yet), but we did update our API to be more idiomatic to Swift, fixed a few tiny bugs, and improved the safety of our API through fixing various nullability mismatches.We’re plann
Our webhooks have for a while supported events for billing issues, now these are also being sent to analytics and CRM integrations. These events will be sent to integrations whenever a subscriber was charged unsuccessfully (e.g., expired credit card or lack of funds). In order to properly receive these events, you will need to set the event name in your configured integrations:There are several use cases for these events: in analytics tools, you may want to analyze how often billing issues occur for which cohorts or segments of users. In CRM tools, you may want to set up push notification or email campaigns to prompt subscribers with billing issues to update their means of payment.We hope this new event type is useful. Let us know about any concerns or issues with the new events!JensHead of Product @ RevenueCat
Today, we are launching two new charts to better understand your funnel from newly acquired customer to paying subscriber.The Initial Conversion Rate chart shows what proportion of each cohort of new subscribers either started a trial or made a purchase without a trial. You can think of it as the proportion of subscribers who took an action on your paywall, or paywall conversion.The Conversion to Paying chart shows what proportion of each cohort of new subscribers ends up paying (either because they converted from a free trial to paying subscriber, or because they made a purchase without a trial). This can be thought of as the end-to-end view of the conversion funnel within your app.With these new charts, we now offer three views of conversion rates (the Trial Conversion chart remains, of course). Which of these are most useful and valuable to you will depend on your product setup—whether you offer subscriptions with trials, without trials, or a mix of both.Let us know if you have any
Over the past few months, we have been working on a new solution for mobile app developers to offer subscriptions on the web. With this new solution, we will provide a hosted paywall backed by Stripe that developers can use to offer subscriptions to their customers – for example, to send discount offers to customers via email, or to offer the ability to sign up and subscribe on the app's website. This solution will be available to developers on the Starter, Pro, and Enterprise plans.We are looking for developers interested in offering subscriptions on the web who would be willing to participate in a beta program for this feature. The program would entail: Being able to give feedback on the solution before launch Being the first to get access to the solution If you're interested, respond to the thread or drop me an email at email@example.com.
Many of our charts can be segmented by a variety of dimensions to make it easy to compare performance between different criteria, and unlock critical insights about where the greatest strengths and opportunities in your business lie. Today we’re excited to release support for segmentation for Subscriber Retention so you can quickly understand how key dimensions of your business affect your customer retention. Here’s how it works:By default, Subscriber Retention will continue to be cohorted by subscription start month. This chart is currently cohorted by subscription start month to make it easy to see how your retention is trending for recent subscriber cohorts. Think of this cohorting as its own kind of segmentation: we’re taking one larger cohort of users (defined by the Date Range being viewed), and segmenting them by their subscription start month to compare retention rates.Now, with the option to change the chart’s segmentation, when you choose a different dimension to segment by (
Today, we are shipping changes to our new charts that provide improved transparency about refunded transactions. Especially given that on iOS, developers have no control and little transparency on refund decisions, it is important to keep an eye on refunds because they are an indicator of whether your customers are getting the value they expected when they started their subscription.The biggest improvement is our new refund rate chart. It shows you how many transactions happened in a given time period, and how many of them were refunded. Of course you can see how your refund rate develops over time, as well as filter or segment by various different dimensions, for example to understand refund rates of different products or between iOS App Store and Google Play Store.In addition to the new chart, we are also changing how refunds are handled in the remaining charts. Previously, when a refund occurred, we retroactively removed the affected subscription from all charts in which it was sho
Today, we have launched a Superwall integration (available on the Pro plan), which automatically sends billing, subscription, and revenue metrics to your Superwall project. This integration will allow you to create paywalls on-the-fly without shipping app updates, determine which paywalls have high trial conversion rates, find which product and paywall combinations have the highest LTVs, and offer discounts to churn users. To set this up, follow our RevenueCat documentation here: https://docs.revenuecat.com/docs/superwall
Your business is unique, and has unique needs for understanding performance and determining how to grow. Today, we’re making it easier to quickly access those unique insights with the ability to save custom charts in RevenueCat.Now when you create a customized chart in RevenueCat – like segmenting MRR by your top 5 countries, filtering Initial Conversion down to your fastest growing Project, or your own all-time cohort retention chart – you can save it to your Saved Charts to have quick access to that exact configuration every time you log in.Just click “Save” in the top right corner of your chart once it's configured to your liking to have that configuration saved in the left-side panel for easy access anytime you use Charts.Let us know which custom charts you plan to save. And of course, chime in here if you have any questions or feedback.Thanks,Dan
As of today, RevenueCat is supporting Apple order ID lookup. Customers can retrieve this order ID from their purchase history on the App Store and it is also sent in the email receipt each time they make in-app purchases. This will aid your support cases when your customers claim they purchased a product and never had their features unlocked. To enable lookup via Order ID for iOS apps, follow our guide on setting up In-App Purchase Keys.
Our webhooks have supported product change events for a while, and now product change events are being sent to analytics and CRM integrations. This event will be sent to integrations whenever a subscriber changes the product of their subscription. This does not necessarily mean the new product is in effect immediately. See our docs on Managing Subscriptions for more information about upgrades, downgrades, and crossgrades.In order to receive these events, you will need to set the event name in your configured integrations:(remember to hit the ‘Save’ button in the upper right corner)We hope this new event type is useful! Let us know about any questions, comments, or concerns with the new event.
We are making some small improvements to how we show non-subscription purchases in our charts. Starting today, under the “product duration” filter or segment you will find the entry “Non-subscription purchase” which contains all of these purchases. This allows you to look at revenue coming from or conversion to these non-subscription purchases in all of our charts that allow filtering and segmentation.We hope this makes things easier for those of our customers who rely on non-subscription purchases!
Today, we are rolling out some additional segmentation options in the new RevenueCat charts (that were still missing in contrast to the old charts): Country, First purchase month, and Install month. If you haven’t checked out the new charts yet, give them a try – just head to the RevenueCat dashboard, click on “Charts” and then on “Try new charts”!
Identity v3In the new SDK version, we’ve redesigned how user identification works.These new APIs and configurations should make it significantly easier to integrate your accounts system with RevenueCat, as well as reduce the number of edge cases you need to consider.Learn about the new features New Developer CommunityBuilding apps can be tough, but we're here to help! We just launched this new RevenueCat community—a place to connect with other developers, get ideas about how to grow your app business, and ask questions about best practices for using RevenueCat. We’re really excited about the new community, and we hope you find it helpful!. Have an idea for how we can make RevenueCat even better? Let us know in this thread. New on the blogThe Case for Location-Independent Salaries Replicating a PostgreSQL Cluster to Redshift with AWS DMS Pain Points of Managing Cross-Platform Subscriptions What App Developers Need to Know About India’s New Subscription Rules New podcast episodesAlex Ros
As part of our launch of RevenueCat Projects, we have taken our experiments (price testing) feature to private beta. The feature has been in public beta for a while, and we have learned a lot from the beta and are planning to dramatically improve the feature before opening it up to everyone. Anyone who’s run experiments in the past is automatically part of the private beta. For customers on the Pro or Enterprise plan who wish to join the beta and run experiments, simply contact our support team.
We are at an exciting moment with our platforms team: looking at our roadmap for future integrations. Many of you have asked us about Braintree before, so we are now identifying and evaluating some of our assumptions and looking at ways to integrate this. What would help us is to better understand how you are using Braintree and what are the most important features for you. In addition to that, if you can, it would be very helpful for us to better understand your current monthly tracked revenue (MTR) via Braintree. Of course we understand that this not something to share in a community post, feel free to send me an email to help our estimation for the demand of Braintree firstname.lastname@example.org
We are currently rolling out some improvements to our customer lists. In the next few days, you will find a new setting in the filter settings for your customer lists: the ability to define whether the filters should only be applied to those customers with purchases (e.g., started a trial, started a subscription, or made a non-subscription purchase) or not. By default, lists will only include customers with purchases. This means that lists will now load much more quickly in most cases, since apps typically have vastly more customers without purchases than those with customers. For those lists that should include customers without purchases, you can simply change the setting – this will mean the list loads and exports somewhat slower (but not slower than it did until today).For your existing customer lists, the setting has been automatically set to the "correct" setting as per the other filters – if a list currently contains customers without transactions, the setting will be "All custo
Hey all, as some of you might know we’ve been hard at work upgrading our platform to support all the of Google's new subscription model. As we are preparing for our new Android major release we would like to get your help as a beta tester with the new product setup and the basic purchase flow.Here is a new blog for you to refresh your memory / familiarize yourself on what are the main changes between Billing Client 4 to 5.Here are our requirements for you to become a beta tester: 📱 Have a native Android App (No Hybrids for now) 🔍 You are not using Observer Mode 🎞 For now we will not restore purchases that happened outside of RC 🔆 You have maximum of 20 products (soft requirement) 💚 You have active users in production ⚡ Only Subscription products for now, no one-time purchases 🌲 Availability and willingness to test with us from Mid-December 🕺🏾 Not using dev-determined offers (yet) How can you help?😻If you fit the above requirements and have capacity to beta
Log in to the Community
Authenticate with RevenueCat
Enter your username or e-mail address. We'll send you an e-mail with instructions to reset your password.