Shopify
Theme, app or Function? Where a Shopify change should live
Use the least code that does the job. Try a setting first, then the theme, then an existing app, then a custom app, and use a Function only when checkout logic really has to change. Each step down that list costs more to maintain.
By itmarkerz Technologies. Updated 30 October 2026.
The options, cheapest to maintain first
| Layer | Good for | Costs you | Limits |
|---|---|---|---|
| Admin settings | Shipping, tax, markets, basic discounts | Nothing but learning it | Only what Shopify offers |
| Theme | Anything customers see on the storefront, except parts of checkout | Merges when you update the theme | Can’t change how checkout calculates |
| Public app | Common needs: reviews, subscriptions, bundles | Monthly fee, and scripts that can slow pages | Their roadmap, not yours |
| Custom app | Your own integrations, admin screens and automation | Build and maintain it, and keep its API version current | API limits |
| Function | Rules in the cart and checkout: discounts, delivery, payment, validation | Build and maintain it; specialist skills | Custom ones need Plus; strict run limits |
Common requests, and where we would put them
| Request | Usually lives in | Why |
|---|---|---|
| Change the look of a product page | Theme | Display only, with no business logic |
| Show a delivery estimate | Theme, or an app if it needs a carrier | Check accuracy before you promise a date |
| Wholesale tiers by customer | Function on Plus, or a public app | Price logic must hold at checkout, not just on the page |
| Hide a payment method for some orders | Function (payment customization) | A theme can’t enforce this |
| Stop an order under a minimum | Function (validation) | Client-side checks can be bypassed |
| Send orders to your ERP | Custom app, or a connector | A server-side integration job |
| Staff screen for approving something | Custom app | Runs outside the storefront |
| Product filters and search | Theme settings and a Shopify or public app | Common enough not to build |
The rule behind the table is that if it must be true, not just look true, it can’t live only in the theme. Code in a theme runs in the customer’s browser, so a minimum order enforced only by a disabled button isn’t really enforced.
Questions before you approve any code
- Does Shopify do this now? The platform moves fast, so a custom build from two years ago may have a native replacement.
- What does this cost in year three? A cheap custom feature still needs updates. Five small apps at a monthly fee add up, too.
- What does it do to page speed? Each app can add scripts to your storefront. Measure before and after.
- What happens during your biggest sale? Check any app or API in the order path under load, and find out what fails if it goes down.
- What happens if you uninstall it? Some apps leave code in your theme behind them, so ask how clean-up works.
Where to read next
For checkout rules, see Functions now that Scripts have gone. For a server-side integration, see the Shopify ERP integration guide. Our Shopify service page covers how we work on stores.
Questions
What is a custom app, and how do we get one?
It is an app made for one store, and it isn't listed on the App Store. Shopify says you now create and manage custom apps in the Dev Dashboard. Legacy custom apps made before January 1, 2026 are still managed from the Shopify admin.
Who should own the app and theme?
Your business should. Keep the store's admin and the developer access under accounts you control, and keep the theme code in a repository you can reach. Ask about this before work starts with any supplier.
More on Shopify
- Shopify ERP integration: what to sync, in which direction, and what breaksA field-level sync table, current API limits and the failure cases to plan for.
- Moving to Shopify: a migration checklist that protects your URLsThe import order, redirect rules and traps from Shopify's own documentation.
- Shopify Functions now that Scripts have goneWhich Function API replaces what, the limits, and who can run custom ones.
Have a list of Shopify changes?
Send us the list, your store's address and your plan. We will tell you where each change should live, and whether it needs Plus.
We reply within one business day (IST).