Opening: spent NT$600K on an app, got 200 downloads
A home-cleaning SMB owner, after one vendor's pitch, decided to build a dual-platform native app — about NT$600K, five months of work. Six months post-launch: 200 downloads, 40 monthly actives — because his customers book cleaning 2-3 times a year, and nobody installs an app for that. The problem wasn't execution; it was choosing the wrong vehicle from day one. For 90% of SMBs, the real question behind "should I build an app?" is "do I need the app's shell, or the app's capabilities?"
Where it fits × where it doesn't
Good fit for a native app (Flutter / dual-platform):
- Needs heavy device capabilities: push, Bluetooth, real-time camera recognition, background location, offline-first.
- High usage frequency, lives on the home screen (daily/weekly use).
- Needs app-store presence as trust or a distribution channel.
Poor fit for native — responsive web or PWA is better:
- Used a handful of times a year (booking, lookup, one-off service).
- Traffic comes mainly from Google search and needs indexing.
- Limited budget, fast market validation needed.
- Frequently updated content; you don't want store review each time.
Alternatives matrix
| Option | Pros | Cons | Cost band |
|---|---|---|---|
| Responsive website (RWD) | Best SEO, fastest launch, instant updates | No push (iOS limits), can't be in stores | NT$80K-300K |
| PWA (progressive web app) | Add to home screen, offline, single codebase, indexable | iOS push & integration still weaker than native | NT$150K-400K |
| Native/cross-platform app (Flutter) | Fullest device capability, store channel, best UX | Highest cost, store review, dual-platform upkeep | NT$400K-1.5M |
The sweet spot for most SMBs: "responsive website as the base + upgrade to PWA when needed," reserving native for when device capability or usage frequency truly justifies it.
Full process breakdown (with tools and deliverables)
- Phase 1 (week 1) requirements & vehicle decision: a decision tree clarifying "device capability × usage frequency × channel need." Deliverable: vehicle recommendation + scope list (tools: Notion/FigJam).
- Phase 2 (weeks 2-3) design & prototype: information architecture, wireframes, clickable prototype. Deliverable: Figma prototype + design spec.
- Phase 3 (weeks 4-8) development: RWD/PWA on Laravel + a frontend framework; app on Flutter. Deliverable: testable build, Service Worker (PWA), push config.
- Phase 4 (week 9) testing & launch: cross-device testing, Core Web Vitals tuning, (app) store submission. Deliverable: acceptance report + launch.
Full cost breakdown
- Design: NT$50K-150K (by page count and interaction complexity).
- Development: RWD NT$80K-250K / PWA NT$150K-400K / dual-platform app from NT$400K.
- Hidden fees: Apple Developer account US$99/yr, Google Play one-time US$25; push services, SSL (mostly free via Let's Encrypt), CDN, third-party APIs; store-review round-trip hours; ~15-20% of dev cost per year for maintenance after launch.
- Payments (if any): ECPay ~2.8%, Stripe ~3.4% + fees.
Implementation truth vs client imagination
- Clients think "having an app looks more professional"; in reality, "an app nobody uses" hurts trust more than a good website.
- Clients think "build an app and customers will return"; in reality, retention comes from service and remarketing, not an icon on the home screen.
- Clients think "a PWA is a cheap app"; in reality, for most low-frequency services, a PWA matches conversion and retention at a fraction of the cost.
Common traps × how to avoid
- Building native just to be in stores → ask "do capability or frequency justify it" first; if not, skip native.
- Taking iOS push for granted → iOS limits PWA push; if push is critical, evaluate native.
- Sacrificing SEO → for search-driven businesses, web/PWA first; don't lock content inside an app.
- Doing it all at once → validate with RWD first, then decide whether to upgrade.
- Ignoring maintenance → write the annual 15-20% maintenance budget into the contract upfront.
Success metrics + 90-day post-launch roadmap
- 30 days: cross-device usability, Core Web Vitals (LCP < 2.5s), install / add-to-home-screen rate.
- 60 days: core task completion rate, bounce rate, (PWA) offline return visits.
- 90 days: conversion, return rate, per-channel CAC; decide whether to upgrade to native.
Decision checklist
- ☐ Do my customers use the service ≥ 12 times a year?
- ☐ Do I need device capabilities like push, Bluetooth, camera, or offline?
- ☐ Does my main traffic come from Google search?
- ☐ Do I need an app-store channel as a trust front?
- ☐ Does my content update frequently?
- ☐ Can I afford 15-20% annual maintenance?
- ☐ Am I willing to validate with RWD/PWA before upgrading?
FAQ
Can a PWA really replace an app?
For "low-to-mid frequency, search-driven" services, usually yes. A PWA can be added to the home screen, works offline, uses a single codebase, and is indexable. But if you rely heavily on iOS push or deep device capabilities like Bluetooth, native is more solid.
How much does building an app cost?
Responsive website ~NT$80K-250K, PWA ~NT$150K-400K, dual-platform native app from ~NT$400K. Don't forget 15-20% of dev cost per year for maintenance, plus hidden fees like store accounts, push, and payment processing.
I already have a website — should I also build an app?
Look at the data first: if mobile web conversion is decent and usage frequency is low, upgrading to a PWA is usually the best value. Spending budget on retention and remarketing often beats building another native app.
Can one Flutter codebase ship both platforms?
Yes — a single Flutter codebase produces both iOS and Android apps, saving you from building twice. But each platform still needs its own store review and handling of store rules and device differences.
Call to action
Not sure which to build? We offer a free 30-minute "vehicle decision" consult — a decision tree to clarify "website / PWA / app" in one sitting, with matching scope and price bands.
- Email: [email protected]
- Phone: 0916-224-047
- LINE: LINE: @ufv9089p