Stripe price change guides

Grandfathered pricing in Stripe: when to keep it and when to migrate

Stripe grandfathers everyone by default, so doing nothing is itself a pricing decision. Here's how to decide who moves and when.

6 min read · By , Founder · Updated

Short answer

Stripe grandfathers existing subscribers automatically: a new price only applies to new subscriptions. Keeping legacy pricing forever is simple but costs more every time you raise prices. Most businesses do better with a time-boxed grandfather period (say, 6–12 months), followed by a notified migration of the legacy cohort to current pricing.

When a grandfather period ends, the Change Subscription Price App moves that cohort to current pricing in one job, with no prorations.

Change Subscription Price App — by FinriteUpdate a price across all your Stripe subscriptions from the dashboard, in bulk. Built by former Stripe Billing product managers and engineers.

View on Stripe Marketplace

What grandfathering costs you

Every price increase leaves a cohort on the old price. After three increases you have four price tiers for the same product, and your oldest, most loyal customers pay the least. None of it shows up on a dashboard. It shows up as ARPU that won't move however much you raise the list price.

It also makes operations harder. Support has to know which customer sees which price, and every future change has more legacy cases to handle.

When grandfathering is the right call

When to migrate legacy customers

A playbook that keeps churn low

  1. Segment first. Tag each customer who stays grandfathered with Stripe metadata so they can't be migrated by accident.
  2. Announce early. 30–60 days out, with the new amount, the date, and one sentence on why.
  3. Offer a way out that isn't cancelling. A cheaper plan, or a discounted annual prepay at the current price.
  4. Migrate with no prorations, so the new amount starts at each customer's next renewal. Why that matters.
  5. Measure churn for the migrated cohort against a baseline over the next 60–90 days.

Migrate a legacy cohort with the Change Subscription Price App

Change Subscription Price App — by FinriteUpdate a price across all your Stripe subscriptions from the dashboard, in bulk. Built by former Stripe Billing product managers and engineers.

View on Stripe Marketplace

If you publish through Substack, beehiiv or Ghost, grandfathering works a little differently because the platform created your Stripe prices. The platform guides cover what's safe to change.

Frequently asked questions

Does Stripe grandfather existing customers automatically?

Yes. Existing subscriptions keep the price they were created with until you update them, so when you raise prices, everyone already subscribed is grandfathered by default.

How do I grandfather only some customers in Stripe?

Migrate everyone except the group you want to protect. Filter them out by metadata, creation date or plan, or tag them with metadata such as legacy_pricing=true before the migration and exclude that tag.

Is it better to grandfather permanently or for a set period?

A fixed grace period, such as 6 or 12 months at the old price, usually works better than permanent grandfathering. Customers get a reward and time to plan, and you don't end up with a growing tail of prices that are years out of date.

Will raising prices on existing customers cause churn?

Some, usually concentrated among customers who were already disengaged. Clear notice, a real reason, and an alternative such as a cheaper plan or an annual lock-in keep it lower than most teams expect. Measure churn by cohort for 60 to 90 days after the change.

Related guides

When grandfathering ends, move them in one job

Filter to the cohort that's moving, set the new price, and schedule the change for the end of their grace period.

Install from the Stripe App Marketplace

Read the app user guide first · Questions? contact@finrite.co