We’ve got some exciting updates to share on our near-term roadmap for Shopify App Pricing. We’ve been focused on making it easier for partners to build, manage, and migrate their pricing plans.
Here’s what you can expect:
Migration tooling (rolling out over the next month)
We’re shipping migration tools in two phases so apps with active billing can start moving to Shopify App Pricing without disruption.
Phase 1: New merchant migration
The first release lets you move new merchants onto Shopify App Pricing while your existing merchant base stays on its current billing. You’ll be able to start adopting App Pricing without touching any of your active subscriptions.
Phase 2: Existing merchant migration
Phase 2 adds the ability to migrate your existing merchants from manual billing to Shopify App Pricing. This will allow you to move your full merchant base over at your own pace, with the tooling to do it programmatically or through the dashboard.
Both phases will roll-out consecutively over the next month. We’ll follow up with detailed documentation and step-by-step guides as each piece becomes available.
Expanded public plan support (coming soon)
We will be increasing the number of supported public plans from 4 to 8. This gives you more flexibility to structure your pricing tiers and better serve the range of merchants using your app, whether that’s a simple free/paid split or a more granular set of plans for different merchant segments.
What this means for you
Together, these updates give you more pricing flexibility and a clear, supported path to fully adopt Shopify App Pricing, for both new and existing merchants and have a better understanding of our roadmap and the areas we’re investing in. As always, we’d love your feedback. Drop your questions and thoughts below.
As far as I understand currently, it’s not possible to conditionally show/hide or enable/disable different plans options on the plan selection page. Any plans for this?
A couple specific use cases for this from my experience:
Don’t show or enable certain plans when the merchant shouldn’t be allowed to downgrade to them. For example, already having an ‘Pro’ feature enabled and should not be able to downgrade to ‘Basic’
Show/enable certain plans based on Shopify plan, it’s not uncommon to bill differently for Shopify Plus vs non-Plus shops
Also, help me understand why you want to bill differently for Plus vs non-Plus? Basically, what are the features that these merchants are getting that cannot be detailed into a plan (either recurring or usage-based)?
We are in a similar boat. Our support cost, complexity and scale are materially bigger for larger merchants. And we don’t like gatekeeping features that will make small Merchants successful as well.
We do offer a simple usage plan for all merchants - which is most objectively fair. But merchants hate usage pricing - very hard to plan for financially and disincentivizes adoption.
So we offer fixed plans by size of the store. These are private, we manage them in Mantle and assign them by the size of the store. We might have 15 options but we only show each merchant an annual, usage and fixed plan.
Any context you can share on my private plans are only for 20 merchants? Not sure i understand the intended use case.
Billing based on Shopify plan is not an uncommon billing model. Take Locksmith for example. Is there a way this can be implemented with Shopify App Pricing? My understanding would be that all of these plan options would get shown to and subscribable by all shops
Let’s say we have ‘feature x’, which is only available on the app’s ‘Pro’ plan. A merchant subscribes to the pro plan and enables this feature, we don’t want to allow them to downgrade to the ‘Basic’ plan which does not include feature x.
It’s not impossible to handle this situation in other ways, but it seems like gating a downgrade when you’re using higher tier features is a pretty straightforward use case.
Will it be possible to redirect merchant to charge page for specific plan?
We have a dynamic onboarding, based on user selection of features available on different plans and once they click start a trial, they are redirected to charge page with that plan.
With new pricing, they are redirected to a pricing table with all plans.
This adds additional step in the funnel, and completely kills our onboarding.
We don’t want merchants on Grow subscription to choose Pro plan or Enterprise because those offer features that are not available for them as they require checkout extensibility.
Echoing the comment about being able to send users straight to a charge page for a specific plan.
Our Plans page is optimised for conversion, with reviews, BFS banners, discounts, etc. Replacing that with this plans page from the new Shopify App Pricing will kill conversions.
Plus, we include content on the plans page about what plans is best for them. Not having that information, merchants may struggle to understand which plan they need.
Also also, we include upsells in app for specific features. If the plan they’re on doesn’t have a feature, when on the feature page they can choose to ‘upgrade’ to a higher plan. If we now require them to go to the new Shopify App Pricing plan page, look through all the plans, find the one with the feature they’re needing and select it - that adds unnecessary friction.
Is this intended to be used as a direct link to a specific pricing plan from within an app’s own pricing page?
If so, this could be a good compromise. Apps could keep their existing, conversion-optimized pricing pages (reviews, Built for Shopify badges, discounts, feature comparisons, recommendations, etc.) and simply redirect merchants to the Shopify charge page for the selected plan, while still relying on Shopify’s pricing infrastructure.
One thing I’m wondering about is how this fits with the fact that merchants can always navigate to:
If that’s the expected behavior, then it seems that apps should treat the currently active Shopify plan as the single source of truth, with all app functionality determined by the selected plan, rather than assuming merchants can only upgrade or downgrade through the app’s own pricing flow.
I checked on my side as well, and it is possible to directly open the plan approval page with the following link: https://admin.shopify.com/store/{store}/charges/{app_handle}/plans/{plan_handle}
It only shows pricing information, no details what features are contained, etc.
That should allow some scenarios to be possible.
As long as the merchant knows how to put the URL to the /pricing_plans together themselves, they could still access all plans.
@jzaz Thanks for the update! We are happy to migrate as we understand that this will make the experience more seamless and familiar to merchants, which will in turn lead to higher conversion rates.
I wanted to share a couple of killer points for us:
(1) We bill in Euros because we address a Spanish audience only, and we’re wondering whether multi-currency support is in your roadmap. We cannot easily switch to USD because our product also lives on its own outside Shopify, and has additional integrations with other platforms. Our pricing is public in our website and standardized to euros.
Our plans have a maximum number of items a user can create. When they hit the maximum number of items, they must upgrade their plan.
Downgrading the plan while having too many items will lead the user to have more items than allowed and we have to manage it within the app and ask them to upgrade or to delete items.
The UX is not great - especially because they can downgrade and never check the app again. We send an email, but most merchants don’t read app’s email sent to the default email address.
Because we’re running automation based on these items, it will lead to items not being automated and it failed silently for the user.
Having the ability to block downgrade of a plan when the user has too many (app specific’s) item would help with a better UX and avoid bad surprises