Before you shortlist anyone, settle one fork: are you building a custom app for your own store, or a public app you list on the Shopify App Store for other merchants to install? They share a platform and almost nothing else. A custom app solves one store's problem against data and a theme you control. A public app is a software product that has to install cleanly on stores you'll never see, pass Shopify's review, bill money reliably, and support strangers. Hire the wrong kind of company for the job and you'll pay for it twice.
A good Shopify app development company is judged on the parts a demo never shows: surviving App Store review, billing through Shopify's Billing API, processing webhooks that arrive late or twice, keeping the storefront fast, and handling GDPR. This is the buyer's guide to telling a shop that ships one from a template mill that hands you a working demo and a support ticket. If you mainly want a price, we broke that down in how much a Shopify app costs to build; this piece is about who you trust to build it.
Custom app vs public app: two different companies
The distinction decides everything downstream, including who you should hire.
| Custom / private app | Public App Store app | |
|---|---|---|
| Built for | One store or organisation | Any store that installs it |
| App Store review | None | Mandatory, iterative, gated |
| Billing | Optional / internal | Shopify Billing API required for most charges |
| GDPR webhooks | Limited scope | Mandatory data-request/erasure handlers |
| Hardest part | Integrating with your systems | Coping with every store on the platform |
Same platform, different projects. Match the company to the one you actually need.
What a good Shopify company actually delivers
The visible features are the commodity. Here is the invisible work that separates a company that has shipped real Shopify apps from one that has only built demos.
- App Store review — a public app has to pass Shopify's review of functionality, performance, OAuth and the permission flow. It takes iterations, each with a queue wait, and a rejection sends you back to fix and resubmit. A company that has been through it scopes for the calendar time, not just the code.
- The Billing API — if a public app charges money, Shopify requires billing through its Billing API for most cases, not a bolted-on Stripe. That means building against recurring charges, usage charges, trials, and plan changes, and handling every state each can be in. It's mandatory, and it has to be right because it's money.
- Webhooks that survive reality — orders and updates arrive out of order, twice, or not at all. Idempotent handlers, a retry and reconciliation strategy, and verified webhook HMAC signatures are the difference between an app merchants trust and one that silently drifts out of sync with the store.
- Storefront performance — anything that injects into the theme affects Core Web Vitals and, on checkout, the merchant's conversion. A serious company uses theme app extensions and app blocks instead of dumping script tags, and treats a slow storefront as a bug, not a tradeoff.
- GDPR compliance — every public app must implement Shopify's mandatory compliance webhooks: customer data request, customer redact, and shop redact. Skipping them isn't optional; it's a review failure and a legal exposure.
Freelancer vs agency vs Shopify specialist
Once you know which app you're building, the next question is who builds it. Here's the honest trade-off.
| Option | Typical cost | Reliability | Best for | Main risk |
|---|---|---|---|---|
| Freelancer | ~$30–$120+/hr, wide spread | Varies wildly by who you get | A bounded custom app or a fix | Bus factor of one; nails the demo, not the review, billing, or edge cases |
| Generalist agency | $$–$$$ | Good code, shallow Shopify depth | Teams wanting process and a warranty | Learns Shopify's review and Billing API on your budget |
| Shopify specialist (e.g. Duskel) | Custom from ~$3k; public far higher | High — has shipped past review and billing | Public apps and anything touching billing or webhooks | Costs more per hour than a freelancer |
What a Shopify app costs, roughly
Pricing follows the same fork. A custom app is contained and cheap; a public app is a software business and priced like one. These are indicative 2026 ranges — the full cost breakdown lives here.
| App type | Complexity | Rough cost | Timeline |
|---|---|---|---|
| Custom / private | Simple connector | from ~$3k | 2–4 weeks |
| Custom / private | Medium (own back end, sync) | ~$8k–$20k | 4–10 weeks |
| Public App Store | Simple / narrow | ~$20k–$40k | 2–4 months |
| Public App Store | Medium (billing, onboarding, support) | ~$40k–$80k | 3–6 months |
| Public App Store | Complex (real-time, multi-store, high volume) | $80k–$150k+ | 6 months+ |
Indicative build ranges. The wide public range is honest — it depends almost entirely on how much back end sits behind the app.
Red flags when vetting a Shopify company
Skip the portfolio screenshots — anyone can show a clean admin UI. Watch for these instead.
- Quotes a public app before asking custom-vs-public. If they price it without settling that fork, they don't understand what drives Shopify cost.
- Vague on App Store review. A shop that has shipped public apps can tell you what review checks, how many rounds it usually takes, and what most gets rejected for. A vague answer means they haven't been through it.
- Wants to bolt on Stripe for a public app. That's a review failure. If they don't reach for the Billing API automatically, they haven't shipped a paid public app.
- No mention of the mandatory GDPR compliance webhooks. Their absence is a guaranteed rejection they haven't planned for.
- Injects script tags into the theme instead of theme app extensions — it'll wreck Core Web Vitals and age badly against Shopify's own guidance.
- No plan for duplicate or missed webhooks. "We'll just call the API" means the app drifts out of sync the first busy day.
Why Duskel
Shopify apps are one of those things where the demo and the product are almost different disciplines. Anyone can wire the Admin API to a screen and make it work once. Making it pass review, bill reliably, stay in sync when webhooks misbehave, and keep a busy merchant's storefront fast is the actual job — and it's invisible until it's missing.
We build production software and run our own products, so we've met these failure modes ourselves rather than reading about them. We'll tell you straight when a custom app beats a public one, scope the review and Billing API work honestly instead of discovering it mid-project, and build webhook handling that survives a real store's traffic. No fabricated case studies — just the engineering judgement that keeps a Shopify app from becoming a support ticket. If you want a straight quote, private or public, tell us what you're building and we'll scope it.