Skip to content
Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Finance automation
Banking as a service
Developer tools
No-code
All products
Home
Payments
Finance automation
Home
Payments
Finance automation
Banking as a service
Developer tools
Overview
Billing
    Overview
    Subscriptions
      How subscriptions work
      Quickstart
      Build a subscriptions integration
      Embed a pricing table
      Design an integration
      Migrate subscriptions to Stripe
      Recurring pricing models
      Manage subscription cycles
        Set billing cycles
        Upgrade and downgrade subscriptions
        Pause payment collection
        Manage pending updates
        Cancel subscriptions
        Manage prorations
        Share a link to update payment details
        Customer credit balance
        Set payment methods for subscriptions
      Subscription schedules
      Tax
      Subscription webhooks
    Invoicing
    Quotes
    Collection methods
    Manage recurring revenue
    Products and prices
    Customer management
    About the Billing APIs
    Test your integration
    Strong Customer Authentication (SCA)
    Invoices API updates
Tax
Reporting
Data
Startup incorporation
Account
HomeFinance automationBillingSubscriptions

Change subscriptions

Learn how to change existing subscriptions.

Customer portal

In addition to using the API and Dashboard to change subscriptions, you can also implement the customer portal to provide a Stripe-hosted dashboard where customers can manage their subscriptions and billing details.

Stripe supports changing existing subscriptions without having to cancel and recreate them. Some of the most significant changes you might make are:

  • Changing the billing cycle
  • Upgrading or downgrading the subscription price
  • Canceling or pausing an active subscription

Some changes automatically create a new invoice. Use the pending updates feature with these changes so that the updates are only applied if the new invoice is successfully paid.

You can also alter subscriptions by updating the parameters normally used when creating the subscription. For example:

  • Applying discounts
  • Using trial periods
  • Setting quantities
  • Adding taxes
  • Setting payment methods

The most complex aspect of changing existing subscriptions is proration, where the customer is charged a percentage of a subscription’s cost to reflect partial use. By default, the following actions result in a proration:

  • Changing to a price with a different base cost
  • Changing to a price with a different billing interval
  • Adding a trial period to an active subscription
  • Changing the quantity

Proration ensures that customers are billed accurately, but a proration can result in different payment amounts than you expect, which may be confusing. Also keep in mind that prorations are never automatically refunded to a customer nor immediately billed, although you can do both manually. When applying changes to existing subscriptions, discounts don’t affect the resulting proration line items.

Prorations only apply to charges that occur ahead of the billing cycle. Metered billing isn’t subject to proration.

You can preview a proration to view the amount before applying the changes.

Was this page helpful?
Need help? Contact Support.
Watch our developer tutorials.
Check out our product changelog.
Questions? Contact Sales.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Login to your Stripe account and press Control + Backtick on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g. )
The Stripe Shell is best experienced on desktop.
$