The cost gap is structural

A native app means two platforms, store review cycles, forced upgrade paths, and users running versions from a year ago. None of that applies to a website, where everyone is on today’s version the moment you deploy.

Condition 1: you need device capabilities

Reliable background location, offline-first operation, hardware access, or deep integration with the operating system. If your feature genuinely requires one of these, an app is the only route.

“Our customers are on their phones” is an argument for a good mobile site, not an app.

Condition 2: genuine repeat daily use

Apps earn their place through habit — an icon on a home screen for something used most days. A service people touch monthly does not justify asking them to install anything, and the install itself becomes the drop-off point.

Condition 3: notifications are the product

If timely alerts are core rather than incidental, apps still hold an advantage. But be honest about whether they are core, because most notification systems are already too noisy to be valued.

Otherwise, fix the mobile site

The money that would go into an app usually buys a dramatically better mobile experience for everyone rather than a good one for the few who installed it — and most mobile problems are interaction failures, not layout ones.

The maintenance is the real commitment

An app requires ongoing work to keep functioning as operating systems change, whether or not you add features. Committing to it without budgeting that is how apps end up unowned and slowly decaying.