deploteka ← All guides

By DeploTeka · Last updated July 18, 2026

Shopify custom apps explained: custom vs custom-distribution vs public

Short answer: Shopify app types differ by who can install them, not by what they can do. A public app can be installed by any merchant and must pass Shopify's review. A custom-distribution app is created in a Partner (or Dev Dashboard) organization, skips review, and installs on exactly one store — or several stores within one Shopify Plus organization. A legacy custom app was created inside a store's own admin; since January 1, 2026, new ones can no longer be created. All three talk to the same Shopify APIs.

If you're deciding how to ship an app — especially one app that serves many client stores — the type you pick determines your review burden, your install mechanics, and how well your model scales. Here's the full picture.

What is a Shopify public app?

A public app is built in a Partner organization and can be installed by any Shopify merchant. It comes in two flavors:

  • Listed — discoverable in the Shopify App Store.
  • Unlisted — installed via a direct link, invisible in App Store search, but still a public app.

Both go through Shopify's app review and must meet public-app requirements on an ongoing basis. In exchange you get unlimited installs across any merchant, plus App Store-only capabilities like Shopify-managed billing.

Public apps are for products. If any merchant should be able to install your app, this is the intended route.

What is a custom-distribution app?

A custom-distribution app is created in your Partner organization (today, via the Dev Dashboard / Shopify CLI) and distributed by a private install link to one specific store — or, since July 2023, to multiple stores within a single Shopify Plus organization if you enable multi-store install.

Key properties:

  • No app review. You ship when you want.
  • Same API surface as public apps — Admin API, webhooks, theme app extensions, web pixels, checkout extensions.
  • Hard install boundary: it cannot be installed outside the designated store/organization. Not "isn't supposed to be" — cannot; Shopify enforces it.
  • Distribution method is permanent. Once selected, it can't be changed — a custom app can't later become public.

Custom-distribution apps are for known clients. Agencies and vendors use them to run private functionality on stores they serve — one dedicated app per client store when clients span different organizations.

What was a legacy custom app (and what happened in January 2026)?

Before 2026, a merchant could create a "custom app" directly in their own admin (Settings → Apps and sales channels → Develop apps), generate permanent Admin API tokens, and hand them to a developer. This was the successor to the even older "private apps," and it powered a huge number of quiet, unreviewed integrations — including vendors who had each client create one so a single backend could serve many stores.

As of January 1, 2026, new legacy custom apps can no longer be created. Existing ones continue to work, but new stores must use apps created through the Dev Dashboard, which authenticate with OAuth client-credentials rather than non-expiring tokens. If your integration model depended on merchant-created apps, onboarding a new client now requires the new flow — we cover the implications in our deprecation guide.

Comparison table

Public (listed)Public (unlisted)Custom distributionLegacy custom (admin-created)
Who can installAny merchantAny merchant with the linkOne store, or one Plus orgOnly the store that created it
Shopify app reviewYesYesNoNo
Created inPartner orgPartner orgPartner org / Dev DashboardStore admin (closed since Jan 1, 2026)
Auth modelOAuthOAuthOAuth / install linkPermanent admin token
API capabilitiesFullFullFullAdmin API (no OAuth-based surfaces)
Shopify-managed billingYesYesNoNo
Fits "one app, many client stores"Yes, with review burdenYes, with review burdenYes — as one app per storeFormerly; closed to new stores

Which type should a vendor with many client stores use?

This is the decision most guides skip, so let's be direct:

  • Open-market product → public listed app. Accept review; you get distribution in return.
  • Many merchants, private distribution, review acceptable → unlisted public app. One codebase, one app, install by link — but you carry public-app compliance forever.
  • Client work where you need control and no review → custom-distribution apps, one per client store, all running the same codebase. Each client gets a dedicated app in your Partner org with its own credentials and install link. This is the model that survives the 2026 changes and works for non-Plus merchants — its only real cost is operating N apps instead of one.

Where DeploTeka fits: operating N apps by hand — creating each one, syncing config, deploying every release to every app, watching credentials and install health — is the part that stops scaling. DeploTeka automates exactly that: a dedicated custom-distribution app per client store from one codebase, in your own Partner organization, with fleet-wide deploys and health monitoring. It's the infrastructure we built to run our own pixel product across ~94 client stores.


Sources: [Shopify — About app distribution](https://shopify.dev/docs/apps/launch/distribution), [Shopify — Select a distribution method](https://shopify.dev/docs/apps/launch/distribution/select-distribution-method), [Shopify Help Center — App types](https://help.shopify.com/en/manual/apps/app-types), [Shopify changelog — legacy custom apps after Jan 1, 2026](https://changelog.shopify.com/posts/legacy-custom-apps-can-t-be-created-after-january-1-2026).

Frequently asked questions

What is the difference between a Shopify custom app and a public app?

Distribution, not capability. A public app can be installed by any merchant (via the App Store or an unlisted link) and must pass Shopify's app review. A custom app installs only on one store or one Plus organization, with no review.

Are Shopify private apps and custom apps the same thing?

'Private apps' was the old name for merchant-created apps, replaced by admin-created custom apps in 2022 — which are themselves legacy as of January 2026. Today 'custom app' usually means a Partner-created app with custom distribution.

Do custom apps have fewer API capabilities than public apps?

No. Custom-distribution apps use the same APIs, webhooks, and extension surfaces as public apps. The differences are distribution, review, and a few App Store-only features such as Shopify-managed app billing.

Can I change my app from custom distribution to public later?

No. Shopify does not allow changing an app's distribution method after it's selected. Going public means creating a new app and migrating installs.