WhollySoftware
Back to blogWeb

Progressive Web Apps: When They're a Genuine Alternative to Native

Wholly Software TeamOctober 14, 20256 min read
Progressive Web Apps: When They're a Genuine Alternative to Native

A logistics client came to us wanting a native driver app for route tracking and delivery confirmation, and after scoping the actual feature list — offline route caching, camera access for delivery photos, push notifications for new assignments, no App Store distribution needed since it's an internal tool — we recommended a PWA instead. None of those features required native APIs unavailable to a well-built PWA, and skipping App Store review cycles mattered for a tool that needed frequent updates during rollout.

The service worker did the heavy lifting for offline support, caching route data and map tiles when the driver has connectivity and queuing delivery confirmations locally when they don't, syncing automatically once the connection returns. Getting the caching strategy right took a few passes — an early version cached too aggressively and drivers were seeing stale route assignments, which we fixed by moving to a network-first strategy for route data specifically while keeping map tiles cache-first.

Push notifications on iOS were the real limiting factor, since iOS only added web push support in 16.4, and a meaningful chunk of the client's drivers were on older iOS versions at the time. We shipped with in-app polling as a fallback for those users rather than blocking the whole rollout on iOS web push maturity, and revisited it a year later once device upgrades brought the fallback population down to a manageable size.

For a different client building a consumer social app with heavy camera work, AR filters, and a need for App Store discoverability as a core acquisition channel, we recommended native from the start. A PWA can access the camera, but the level of camera control needed for real-time filters, plus the simple fact that App Store search is a primary user acquisition channel for consumer apps, made native the right call despite the higher build cost.

The deciding factors that actually matter are narrower than 'PWA vs native' debates usually suggest: does the app need App Store distribution for discovery, does it need deep native APIs beyond camera/geolocation/notifications, and is offline support a core requirement or a nice-to-have. Answer those three honestly and the choice is usually clear before any code gets written.

PWAMobile WebService Workers
Progressive Web Apps: When They're a Genuine Alternative to Native — Wholly Software