Quick answer: Not always. Check for an existing app first, then a built-in Shopify setting. Build a custom app only when neither fits your rules or systems. A public app is for selling to many merchants, and the distribution choice can’t be changed after you pick it. Plan for API upgrades, since Shopify releases a version every three months.
Last updated: November 2026
Sometimes you need an app. Often you don’t. Before you spend a rupee or a dollar on development, check three things in order: is there an existing app that does the job, is there a Shopify setting that already covers it, and only then, does a custom app make sense? This guide walks through that decision, explains the options in plain words, and gives you a checklist for talking to a developer.
Do You Need an App at All?
Often not. The most useful question in this whole article is: what exactly is missing?
Merchants often say “we need an app” when they mean “we need this one behaviour.” That can be solved three ways.
- An existing app. Usually, someone has already built it, tested it on other stores and keeps it updated. That is often the simpler route, though not always.
- A Shopify setting or built-in feature. Sometimes the feature is already in your admin and nobody noticed. Check before you pay for anything.
- A custom app. Built for your store, your rules, your systems. This makes sense when the existing options are close but not close enough, or when the logic is specific to how you sell.
It’s worth getting a second opinion before you commit. WebbyTroops, a shopify app development company, says it offers a free recommendation on whether an existing app, a Shopify setting, or a custom app is the best option for your case. You don’t have to hire anyone to get that answer, and a developer who tells you “you don’t need us for this” is worth keeping on your shortlist.
A quick test: write your requirement in one sentence, with no tool names. “Customers who spend over a set amount get a free gift” is a requirement. “We need a gift app” is already a solution.
What Can a Shopify App Actually Do?
A lot more than add a widget to the product page. Here’s what Shopify apps commonly handle.
- Admin pages. Custom screens in your Shopify admin, such as a tool to review special orders.
- Storefront features. Things shoppers see on the store, like a size guide, a product add-on, or a custom badge.
- Checkout changes. Extra blocks in checkout, or rules that change what shows up there.
- Discount rules. Logic beyond the standard discount types, such as special pricing for certain customer groups.
- Shipping and payment rules. Hiding, renaming or reordering delivery and payment options based on what’s in the cart.
- Automations. Tasks that run on their own when something happens.
- System connections. Syncing with other tools you use, so data isn’t typed twice by hand.
Notice that most of these are about logic and data, not looks. A designer and an app developer do different jobs, even inside the same agency.
Custom App or Public App: Which Distribution Should You Choose?
Every Shopify app is either custom or public. Choose a custom app if it serves one store, and a public app if you plan to sell it to many merchants. This choice sets the rules for everything after it.
Public apps are meant for many merchants and are listed on the Shopify App Store. They need approval from Shopify and a one-time registration fee. They can use Shopify’s billing, which is how an app developer charges merchants through Shopify.
Custom apps are built for one store. (Shopify also allows them for stores in the same Plus organization, and for development stores.) There’s no Shopify approval step, and they can’t use Shopify’s billing.
Two details trip people up.
First, the distribution method can’t be changed after you pick it. If you build a custom app and later decide you want to sell it to other merchants, that isn’t a switch you can flip. You’d be starting a new app. So decide early: are you solving your own problem, or building a product?
Second, there’s a legacy type you may have heard of. Custom apps created straight inside the Shopify admin can’t be created anymore. Existing ones still work with a pre-generated Admin API token, but they can’t use App Bridge (a JavaScript toolkit that connects an app to the Shopify admin), app extensions or billing. Old “private apps” were deprecated back in January 2022 and migrated into custom apps. If someone offers to build you an admin-created custom app today, that’s a red flag. Ask them how they plan to build it.
What Are Theme App Extensions and App Blocks?
Theme app extensions let an app add features to your theme without anyone editing Liquid. Liquid is the template language Shopify themes are written in.
Here’s the problem they solve. An app adds a feature to your product page by pasting code into your theme. Then you change themes, and the feature vanishes or half-works.
With theme app extensions, the app provides app blocks, which you place inside sections in the theme editor, and app embed blocks for things that sit across the page. Shopify says the same integration works across themes, and it doesn’t edit your theme code.
For you as a merchant, that usually means three practical things.
- You can add, move or remove the feature in the theme editor, no developer needed.
- Because the extension doesn’t edit your theme code, removing it should not leave stray code behind.
- Switching themes is usually less painful.
If you’re having an app built, ask whether the storefront parts will be delivered as theme app extensions. The answer should be yes for almost anything that shows up on the store.
How themes are built helps here. JSON templates act as a wrapper for the sections on a page. Sections are reusable Liquid modules merchants add in the theme editor, and blocks live inside sections. Apps plug in through app blocks. If your theme is heavily customised, the theme work and the app work need to line up, and that’s usually a single conversation about shopify web development services rather than two separate projects. For the theme side specifically, see custom Shopify theme development.
What Are Shopify Functions, and When Do You Need Them?
Shopify Functions are small pieces of backend logic that run inside Shopify itself, so you can add custom rules to discounts, delivery and checkout. They’re easy to explain without code.
A Shopify Function takes in data as JSON, applies your rules, and hands back a result as JSON. It’s compiled to WebAssembly, a standard binary format for running code. Shopify provides starter templates in Rust and JavaScript, and it strongly recommends Rust.
What can a Function do? Shopify lists these use cases:
- Discounts
- Payment options
- Delivery options
- Checkout validation
- Bundles
- Fulfillment constraints
- Pickup options
Here’s a hypothetical example, made up to show the idea. Say a store sells fragile glass and wants to hide one delivery option whenever such an item is in the cart. A Function built for delivery options could do that, and the shopper would never see the option that doesn’t apply.
Which Shopify Plans Can Use Functions?
Any Shopify plan can use public App Store apps that contain Functions, but only Plus stores can use custom apps that contain Function APIs. That doesn’t mean all custom apps need Plus, only those containing Function APIs. If you’re not on Plus, check public apps first.
What Are Checkout Extensions?
Checkout customisation sits under a wider idea called checkout extensibility. Its pieces are UI extensions, Functions, web pixel extensions and payments extensions. Merchants add blocks to checkout through the checkout editor. So the pattern is similar to theme app extensions: the app provides the block, you place it.
What Replaced Shopify Scripts and checkout.liquid?
Shopify Functions replaced Shopify Scripts. Scripts were deprecated as of June 30, 2026, published Scripts are deactivated, and Shopify points merchants to Functions as the replacement.
If your store used Scripts for custom discounts or shipping rules, you’ve probably already run into this.
The checkout.liquid file has changed too.
- It’s unsupported for the Information, Shipping and Payment steps.
- On the Thank you and Order status pages, checkout.liquid and additional scripts were sunset on August 28, 2025.
- Script tags on those pages were sunset on August 28, 2025 for Plus stores and August 26, 2026 for non-Plus stores.
If an old customisation stopped working, or you’re unsure whether something still depends on Scripts, get it checked. Rebuilding that logic as a Function or checkout extension is often the way forward. Treat it as a small project, not a quick patch. Checkout work tends to sit inside broader shopify website development services, because it touches your theme, your tracking and your apps together.
Why Do Shopify Apps Need Maintenance?
Because Shopify retires old API versions on a schedule, an app isn’t finished when it launches. Here’s the part nobody mentions during the sales call.
Shopify releases a new API version every three months, on the first day of each quarter. Versions are named by date, like 2026-04. Each stable version is supported for at least 12 months, with at least nine months of overlap between versions. If an app calls a retired version, Shopify’s requests fall back to the oldest stable version still accessible. That can change how the app behaves, and not in a way anyone planned.
So you have a runway, but it isn’t infinite. If nobody owns the upgrade job, the app drifts out of date, and you find out when something breaks.
This is why maintenance belongs in the first conversation, not the last. Ongoing shopify website development should include a plan for API upgrades, who does them, and how you’ll know they’re done. WebbyTroops says it monitors Shopify’s API release schedule and updates apps before old versions retire, and that it offers a monthly support plan. Whoever you hire, ask for the same kind of commitment in writing.
What Are Shopify CLI, App Bridge and Polaris?
They’re the three tools you’ll hear developers name most. You don’t need to learn them, but it helps to know what each one does.
- Shopify CLI. CLI stands for command-line interface. It’s the tool developers use to work with apps, themes and Hydrogen storefronts. The command shopify app init is how a developer scaffolds a new app, meaning it creates the starting project.
- App Bridge. A JavaScript SDK (software development kit) that connects an app’s screen to your Shopify admin, so the app feels like part of it instead of a separate website.
- Polaris. Shopify’s design system. It provides the interface components, so an app’s admin pages look and behave like the rest of the admin.
If a developer wants to build admin screens with their own look and feel, ask why. Polaris is usually the safer choice, because your team may already know Shopify’s interface.
How Does a Custom App Get Built?
A good build process has clear stages and clear handoffs. The eight-step process on the WebbyTroops app page is a useful model. Here it is, with what each step means for you.
- Discovery and goals. What problem are we solving, and how will we know it’s solved? This is where the “write it in one sentence” test pays off.
- Scope and architecture. What’s in, what’s out, and how will the pieces fit together? This is also where the custom-or-public decision gets locked in.
- UX and design with Polaris. How the screens look and flow, using Shopify’s own components.
- Development store setup. A safe test store, so nothing is built on your live shop.
- Build. The actual development.
- Test. Checking that it works, covered in more detail below.
- Launch. Moving it onto your live store.
- Support and API upgrades. The ongoing work from the versioning section above.
Any process you’re offered should cover the same ground. If a proposal jumps from “requirements” straight to “launch,” ask where testing and support went.
How Should a Shopify App Be Tested?
Test the whole buying journey, not just the new feature. Testing is where a lot of app projects quietly cut corners, so here are a few things you can ask for, in plain terms.
- Test the real buying journey. Not just the feature in isolation. Add to cart, check out, pay, receive the confirmation. If the app touches discounts or delivery, test those cases with realistic carts.
- Check what it does to speed. An app that adds weight to every page can cost you more than the feature is worth. If this concerns you, see this guide to Shopify speed optimisation.
For theme-related work, ask about Shopify’s Theme Check, an open-source linter for Liquid and JSON that catches syntax errors, unused variables, deprecated tags and performance issues.
Who Owns the Code?
That depends on your agreement, so ask before you sign. It’s boring until it isn’t. Imagine your developer disappears. What do you have?
Ask these things up front.
- Will you receive the source code?
- Will you receive documentation that a different developer could follow?
- What rights do you hold, and what rights does the developer keep? These are set by the agreement, so read it.
WebbyTroops says its clients receive source code and documentation, with rights set per agreement. That’s the kind of answer you want from anyone. If a developer is vague here, treat it as a warning, because it’s far easier to fix at the contract stage than after a falling out.
How Do You Scope and Brief an App Developer?
Write a one or two page brief covering six things. A good brief saves weeks.
The problem, in plain language. Describe what’s going wrong or missing today, and who it affects. Customers? Your support team? Your warehouse?
What success looks like. Something you can check. “Support stops handling these requests by hand” works. “Make it better” doesn’t.
What you’ve already tried. Apps you tested, settings you checked, and why they fell short.
Systems it must connect to. Your inventory tool, accounting software, shipping provider, CRM. List them, even the unglamorous ones.
Your Shopify plan. Remember the Plus rule for custom apps with Function APIs. Tell the developer which plan you’re on up front.
Who looks after it after launch. Name the person or team, so API upgrades don’t fall through the cracks.
When you start comparing teams, a good shopify web development company will push back on parts of your brief. That’s a good sign. If they agree with everything and ask no questions, they probably haven’t thought it through.
Existing App, Custom App or Public App: Which Fits?
Pick by who the app is for and how specific your rules are. Use this table as a rough guide. It’s not a rulebook, and your situation may sit between rows.
| Existing app | Custom app | Public app (you build it) | |
|---|---|---|---|
| Best for | Common needs many stores share | Rules or workflows specific to your store | A product you want to offer to many merchants |
| Who it serves | Many merchants | One store (or same-organization Plus stores, dev stores) | Many merchants through the App Store |
| Shopify approval | Usually already done by the app’s publisher | None | Required, plus a one-time registration fee |
| Billing | Usually handled by the publisher | Can’t use Shopify billing | Can use Shopify billing |
| Can distribution change later? | Not applicable | No | No |
| Watch out for | Features you may pay for but never use; possible extra weight on the store | Ongoing API upgrade work | Approval, plus billing, onboarding, privacy and listing support (WebbyTroops lists these as part of public-app work) |
A few quick rules of thumb.
- If many stores share your problem, an existing app probably exists. Check first.
- If the logic is specific to your business or your internal systems, a custom app starts to make sense.
- If you want to sell it to others, you’re starting a software product, with a different budget and timeline.
What Should You Ask Any App Developer?
Use this checklist. Print it, paste it into an email, or read it out on a call.
Before you commit
- ☐ Can you confirm whether an existing app or a Shopify setting could solve this?
- ☐ Is this a custom app or a public app, and why?
- ☐ Do I need Shopify Plus for any part of this, such as a custom app containing Function APIs?
How it’s built
- ☐ What are the steps in your process, and what do I review at each one?
- ☐ Will storefront features be delivered as theme app extensions, so I can manage them in the theme editor?
Quality and speed
- ☐ How do you test the full buying journey, not just the feature?
Ownership and support
- ☐ Will I receive the source code and documentation?
- ☐ What rights do I hold under the agreement?
- ☐ Who handles API version upgrades, and how often do you check?
Replacing old setups
- ☐ Does anything on my store still depend on Scripts or checkout.liquid, and how would you replace it?
Clear, quick answers are a good sign. Vague ones mean keep looking.
What Should You Do Next?
Write your requirement in one sentence, check the App Store and your admin settings, then ask two or three teams the checklist questions above. If you’d like a second opinion, WebbyTroops says it offers a free 30-minute strategy call, and a free recommendation on whether an existing app, a Shopify setting or a custom app fits your case. Bring your one-sentence requirement to either one.
Frequently asked questions
Do I need a custom app for my Shopify store?
Not always. Check for an existing app first, then look for a built-in Shopify setting. A custom app makes sense when those options are close but not close enough, or when the logic is specific to how you sell. Writing your requirement in one sentence, without tool names, helps you see which route fits.
What is the difference between a custom app and a public app?
A public app is built for many merchants, listed on the Shopify App Store, and needs Shopify approval and a one-time registration fee. It can use Shopify billing. A custom app is built for one store, or for stores in the same Plus organization or development stores. It needs no approval and can’t use Shopify billing.
Can I switch an app from custom to public later?
No. Shopify says the distribution method can’t be changed after you select it. If you build a custom app and later want to sell it to other merchants, you would start a new app. That’s why it’s worth deciding early whether you are solving your own problem or building a product.
Do I need Shopify Plus to use Shopify Functions?
Not always. Any Shopify plan can use public App Store apps that contain Functions. Only Plus stores can use custom apps that contain Function APIs. That doesn’t mean all custom apps need Plus, only those containing Function APIs. If you aren’t on Plus, check public apps first.
How often does Shopify release new API versions?
Shopify releases a new API version every three months, on the first day of each quarter, and names versions by date, such as 2026-04. Each stable version is supported for at least 12 months. If an app calls a retired version, requests fall back to the oldest stable version still accessible, which can change how the app behaves.
Key takeaways
- Check for an existing app and a built-in Shopify setting before paying for a custom build.
- Custom apps serve one store; public apps serve many merchants and need Shopify approval. Distribution can’t be changed after you choose it.
- Only Plus stores can use custom apps that contain Function APIs. Any plan can use public apps with Functions.
- Shopify Scripts were deprecated as of June 30, 2026, and Shopify points merchants to Functions.
- Shopify releases an API version every three months, so decide who handles upgrades before launch.
