How to Maintain App Versions Without Breaking Existing Shopify Stores?

I have a Shopify app that applies discounts and relies on snippet code and manual installation in its earlier version. Over time, many merchants have installed and actively use this previous version in their stores.

Now I want to release a new version of the app with improved features and a better setup, but I’m facing a common challenge:

  • Existing stores are already connected to the old version

  • Removing or changing code in the new release may break or remove manually installed snippets

  • I don’t want existing merchants to be forced into the new version

  • At the same time, I want new merchants and willing existing merchants to use the updated version

My goal is to:

  • Maintain backward compatibility for existing stores

  • Allow merchants to continue using the previous version if they want

  • Provide an optional upgrade path for merchants who want the new features

  • Ensure that updating the app does not automatically remove or override existing snippet code

I’m looking for best practices or architectural approaches to:

  • Manage multiple app versions within a single Shopify app

  • Handle legacy snippet-based installs alongside newer app-block-based setups

  • Safely introduce updates without disrupting existing clients

If anyone has experience handling versioning, migrations, or upgrade strategies in Shopify apps, I’d really appreciate your insights.

Thanks in advance!

Managing multiple Shopify app versions without breaking existing stores requires keeping legacy snippet code intact while offering new features as theme app extensions. Use feature flags or version checks to ensure older stores run smoothly, and provide clear documentation with an optional upgrade path for merchants.

Is there any other option for that ?

Location location location. How To Ask Questions The Smart Way etc
Use the actual deveolper forums, way better signal to noise ratio , and chance of shopify-internal-staff reply though slim on a question like this.
SEARCH first before posting there:
https://community.shopify.dev/