Shopify
When a Shopify store needs a custom app instead of another plugin
By Amad Zahid, Founder & CEO · · 8 min read
A Shopify store needs a custom app when a rule specific to your business has to run inside Shopify, and no App Store app, theme setting or Shopify Flow automation can express that rule. If one existing app covers the job, install it. If you pay for several apps that each cover part of the job and your team still fixes orders by hand, ask a developer to quote for custom Shopify app development.
Public apps and custom apps are different products
Shopify developers build two kinds of app. A public app serves many merchants. Its developer lists it in the Shopify App Store after Shopify reviews it, and can charge you through your Shopify bill. A custom app serves one store, or several stores inside one Plus organization. It has no App Store listing and skips App Store review, the developer cannot bill you through Shopify, and you install it from a link the developer sends you.
Price is the obvious difference between a custom app and a public one, and it depends on the build, so get a written quote. I would look at two other differences first.
The first is the roadmap. A public app's developer decides which features come next, and your request sits in a queue with requests from every other store that uses the app. With a custom app, you set the priorities.
The second is responsibility. A public app's developer hosts the app, patches it and keeps it compatible with Shopify's platform changes. With a custom app, you or your developer carry that work.
Check what Shopify can do before you add code
Shopify Flow
Flow is Shopify's automation tool. You pick a trigger, add conditions and choose actions. Flow can tag an order that matches a rule, tag a customer after a second purchase, or message your team when a product's stock drops below a threshold.
Flow reacts after an event happens. It cannot change a price in the cart or decide which shipping options a shopper sees. Shopify offers Flow as a free app on most plans, but some actions depend on the plan, so check Shopify's pricing page for yours.
Themes and theme app extensions
Check your theme before you search the App Store. Metafields and metaobjects let you store structured data, such as an ingredient list or a vehicle compatibility table, and show it on product pages through the theme editor, with no app involved.
Before you install any app that adds something to your storefront, check whether it uses a theme app extension. An app that uses a theme app extension adds its widget as a block you place in the theme editor. The app leaves your theme files alone, and the block disappears when you uninstall the app. Older apps that edit theme code can leave snippets behind after you remove them. Ask the app's support team which method they use.
What a stack of subscriptions costs you
You see the first cost on your bill. Many apps price by plan tier or by order volume, so the total climbs as your store grows.
Your shoppers pay the second cost. An app that shows anything on the storefront often loads its own JavaScript and CSS on your pages. Each extra app can add another set, and phones on mobile connections take the hit first. Run a browser performance test on a product page to see which scripts load and which app each one belongs to.
The third cost is conflict. Two apps that both rewrite the cart, or both change prices, can produce results neither developer tested.
List every installed app with its job, its monthly fee and whether it loads on the storefront. Remove the ones nobody uses.
Shopify Functions, checkout and when you need Plus
Shopify Functions let a developer write logic that Shopify runs on its own servers during cart and checkout. A Function can calculate a discount, hide or rename a delivery option, hide a payment method, or block a checkout that breaks a rule you set. Functions are Shopify's replacement for the older Shopify Scripts, which Shopify has shut down. A store that relied on Scripts now needs Functions for the same rules. Shopify's Functions documentation lists the current types.
Your plan decides who can write that logic for you. A public app that contains Functions works on any Shopify plan. A custom app that contains Functions requires Shopify Plus. A store on a standard plan that wants its own discount logic has two routes: find a public app that fits, or move to Plus.
Checkout screens follow a similar split. Checkout UI extensions add fields, messages and offers to the checkout. Shopify limits extensions on the information, shipping and payment steps to Plus stores. Shopify does not apply that Plus limit to extensions on the thank-you and order status pages. Shopify has changed these limits before, so confirm them in the checkout extensions documentation before you budget.
| Your need | Start with |
|---|---|
| Tag, notify or route after an order | Shopify Flow |
| Show extra product data or a new layout | Theme sections and metafields |
| A common feature such as reviews or fixed bundles | An App Store app |
| Your own discount, shipping or payment rule | A public app with Functions, or a custom app on Plus |
| Custom fields or content inside checkout steps | Checkout UI extensions on Plus |
| Sync with your ERP, supplier feed or internal tool | A custom app |
Two examples
Both stores below are hypothetical.
A skin care brand with routine bundles
The brand sells a cleanser, a serum and a moisturizer, and wants to sell them as a routine. For a fixed bundle with one price, Shopify's own Bundles app or an App Store bundle app does the job. Shopify's app counts bundle stock from the component products, and it has eligibility rules and limits, so read its help page before you rely on it.
The custom case starts when the rule gets specific. Say the shopper picks a skin type, the routine swaps the serum to match, and the discount applies only when all three steps sit in the cart. If no public app handles that swap, a developer can build it with a Function, and the brand needs Plus for a custom app that contains one. The emails that follow the purchase are a separate job; I cover them in Klaviyo flows for skin care brands.
An auto parts store with fitment lookup
The store sells thousands of parts, and a shopper needs to know whether a brake pad fits a given year, make and model. Public fitment apps exist, and a store with a small catalog and a clean spreadsheet should try one first.
A custom app makes sense when the fitment data lives in a supplier feed or an ERP that changes every week. The app imports the feed on a schedule, stores fitment against each product and serves the lookup to the storefront through a theme app extension. That design uses no Functions, so it does not depend on Plus.
Who owns, hosts and maintains a custom app
A custom app is software you own, and it comes with three duties.
- Ownership. The code should live in a repository under your account, and the app should sit in your Shopify organization. Put both in the contract.
- Hosting. Functions and extensions run on Shopify. An app with its own backend, such as the fitment importer above, runs on a server you pay for each month.
- Maintenance. Shopify releases new API versions on a schedule and retires old ones. Someone has to update the app before a version it depends on expires.
Ask a developer these questions before you sign:
- Which parts run on Shopify and which run on a server I pay for?
- Does any part require Shopify Plus?
- Who updates the app when Shopify retires an API version, and at what cost?
- Can another developer take over the code without you?
When a custom app is the wrong call
- An App Store app covers the need and you can live with its gaps.
- You are still testing whether the feature earns money. Rent an app, measure, then decide.
- Nobody will maintain the app after launch.
- The pain comes from the theme or the platform. A slow, tangled store may need the work I describe in website revamp or rebuild before any app.
A short checklist
- Write the rule in one sentence.
- Test the rule against Flow and your theme.
- Search the App Store for one app that covers it.
- Check whether the rule touches discounts, shipping, payments or checkout steps. If it does, check your plan.
- If steps 2 and 3 fail, ask for a custom app quote that includes hosting and maintenance.
What devinsta does here
We at devinsta build custom and public apps through our Shopify app development service. Stores on Plus, or stores weighing the move, can look at Shopify Plus development and custom checkout and extensions.
We work in two-week sprints with a demo each week, and you own the code and the accounts.
If you want a second opinion on your app stack first, request a free site audit. You get a written report within five working days. To talk through one specific rule, book a free 30-minute strategy call. I will tell you if an App Store app is the better answer.
Common questions
Is a custom Shopify app the same as a private app?
"Private app" is Shopify's older name for an app built for one store. Shopify retired that label and now calls these custom apps. If a developer quotes you for a private app, ask them to confirm they mean a custom app.
Do I need Shopify Plus for a custom app?
No. A custom app that reads and writes store data, syncs with other systems or adds a theme app extension runs on standard plans. You need Plus when the custom app contains Shopify Functions or adds extensions to the information, shipping or payment steps of checkout.
Can a custom app replace several App Store apps?
It can when those apps each cover a slice of one workflow. A developer can fold that workflow into one app with one set of storefront scripts. Keep mature public apps for standard jobs such as reviews or email, because rebuilding them costs more than renting them.