Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

mattiasgeniar's avatar

Change pricing of Spark plan, keep users on hold plan

Hi,

I've got a Spark project with the following subscriptions;

  • 2x monthly subscription (standard/premium, monthly)
  • 2x annual subscription (standard/premium, paid a year upfront)

I'd like to experiment with price increases to see how that influences signups. However, I'd like to keep the naming of standard/premium.

I know I can archived() plans, but how would I go about adding new plans with new pricing, while keeping old users on their current pricing?

I think they're tied to the stripe-id, so I can archived() the old plans, create a new one with new pricing, and keep the public-facing name the same?

Here's the current plan;

Spark::plan('Standard', 'standard-monthly')
            ->price(9.99)
            ->features([
                '...',
            ]);

Thanks!

0 likes
2 replies
Cronix's avatar
Cronix
Best Answer
Level 67

I haven't tried that, but I believe it works the way you described. The only caveat I can think of is in your subscriptions/team_subscriptions tables, it will have the same "name" as your other plans ("Standard"), but use the new stripe_id ("standard-monthly").

1 like
mattiasgeniar's avatar

Just to confirm, that seem to work flawlessly. Those still on the archived plan see this message in the Subscription tab;

You are currently subscribed to the Standard (Monthly) plan. This plan has been discontinued, but you may continue your subscription to this plan as long as you wish. If you cancel your subscription and later want to begin a new subscription, you will need to choose from one of the active plans listed below.

Case closed!

1 like

Please or to participate in this conversation.