Public App, Custom App, or Theme Code? Choosing How to Add a Feature
Share
You want to add something to your store. Maybe it's a size guide that changes by product, a bundle builder, a wholesale order form, or a sync with your warehouse system.
The first question isn't how to build it. It's which route to take. On Shopify, you've got three main options: install a public app, build a custom app, or add the feature directly to your theme.
Each one is right in some situations and a costly mistake in others. This guide explains the difference in plain terms, so you can choose the right route before you spend money on the wrong one.
The Short Answer
Use theme code for features that only change how your storefront looks or behaves. Use a public app when a well-supported app already does what you need. Build a custom app when your feature needs its own logic, admin screens, data storage, or connections to other systems, and nothing on the App Store fits. Many stores end up using a mix of all three.
The Three Options, Explained
Theme Code
Your theme controls everything customers see on your storefront: layouts, sections, product pages, the cart, and so on. A developer can add features directly to the theme using Shopify's templating language (Liquid), plus HTML, CSS, and JavaScript. Theme features can also use metafields, Shopify's way of storing extra information on products, collections, or customers.
Theme code is great for anything that's about the shopping experience on your storefront. It can't run tasks in the background, build new screens in your Shopify admin, or securely connect to outside systems on its own.
Public Apps
Public apps are built by third-party developers (or Shopify itself) to be used by many stores. According to Shopify's Help Center, there are two kinds: listed apps you can find in the Shopify App Store, and unlisted apps that don't appear in App Store search but are shared by link. Both go through Shopify's app review process.
You install them, configure them, and usually pay a monthly fee. Many add features to your storefront through blocks you can place in the theme editor.
Custom Apps
A custom app is one that you or a developer builds just for your store. Shopify's Help Center explains that custom apps are now created and managed through Shopify's Dev Dashboard. Since January 1, 2026, new custom apps can no longer be created directly in the Shopify admin, though older custom apps made there can still be managed from the admin.
Custom apps can do almost anything Shopify's platform allows: run business logic, add pages to your admin, store data, react to orders and other events, and connect to your ERP, warehouse, or other systems.
Side-by-Side Comparison
|
Theme code |
Public app |
Custom app |
|
|
Best for |
Storefront look and behavior |
Common features many stores need |
Unique logic, admin tools, and integrations |
|
Time to get started |
Days to weeks, depending on scope |
Often same day |
Usually the longest, since it's built from scratch |
|
Upfront cost |
Development time |
Little or none |
Highest, since it's custom development |
|
Ongoing cost |
Occasional updates |
Monthly subscription, often rising with your plan or usage |
Hosting, monitoring, and maintenance |
|
Control over how it works |
High, within the storefront |
Limited to the app's settings |
Full |
|
Runs in the background or connects to other systems |
No |
Yes, if the app supports it |
Yes |
|
Adds screens to your Shopify admin |
No |
Yes |
Yes |
|
Who maintains it |
You or your developer |
The app developer |
You or your developer |
|
Main risk |
Lost or broken when you change themes |
App changes, raises prices, or shuts down |
Needs ongoing care as Shopify's platform evolves |
There's no single winner. The right choice depends on how common the feature is, how much it needs to do, and how central it is to your business.
When Theme Code Is the Right Choice
Theme code is often the simplest, fastest, and lightest option. It's a good fit when the feature is mostly about what customers see and do on the storefront.
Good candidates for theme code:
-
A size chart or product details tab that pulls from metafields
-
A custom product page layout for one product line
-
Trust badges, delivery messages, or "free shipping over X" notices
-
A custom collection filter layout or mega menu
-
A cart message that changes based on what's in the cart
-
New sections your team can add and edit in the theme editor
Why it's often the better choice:
-
Fewer apps. Every app you avoid is one less monthly bill and often less code loading on your store.
-
More control. The feature looks and behaves exactly as you want, matched to your brand.
-
Editable by your team. Built as a theme section, it can be managed in the theme editor without touching code.
Watch out for: theme code stays with that theme. If you switch themes later, custom features may need to be moved or rebuilt. Keep a simple record of what's been customized so nothing gets lost.
When a Public App Is the Right Choice
If thousands of stores need the same thing, there's probably a mature app for it. Building your own version rarely makes sense.
Good candidates for a public app:
-
Product reviews
-
Email and SMS marketing
-
Subscriptions
-
Loyalty and rewards programs
-
Returns and exchanges
-
Search and filtering
-
Shipping labels and tracking
Why it's often the better choice:
-
Fast. You can often be up and running the same day.
-
Maintained for you. The app developer handles updates, bug fixes, and keeping up with Shopify platform changes.
-
Proven. A well-reviewed app has already been tested by many other stores.
How to choose a good one:
-
Recent reviews from stores similar to yours
-
Clear pricing, including what happens as your order volume grows
-
Responsive support
-
Regular updates
-
Adds features through theme blocks rather than asking you to paste code into your theme
-
A clean uninstall process
Watch out for: app costs add up over time, and some apps load code on every page of your store. Shopify's own guidance notes that uninstalling an app doesn't automatically remove its code from your theme. And if you're stacking several apps and still bending your process to fit them, that's a sign a custom solution may be cheaper in the long run.
When a Custom App Is the Right Choice
A custom app makes sense when the feature is specific to how your business works and nothing on the App Store does it properly.
Good candidates for a custom app:
-
Syncing orders, stock, or pricing with your ERP, warehouse, or accounting system
-
Business rules that are unique to you, such as complex bundle pricing or special shipping logic
-
Internal tools your team uses in the Shopify admin, like a custom order review screen
-
Automations that react to orders, customers, or inventory changes
-
Replacing several apps that only partly cover what you need
Why it's often the better choice:
-
It fits your process, instead of you bending your process to fit an app.
-
No per-month app fees that grow with your sales.
-
You own it. Nobody can change the features or the price on you.
Watch out for: you're responsible for keeping it running. Shopify updates its APIs regularly, so custom apps need occasional maintenance. Plan for that from the start.
Plan Limits Worth Knowing
Some custom features need Shopify Plus. Shopify's Function APIs documentation explains that public apps containing Shopify Functions work on any plan, but only stores on Shopify Plus can use custom apps that contain Shopify Functions. That matters for custom discount, shipping, and payment logic at checkout.
If your feature depends on that kind of logic and you're not on Plus, check first whether a public Functions-based app can handle it. Our guide on [rebuilding checkout logic with Shopify Functions](BLOG #2 URL) goes into more detail.
Mixing Approaches
In real stores, the answer is often "two of the three." A few common combinations:
-
Public app plus theme code. Use a reviews app for collecting and managing reviews, then customize how reviews appear on your product pages so they match your brand.
-
Custom app plus theme code. A custom app syncs stock and wholesale pricing from your ERP into metafields, and theme code displays it on the storefront.
-
Public app plus custom app. A subscription app handles billing, while a small custom app connects subscription orders to your warehouse in the way your operations need.
Questions to Ask Before You Decide
Run through these before committing to a route:
-
Is this a common need? If yes, look for a well-reviewed public app first.
-
Is it only about the storefront? If yes, theme code may be all you need.
-
Does it need to run in the background, store data, or talk to another system? If yes, you need an app, public or custom.
-
How central is it to how you make money? The more central, the more control you'll want.
-
What will it cost over two or three years? Compare monthly app fees against a one-time build plus maintenance.
-
What happens if it breaks or disappears? A critical feature in an app you can't control is a business risk.
-
Will it slow down your store? Ask how and where the code loads.
-
Does it need Shopify Plus? Especially for custom checkout logic.
Ongoing Costs and Maintenance
The upfront price is only part of the picture. Here's what each option costs you over time.
Theme code
-
Small updates when you change designs or add new product types
-
Rework if you switch to a new theme
-
Occasional fixes when the theme developer releases an update you want to install
Public apps
-
A monthly subscription, which may rise as your order volume or plan grows
-
Time spent configuring and managing the app
-
Possible extra code on your storefront, which can affect speed
-
The risk of the app changing its features, raising prices, or closing down
Custom apps
-
Hosting and monitoring, unless the app runs entirely on Shopify's infrastructure
-
Updates as Shopify releases new API versions and retires old ones
-
Bug fixes and new features as your business changes
-
Someone who understands the code, whether in-house or an agency
A useful exercise: estimate what each option costs over 24 to 36 months, not just the first month. A low monthly fee looks cheap until you've paid it for three years and still can't make the feature do what you need. A custom app looks expensive until you add up the apps it replaces.
Frequently Asked Questions
What's the difference between a public app and a custom app on Shopify?
A public app is built for many stores and installed from the Shopify App Store (or, for unlisted apps, from a link). A custom app is built exclusively for one store. Custom apps are now created and managed through Shopify's Dev Dashboard.
Can I still create a custom app in the Shopify admin?
Not new ones. Shopify says new custom apps are created through the Dev Dashboard, and legacy custom apps created in the admin before January 1, 2026 can still be managed from the admin.
Is it cheaper to build a custom app or use an existing app?
Upfront, an existing app is almost always cheaper. Over two or three years, a custom app can work out cheaper if it replaces several paid apps or saves your team significant time. Compare the total cost over time, not just the first month.
Do I need Shopify Plus for a custom app?
Not for most custom apps. You do need Plus if your custom app includes Shopify Functions, such as custom discount, shipping, or payment logic at checkout.
Should I add features with theme code or an app?
If the feature only changes how your storefront looks or behaves, theme code is often lighter and cheaper. If it needs to store data, run in the background, add admin screens, or connect to another system, you'll need an app.
What happens to custom theme features if I change themes?
They stay with the old theme. You'll need to move or rebuild them in the new theme, so keep a record of what's been customized.
Not Sure Which Route Fits Your Feature?
CodeVibez is a Shopify Plus Preferred Partner that has supported more than 1,000 Shopify stores. We build theme features, custom Shopify apps, and integrations, and we'll happily tell you when an existing app is the smarter choice.
Tell us what you're trying to add and we'll recommend the simplest route that actually works for your business.
Schedule a free call or contact our team.