Play Store Subscriptions for Android — What’s new in 2018?

What you should know about subscriptions enhancements in Google Play Store for the past year and what’s coming up after Google I/O 2018

At JoyTunes we provide a music learning service that is powered by subscriptions, so naturally we take app subscriptions very seriously.

When Simply Piano for Android was launched in the beginning of 2017, it was subscription based from Day One.

When optimizing your subscription business (from acquisition to retention) the store which manages the subscription is key to many aspects:

Trust

Are users trusting the platform with their wallets? Do they have any other subscriptions there? Is it clear how renewal works, how to cancel?

Are users trusting the platform with their wallets? Do they have any other subscriptions there? Is it clear how renewal works, how to cancel? Reaction

How can you react to subscription events (such as cancellation, payment issues) happening outside your app? What does the platform inform you of?

How can you react to subscription events (such as cancellation, payment issues) happening outside your app? What does the platform inform you of? Analysis

Much of the key data for your subscription business is gathered on the platform. Retrieving data such as store listing performance, cancellation and renewals and so on is crucial for decision making.

Play Store platform is integral to our business, so we naturally keep track of new features and improvements as they come up. Google I/O 2018 was a good chance to hear directly from Google’s engineers and product managers what’s coming up in subscriptions, and revisit what was done recently. Here is an overview of cool stuff coming up or recently added to Google Play subscriptions:

New Subscription Management Center

Google unveiled the new subscription management center for users, to provide them with a better experience viewing and changing their subscriptions. It’s a big step in educating users about subscriptions, and as the number of subscriptions per user grows, they will definitely need better tools to make sense of it.

Google will suggest apps with subscriptions to users in the new management center. The jury is still out about how effective it will be converting new users, but Google is known for optimizing the right content for the user, so we’re optimistic.

Hey, our app Simply Piano got suggested in the Google I/O session’s demo! Exciting moment…

Play Billing Library

One of the main changes Google engineers were keen to push developers to, is a transition to the new Billing Library for Java and Kotlin, that was released back in September 2017. The library replaces the copypasta code that wrapped Google billing APIs that was distributed around the web.

An up-to-date example app for using the library is provided as well.

That’s a big step in making the implementation of robust billing code easier for developers, and rolling out new billing features by Google.

Real-Time Developer Notifications

Real-time notifications for subscriptions sends the backend a message whenever an event occurs on the subscription: renewal, cancellation, billing problem and so on.

This is huge for both keeping current data about your subscribers in order to combine it with your in-app data in analysis, and for reacting to subscription events in the app and externally via push notifications and such. In other words, this could be a vital tool in building your user success and preserving users, both when they churn voluntarily (find out what you need to offer them) and involuntarily due to billing issues (let them know they’re about to lose the subscription).

For some use cases of reacting to real-time events check out this interesting post about winning back customers.

Illustration of Real-Time Developer Notifications architecture

The notification messaging is built on top of Google Cloud Pub/Sub service. It notifies you of the subscription order id that changed so you should use the subscriptions API to get the actual subscription state. If you already have code to scan an existing subscription to update its state, it’s fairly simple to trigger it after notification messages are sent.

Refund using Order ID and Partial Refunds

The Play Store Console now allows partial refunds (for part of the subscriptions cost) and refunding previous renewals. This is something that occasionally comes up in support, and it’s nice to have the ability to refund where the purchase was made, and not resort to some external refund transfers.

The changes were said to be rolled out to the API shortly after Google I/O, but it doesn’t seem to be supported yet according to the docs. Refunds using the order ID (if for some reason you don’t have the purchase token in your server) should also be rolled out.

Account Hold

Involuntary churn due to billing issues is a serious problem for mobile app subscriptions. The billing grace period introduced by Play Store a long time ago greatly improved this by allowing to keep the subscription for an extended time, while the billing for a renewal is being re-attempted.

Account Hold extends that billing recovery time for one month beyond the grace period, by allowing the app to serve the subscription in a “hold” state (for example: notifying the user of the state and providing limited access). Once the user fixes the payment issues, the renewal will take place and their subscription will return to normal state.

And what really seals the deal here is that after fixing the payment in any of the user’s apps, the subscription for your app supporting “account hold” will be renewed!

You need to opt-in to Account Hold on the Play Console after the feature has been implemented in the app.

Accessible via Store Presence/In App Products/Subscriptions/Subscription Settings

In addition, to prevent involuntary churn, a secondary payment method was added to allow users to ensure the continuity of their subscription if the main payment method fails.

Price Increase for Subscriptions

At JoyTunes we’re not very fond of changing the pricing for existing users, due to the risk of them opting out. However, judging from the round of applause when this change was announced, I guess it’s something sought out by many developers.

Of course, the subscription SKU price change requires the subscriber to opt-in for the renewal to continue. Play Store will seek the user’s agreement to the price increase 30 days prior to the renewal date (or the developer can prompt the user to agree 7 days before that).

The feature is still in early access.

Subscription Reports and Google Play Console

Some love has been given (but not rolled out yet) to the subscription reports in Play Console.

We’re expecting, according to the Google I/O talk, an extended retention report, which allows a look at by-day retention based on date, country or SKU cohorts. This will also contain some free trial statistics. This is something we have implemented internally based on the data we gather from the Play Store, and the report might serve as a good validation or alternative for it.

The other new report is the cancellation report which should provide some insights about voluntary and involuntary cancellations.

Subscription Cancellation Survey

I saved the best for last, since this is one of the features that excites me the most. When trying to optimize for retention, naturally, the key question is why users are choosing to cancel the renewal. Since the cancellation itself is done externally from the app, we try to gather the data after the cancellation through surveys and interviews. These methods suffer from significant biases, like getting answers only from the users who elected to answer, and not getting the answers at the time of cancellation.

Now, with this new survey feature, the moment the user cancels in the Play Store, they’re prompted to choose predefined reasons for cancelling (not using the service, technical issues, cost, finding a better alternative or other). From the demo I saw, the survey encourages to select an answer (declining is just another answer, not a skip button), so you’d get a wide coverage for the cancelling users.

The cancellation poll feature seems to already be partially rolled out, and is accessible via the response of the subscription API (look at the cancelSurveyResult field). From scanning recently cancelled subscriptions, it seemed that 5% of the subscriptions contained cancellation survey results. The survey results are expected to appear in the new cancellation report in the Play console mentioned above.