Growth

Analyze Subscription Lifecycle Data Across Every Platform

Building better cross-platform experiences

Analyze Subscription Lifecycle Data Across Every Platform
David Barnard
David BarnardJanuary 25, 2022

Talk to any mobile growth or product management team and they’ll tell you that subscription lifecycle data is gold. It lets you know how you’re acquiring customers, what your retention and churn economics look like, and how successful you are at upselling into new products and offerings. But raw subscription data isn’t valuable on its own — it only becomes valuable when you can analyze and act on it. 

For example, your product team might want to iterate using lifecycle data from an A/B test. You might want to give your business team a complete picture of how your customer data is trending so they can decide where to make their next investments. Or you might want to set up if-then actions based on your data (like running a win-back campaign for when customers cancel their subscriptions). 

Ideally, you want your subscription lifecycle data across Android, iOS, and the web to be unified and seamlessly flowing into all of your tools, letting your team gain insights and make decisions with confidence. However, managing subscription data can be a challenge, especially as your business grows. Plus, you need to be able to quickly adapt to changes in the market. In this article, we’ll explain the most common roadblocks and introduce you to the ways RevenueCat can serve as a central hub for your subscription data.

What makes it hard to analyze and act on lifecycle data today?

For a variety of reasons, managing subscription lifecycle data tends to create a lot of overhead. Teams spend valuable engineering cycles managing their tooling and don’t have the agility to test new ideas and add new tools. 

Here are the five most common challenges businesses face (often all at once): 

1. Normalizing the data across multiple platforms

When you have an app that works on Android, iOS, and the web, in order to understand customer lifecycle events, you’ll need to address the fact that subscription data looks very different across platforms

There are many bugs, edge cases, and failure scenarios that you’ll need to handle, and the amount of metadata that’s reported and how it’s formatted varies widely. To unify your data, you’ll need to address some tough discrepancies, like the fact that Apple doesn’t provide transaction prices and the Play Store APIs won’t let you retrieve subscription data older than 90 days. 

To make things even more complicated, each platform has different definitions for the standard parts of the subscription lifecycle. For example, if you want to figure out how many trial conversions you had last month across Play Store, Stripe, and Apple, you’ll find that each platform will give you different results. 

2. Writing data pipelines for each of your tools

Because analyzing and acting on your customer data is so valuable, there are many tools competing for your team’s investment. When you don’t find that perfect fit — say you’re working on retention marketing and not seeing success with a certain platform — you need to be able to change tools easily.

The challenge here is the setup time of getting your data streaming into each tool you use. The engineering costs can be significant. If you change tools, you don’t just have to install an SDK — you have to rewrite all of your API calls and JSON formatting to send data the way that the new tool expects. It can take months to set up a new analytics tool and get everything running properly. As a result, teams end up feeling stuck between making an expensive change for an unknown upside versus sticking with a tool that isn’t getting the job done. 

3. Data can look inconsistent across your tools

Even if you do manage to get your tools showing data from each platform, inconsistencies can crop up, making it hard for your team to trust your tools. The people working on demand generation might be seeing different numbers than your data team and your product team.

This is because different tools’ SDKs collect different data, collect it in different ways, and collect it client-side only, not server-side. As we’ll explain in a moment, many of your subscription lifecycle events can happen when the user is not in the app (like if they update their subscription via their browser or email). Missing these events will create discrepancies and lead to confusion across your business.  

4. It’s very hard to capture real-time events correctly (but they’re extremely important)

If you want to get the full picture of what’s happening in your app and be able to send push notifications for win-back campaigns when someone cancels, you can’t just do client-side data reporting. 

Why? A cancellation won’t necessarily happen when someone is in the app. In fact, they might never come back to the app itself. So how do you know that they canceled if the tool you’re using only reports on client-side events?

You’ll only really know what’s going on with your data if you also capture server-side events. But one of the biggest roadblocks to doing this is that it adds another level of complexity to your multi-platform support. If you support both iOS and Android, now you must collect and reconcile information both from the apps and from Google and Apple’s server-based webhooks. This doubles the number of data sources, making it difficult for developers to normalize the data and test that everything is working properly. 

Usually, even if teams have the resources to invest in capturing real-time server-side events (most don’t), they end up missing some of the data because it’s just too challenging to reconcile everything. They often resort to some form of batch processing rather than truly streaming the events.

5. Changes to the platforms can break your integrations

When you’re managing your subscription lifecycle data, you’ll need to stay on top of the constant evolutions in the data/tooling ecosystem. For instance, there have been recent changes in the iOS ecosystem with App Tracking Transparency and StoreKit 2. As a result, best practices are evolving, and the iOS tool stack is going to change rapidly based on what data can and can’t be sent. 

What is app tracking transparency on iPhone? iOS 14.5's privacy update  explained | TechRadar

Internally, that might mean one of your integrations breaks seemingly out of nowhere — and you end up spending dev cycles on an overhaul of your data pipelines and the way you normalize data and ensure consistency across your tools. 

How RevenueCat works as a central hub for subscription lifecycle data

With these challenges in mind, teams may be looking for a solution similar to Segment for their subscription data. That’s where RevenueCat comes in: our platform collects and standardizes subscription lifecycle events from every platform and provides a simple integration across a vast ecosystem of marketing, analytics, and other tools. 

Normalized, consistent data everywhere

We clean and normalize your data across multiple platforms so that you have a clear, consistent picture of your users and their subscription lifecycle events. This means solving data at multiple layers: everything from how data is structured across platforms to how identity is represented. (Read more about how we solve for identity in our article Managing Cross-Platform Subscription

We create a single source of truth for your subscription lifecycle events and push standardized data to your backend and third-party integrations, removing the burden for your team to cross-check and reconcile data across your tools. As new tools and best practices emerge (like ATT for iOS), we’re set up to quickly add new integrations and ensure that changes don’t break your data. 

Events are handled server-side and streamed in near real time

When you’re only looking at client-side events (which is the case with most teams, as discussed above) you’ll miss out on critical business transactions like user cancellations and refunds. We handle events server-side and stream them in near real time, which has many benefits:

  • You can run effective win-back and customer engagement campaigns that are immediately triggered off of events.
  • Your attribution partner (MMP) will have the most complete picture of what’s happening in your subscription lifecycles so they can optimize your ad campaigns. 
  • You can take full advantage of the retention metrics and user lifecycle analysis that a provider like Amplitude or Mixpanel is designed to show. Here’s an example of the data RevenueCat sends to Mixpanel.
  • You can build useful integrations like running your customer support through Intercom or getting updates via Slack, which is only possible with real-time event streaming.

One-click integrations with all your tools

With RevenueCat managing the complexities of subscription data normalization and integration, you can turn integrations on and off with the flip of a switch. You don’t have to put a whole development sprint into adding a new tool, and you can easily test out new providers. We have built-in support for a wide range of third-party tools and add new ones regularly. With webhooks, you also can build your own custom integrations.

Furthermore, we offer ETL exports to automatically deliver all of your apps’ transaction data to your cloud storage provider, giving you reliable data that you can use however you want. With ETLs, we can deliver 24 hours of data at a time, and our customers use that to feed their own data warehouses, where they can do more sophisticated analysis and pool data from other platforms. 

Summary

While being able to analyze and act on your subscription lifecycle data is key to your growth and monetization success, it can be a major hurdle as your team gets bigger and wants to add new tools. You have to write a data pipeline for each tool you use, clean and unify your data across platforms, and figure out how to track real-time server-side events. 

RevenueCat’s SDK makes supporting subscriptions and in-app purchases simple, so your engineering team can focus on building a great app instead of worrying about the ins and outs of subscription infrastructure. However, especially for large or growing teams with a lot of data, RevenueCat can be even more powerful by providing a unified, real-time view of your customers and their subscription status. 

With these capabilities, you can easily extend your existing tools and adjust your stack with minimal effort. You don’t have to think about implementation, execution, and engineering time. Your data is ready to use however you want, to drive insights and make decisions that will grow your business faster.

Ready to see how these features can benefit your team? Sign up for a free trial of RevenueCat.

Subscribe to our monthly newsletter

Read more

App Store account deletion
Engineering

App Store Account Deletion: Rules and Guidance

Everything you need to know about the new rule

Corey Rabazinski

Corey Rabazinski

May 26, 2022

working remotely at RevenueCat
Company

How We Work Remotely at RevenueCat

We're a little different than your average 9-5 job

Rachel Wright

Rachel Wright

May 26, 2022

Google I/O RevenueCat
Engineering

Google I/O 2022 Announcements

How the new features and updated Play Console will help grow your app business

Maddie Beyl

Maddie Beyl

May 17, 2022

Ready to get started?

At any level of scale, RevenueCat just works

David Smith, WidgetsmithDavid Smith, Widgetsmith
Read case study