Search
Clear search
Close search
Google apps
Main menu

Add subscriptions & recurring charges

With subscriptions, you can add products that charge users for content or services on a recurring basis. You can offer multiple subscriptions within the same app.

To add recurring charges and subscription billing to your apps, you need to use the Google Play In-app billing API.

Availability

Users can purchase subscriptions on Google Play clients version 3.5 and higher in countries where in-app billing is supported. Subscriptions must be priced within the accepted prices ranges and the price of a subscription can't be changed. Subscriptions can't be unpublished.

Subscription & free trial time periods

  • Weekly: Weekly subscriptions can't be charged using direct carrier billing.
  • 1 month
  • 3 months
  • 6 months
  • Seasonal: Seasonal subscriptions need a start and end date and can be prorated. For more information, see the seasonal subscriptions section below.
  • Annual

Add a subscription to your app

Adding a subscription is similar to adding a regular in-app product, except the price is set to per month, per season, or per year.

The In-app billing version 3 API supports in-app subscriptions. If you use in-app subscriptions, it's best to migrate to In-app billing version 3 API.

Tip: Before starting, you need to have the BILLING permission on your APK to add in-app products.

  1. Sign in to your Play Console.
  2. Click All Applications All applications.
  3. Select an app.
  4. On the left menu, click Store presence In-app products.
  5. Select the Subscriptions tab > Create subscription.
  6. Add the Product ID.
  7. Follow the onscreen instructions to set up your subscription.
  8. Save your changes.

Add an introductory price to your subscription

With introductory pricing, you can specify an initial price that applies to a set number of billing periods. For example, you can offer a subscription for $1 per month for the first three months. At the end of the introductory period, users are charged the full subscription price.

Add an introductory price

  1. Sign in to your Play Console.
  2. Click All Applications All applications.
  3. Select an app.
  4. On the left menu, click Store presence > In-app products.
  5. Select the Subscriptions tab.
  6. Next to "Introductory price," enter your introductory price (in the default currency) and the number of applicable billing periods.
    • We use the price you enter as the base for calculating market-specific prices. To manually update local prices, select Edit Price.
    • For more information on how to manage market-specific prices for subscriptions, go to administer in-app billing.
  7. Save your changes.

Requirements

  • Introductory prices must be less than the subscription's full price.
  • You can't set up introductory prices for seasonal subscriptions.
  • If you're offering a free trial and introductory price, your users are charged the introductory price at the end of the trial.
  • A user can only receive an introductory price to a specific subscription product one time.
  • A user can only receive an introductory price to a specific subscription if they haven't previously received that subscription. 

Subscription policies

Upgrade or downgrade existing subscription plans

With in-app subscriptions, you can add the ability for users to upgrade or downgrade their existing subscription to another plan your app offers. For example, users can change from a monthly to an annual subscription or from a basic to a premium subscription.

Users won't receive a refund for their old plan. To account for unused time remaining on an existing subscription, the first charge of their new subscription plan will be delayed.

Grace periods & account holds for declined payments

Grace periods allow your subscribers to update their payment method if a recurring payment is declined. This can be useful if your subscribers have an expired credit card, subscribed using a prepaid card, or canceled a card without updating their payment information.

Declined payments & grace periods

At the start of a grace period, your subscribers receive an email notifying them of a declined payment. They'll have time to update their payment method without interrupting their subscription. Once your subscribers update their payment method to a valid form of payment, their next subscription billing date stays the same.

For new subscription products created after April 28, 2015, the following grace periods are set by default:

  • Weekly subscriptions: 3 days
  • Other subscription periods: 7 days

Change a grace period

You can change the grace period (3 days or 7 days) for individual subscriptions or turn off grace periods.

  1. Sign in to your Play Console.
  2. Select your app.
  3. On the left menu, click Store presenceIn-app products.
  4. Select the Subscriptions tab.
  5. Select a subscription.
  6. Change your grace period settings.

End of grace period

If your subscribers' payment method is still declined by the end of the grace period, their subscription is canceled and they lose access to their subscription content.

Restrict access to content

If a subscriber's recurring payment is declined, you can place the user's subscription on hold and restrict access to your content for 30 days while we try payment again. If activated, the account hold feature applies to all subscriptions within your app.

To restrict access to subscription content:

  1. Sign in to your Play Console.
  2. Select your app.
  3. On the left menu, click Store presence > In-app products.
  4. Select the Subscriptions tab.
  5. Expand the "Subscription settings" section.
  6. Next to "Activate account hold," check the box.
Trial subscriptions

Requirements to set up a trial subscription

  • To offer trial subscriptions to your users, you need to set a trial duration per subscription SKU.
  • Trial prices are always $0.
  • The minimum length of a trial subscription is 3 days.

User experience with trial subscriptions

  • A user can only receive a trial subscription if they haven't previously received that subscription.
  • When a user cancels their trial, they lose access to the subscription at the end of their trial period.
  • Users are billed on the day following the end of the trial period.
  • As of December 1, 2017, users can only receive one free trial across all available subscriptions in your app.

    To allow users to receive one free trial for each subscription, make the following change in your Play Console before December 1, 2017:

    1. Sign in to your Play Console.
    2. Select your app.
    3. On the left menu, click Store presence > In-app products.
    4. Select the Subscriptions tab.
    5. Next to "Activate subscription-level free trial," check the box.
Seasonal subscriptions

When you add a seasonal subscription, you can prorate the price of the first billing period for users who sign up after your original start date. When the subscription recurs, the user will pay the full price of the subscription.

Example

Here's one way you could set up discounted pricing for a seasonal subscription starting on October 1:

  • $180 for users who sign up on or after October 1
  • $150 for users who sign up on or after November 1
  • $130 for users who sign up on or after December 1

Prorated pricing policies

  • You can update prorated prices an unlimited number of times, but existing subscribers remain on the original price schedule.
  • Prorated pricing can only be set between the start and end date of your subscription.
Cancellations

User experience

When a user cancels a subscription, they don't receive a refund. Instead, they have access to their purchased subscription until the end of the prepaid subscription period.

Restore a subscription in the app

To help users who cancel a subscription and want to subscribe again, you can add the ability for users to resubscribe in your app without having to wait until the end of their existing subscription period. When a user resubscribes before the end of their existing subscription period, they see a $0.00 charge.

Restore a subscription from the Play Store app

If you enable users to restore a subscription, users can restore access to a canceled subscription that hasn't expired yet from the Play Store app. When a user restores access, they'll confirm the next payment date and you will receive a notification. 

Tip: This feature works best if you've set up real-time developer notifications.

To enable users to restore a subscription:

  1. Sign in to your Play Console.
  2. Select your app.
  3. On the left menu, click Store presence > In-app products.
  4. Select the Subscriptions tab.
  5. Expand the "Subscription settings" section.
  6. Next to "Allow users to restore subscriptions," check the box.

Developer responsibilities

  • You (as the content or access provider) may implement a more flexible refund policy with your users directly. It is your responsibility to notify your users of any changes to your refund policies and ensure that the policies comply with applicable law.
  • In some cases, the user may contact you directly to request cancellation of a subscription. In this and similar cases, you can use the server-side API to directly cancel the user's subscription from your servers.
  • You must support a subscription as long as it has at least one active user. If a developer doesn't support subscriptions with active users, the developer account will be suspended and the user's subscription will be refunded using the developer's account.

Related Content

Visit our developer site to learn more about offering in-app subscriptions.

Was this article helpful?
How can we improve it?