How to build a Shopify app: a practical guide for ecommerce brands
When the Shopify App Store doesn't have what you need, the answer is often a custom Shopify app. We build them for clients every month - usually to automate operations, integrate proprietary systems, or unlock merchandising logic that off-the-shelf apps can't handle.
This is a practical, operator-led guide to what's actually involved.
When You Should Build a Custom Shopify App
Not every problem needs a custom app. Build one when:
- No app in the App Store solves your problem. Or the closest options force compromises that cost real revenue. - You need deep integration with internal systems. ERPs, custom OMS, proprietary pricing engines, B2B portals. - You need merchandising logic the platform doesn't expose. Custom bundle pricing, dynamic gating, regional inventory rules. - App fees at your scale exceed build cost. Some apps charge GMV-based pricing that becomes unjustifiable past a certain volume. - You need to own the data and the roadmap. Strategic capability you can't outsource.
If you're solving a generic problem - reviews, loyalty, basic upsells - install a proven app. Don't build.
Public App vs Custom App
Two flavors, very different scopes.
Custom App (recommended for most brands) Installed on a single store. No App Store listing, no Shopify review process, no billing API. Faster to build, easier to maintain, fully owned by you. This is what most "custom Shopify app" projects actually are.
Public App Distributed in the Shopify App Store. Multi-tenant, requires Shopify's app review, must implement billing, must handle GDPR webhooks, scaled support. Build a public app only if you're starting an app business - not because you need internal tooling.
What's Actually Involved
A typical custom Shopify app includes:
1. Authentication & permissions - OAuth or admin-generated access tokens, scoped to the minimum APIs you need. 2. Backend service - Node, Python, or whatever your team supports. Hosted on Vercel, Digital Ocean, AWS, or your existing infrastructure. 3. API integration - Shopify Admin GraphQL, Storefront API, and webhooks for events you care about (orders, inventory, customer changes). 4. Embedded admin UI (optional) - Built with Shopify Polaris and App Bridge if merchants need a UI inside Shopify admin. Skip if it's a pure backend service. 5. Storefront extensions (optional) - Theme app extensions, checkout extensions, or function extensions for on-store behavior. 6. Webhooks & background jobs - Reliable processing for high-volume events. Don't trust a single webhook delivery; queue and retry. 7. Observability - Logging, error tracking, metrics. Custom apps fail silently if you don't instrument them.
The Tech Stack We Default To
For most custom Shopify apps we build:
- Backend: Node.js with TypeScript, or Python where the client's team prefers it - Framework: React Router (the successor to Remix) or Next.js for embedded admin UIs (Shopify's current app templates ship with React Router) - APIs: Shopify Admin GraphQL (REST is being deprecated for new apps) - UI: Shopify Polaris + App Bridge for embedded admin - Hosting: Vercel, Digital Ocean, or the client's existing cloud - Database: Postgres for relational data, Redis for queues and caching - Auth: Shopify OAuth for embedded apps; admin access tokens for pure backend integrations
Getting Started: Shopify CLI, a Dev Store, and Your First App
If you're a store owner or developer creating an app for the first time, the workflow starts in your Shopify Partner account. Spin up a free development store to test against, then use the Shopify CLI to scaffold the project. Running `shopify app dev` builds the app, opens a tunnel, and lets you open your app inside Shopify admin in minutes. Shopify's current templates ship with React Router, so the embedded admin UI and routing are wired up before you write a line of business logic.
From there it's mostly Shopify API work. Query the Admin GraphQL API for the data you need, subscribe to the webhooks that matter, and request only the access scopes the app actually uses. The CLI handles OAuth, environment variables, and deploy config, so your time goes to integration logic instead of boilerplate.
How Long It Takes
Rough timelines from our build experience:
- Simple custom app (single integration, no UI): 2-4 weeks - Mid-complexity app (embedded admin UI, webhooks, basic merchandising logic): 4-8 weeks - Complex app (multi-system integration, storefront extensions, advanced workflows): 8-16 weeks - Public App for the Shopify App Store (with billing, App Store review, multi-tenant infra): 12-24 weeks minimum
How Much It Costs
Custom Shopify app builds typically range:
- $15,000 - $30,000 for a simple, single-purpose internal app - $30,000 - $75,000 for a mid-complexity embedded admin app - $75,000+ for complex multi-system integrations or public Shopify App Store launches
These ranges are for production-ready builds with proper architecture, testing, and documentation - not weekend prototypes.
What Goes Wrong
The most common failure modes we see when brands try to build apps without experienced help:
1. Webhook reliability ignored. Apps that lose data when Shopify retries or rate limits. 2. Scope creep. A "small integration" turns into a 6-month rebuild because requirements weren't pressure-tested. 3. No observability. Failures discovered weeks later by accident. 4. Tight coupling to admin UI. Hard to change later when the underlying logic was right. 5. Ignoring rate limits and API cost. Shopify GraphQL is metered. Naive queries get throttled fast.
What DYODE Brings
We've built dozens of custom Shopify apps for ecommerce brands. We architect for reliability and ownership, not for a quick win that breaks at scale. Every build includes proper webhook handling, observability, documentation, and a hand-off so your team can maintain it.
If you're evaluating whether to build a custom Shopify app - or if you've started one and it's gone sideways - get in touch. We'll give you an honest read on whether to build, buy, or stitch together what already exists.
Learn more about our custom Shopify app development services or book a strategy call.