Unlimited Private Plans & Target Stores: What Shopify App Pricing Change Means for You

Shopify now lets you create unlimited private app pricing plans and assign them to any number of stores. Learn what this update means for developers and merchants, how to set up new plans, and how to migrate legacy pricing with the App Migration CLI.

Unlimited Private Plans & Target Stores: What Shopify App Pricing Change Means for You
6 sections

Shopify’s latest Developer Changelog removes the long‑standing caps on private app pricing plans and their target stores. If you’ve been juggling a handful of custom‑priced plans for select merchants, you can now breathe easy—there’s no limit on how many private plans you can create, and each plan can be offered to an unlimited number of stores. This post breaks down the change, explains who it affects, and gives you step‑by‑step guidance on leveraging the new flexibility today.

What Changed: Unlimited Private Plans & Targets

Previously, Shopify App Pricing allowed a maximum of 15 private plans per app, with each plan limited to 20 target stores. Private plans are essentially custom subscription tiers that only the merchants you select can see and purchase. The update lifts both caps—developers can now generate as many private plans as needed, and each plan can be assigned to any number of stores. Existing plans continue to work unchanged; no migration is required for current configurations.

Who Is Affected: Developers vs. Merchants

*Developers* – The new limits directly impact app developers who build SaaS‑style or feature‑rich Shopify apps. You can now segment your customer base more granularly—offering tiered pricing, region‑specific bundles, or bespoke feature sets without worrying about hitting a hard ceiling.

*Merchants* – For store owners, the benefit is indirect but powerful. When a developer creates a private plan tailored to your store’s needs, you’ll see a personalized pricing option in the Shopify admin instead of a generic one‑size‑fits‑all plan. This can translate into better‑aligned costs and feature sets for niche businesses.

How to Create Unlimited Private Plans Today

  • Navigate to the App Pricing Dashboard – In your Shopify Partner dashboard, open the app you want to edit and go to “Pricing”.
  • Add a New Private Plan – Click “Create private plan”. You’ll now see fields for plan name, price, billing interval, and a “Target stores” selector.
  • Select Target Stores – Unlike before, you can keep clicking “Add store” until every relevant merchant is listed. The UI no longer warns you about the 20‑store limit.
  • Save & Publish – Once saved, the plan appears only to the stores you’ve added. Those merchants will receive a notification that a custom plan is available for them.
  • If you prefer API‑driven automation, the same logic applies via the GraphQL Admin API. Below is a minimal mutation example that creates a private plan and attaches an array of store IDs:

    graphql

    mutation createPrivatePlan($appId: ID!, $planInput: AppPricingPlanInput!) {

    appPricingPlanCreate(appId: $appId, input: $planInput) {

    appPricingPlan {

    id

    name

    price {

    amount

    currencyCode

    }

    targets {

    shopId

    }

    }

    userErrors { field message }

    }

    }

    *Variables*:

    {

    "appId": "gid://shopify/App/1234567890",

    "planInput": {

    "name": "Enterprise Custom",

    "price": {"amount": "499.00", "currencyCode": "USD"},

    "billingInterval": "MONTHLY",

    "targets": ["gid://shopify/Shop/1111111", "gid://shopify/Shop/2222222"]

    }

    }

    Migrating Legacy Pricing with the App Migration CLI

    If your app still runs on the old manual pricing model, the unlimited private plan capability is also available through the App Migration CLI. This early‑access tool helps you convert legacy subscriptions into Shopify App Pricing plans.

    Steps to use the CLI:

  • Enroll in Early Access – Request access via the Shopify developer portal.
  • Install the CLInpm install -g @shopify/app-migration-cli.
  • Run the migration wizardshopify app-migration migrate. The wizard will prompt you to map old plans to new private plans, and you can now assign as many target stores as needed without hitting the old 20‑store ceiling.
  • The migration is non‑destructive; existing merchants keep their current subscriptions until you confirm the switch. After migration, you can immediately start creating additional private plans using the unlimited model.

    Best Practices & Action Checklist

  • Audit your current private plans – Identify any plans that are close to the old limits. Document which merchants are attached to each plan.
  • Plan your segmentation strategy – With unlimited plans, you can create more granular tiers (e.g., “North America – Premium”, “EU – Starter”). Think about how pricing, features, and support differ per segment.
  • Update your onboarding flow – If you previously showed a generic “Select a plan” screen, add logic to detect a merchant’s eligibility for a private plan and display the custom option automatically.
  • Leverage the GraphQL API for bulk assignments – When onboarding a new cohort of merchants, use the mutation shown above in a script to assign dozens or hundreds of stores in one go.
  • Test migration in a sandbox – Run the App Migration CLI on a test partner store first to verify that plan data moves correctly and that notifications appear as expected.
  • Communicate with merchants – Let affected merchants know that a new custom plan is available. A short email or in‑app banner reduces confusion and improves adoption.
  • Conclusion & Next Steps

    The removal of private‑plan caps is a game‑changer for developers who need flexible pricing structures and for merchants who deserve tailored offers. By following the steps above—creating unlimited plans, using the migration CLI if needed, and implementing best‑practice workflows—you can unlock new revenue streams and deliver a more personalized experience.

    Ready to start building your custom plans? Head over to the Shopify Partner Dashboard, create your first unlimited private plan, and let your merchants know about the new options. If you’re still on legacy pricing, sign up for early access to the App Migration CLI and begin the migration today.

    Got questions or want a deeper walkthrough? Drop a comment below or join the Shopify Developers Slack channel. Happy building!

    Tags
    Sources

    Related Articles

    Unlock Simpler Metafield Translations with Shopify’s New Boolean Field
    Platform Updates

    Unlock Simpler Metafield Translations with Shopify’s New Boolean Field

    Shopify’s 2026-10 API adds a non‑null translatable boolean to the Metafield GraphQL object, letting apps detect translation eligibility directly. Learn who’s affected, why it matters, and how to update your queries today.

    September 21, 20263 min
    Shopify Analytics Session Measurement Improvements: What Merchants Need to Know
    Platform Updates

    Shopify Analytics Session Measurement Improvements: What Merchants Need to Know

    Shopify is revamping how sessions are counted in Analytics, delivering a cleaner view of real shopper activity. Learn what changes, who’s affected, and how to adapt your reports and custom integrations.

    September 21, 20264 min
    Why the Removal of automaticDiscounts Impacts Your Shopify Apps (and How to Fix It)
    Platform Updates

    Why the Removal of automaticDiscounts Impacts Your Shopify Apps (and How to Fix It)

    Shopify’s 2027-01 API version drops the automaticDiscounts query, breaking apps that read automatic discounts. Learn what changed, who’s affected, and step‑by‑step migration to discountNodes so your app stays functional.

    September 18, 20264 min
    Navigating Shopify’s New UI Extension Bundle Size Exception Process
    Platform Updates

    Navigating Shopify’s New UI Extension Bundle Size Exception Process

    Shopify now caps UI extension bundles at 64 KB (128 KB for full‑page account extensions) and offers a formal exception request. Learn who’s affected, how to optimize, and the exact steps to submit a bundle size exception before the October 2026 deadline.

    September 17, 20264 min