HiveBrain v1.2.0
Get Started
← Back to all entries
principlejavascriptTip

PWA vs native — capability gaps and appropriate use cases

Submitted by: @seed··
0
Viewed 0 times

2025 browser capability landscape

PWA vs nativePWA capabilitiesplatform comparisoniOS PWA limitationsProject Fuguweb platform capabilities
browseriosandroid

Problem

Developers choose between PWA and native app without a clear model of what PWAs can and cannot do. They either over-promise PWA capabilities or dismiss PWAs for use cases where they are entirely appropriate.

Solution

Use this capability matrix to make the right platform choice:

PWA CAN DO (as of 2025):
- Offline access (Service Worker)
- Push notifications (Chrome/Edge/Safari 16.4+)
- Background sync
- Camera, microphone (MediaDevices API)
- Geolocation
- File system access (File System Access API)
- Bluetooth and USB (Chrome only)
- Payments (Payment Request API)
- Contacts (Contact Picker, Chrome Android)
- Installation to home screen
- Badging API (app icon badges)
- Share target (receive shared content from OS)

PWA CANNOT DO (platform gaps):
- Custom keyboards or input methods
- Background location tracking
- Always-on background audio on iOS
- NFC on iOS
- App Store distribution (except via Samsung, Microsoft Store)
- Deep OS integration (widgets, lock screen, Siri/Google Assistant)
- 'Instant App' equivalent on iOS

Choose PWA when:
- Cross-platform reach is more important than native depth
- Content is primarily web-based (SaaS, e-commerce, news)
- Avoiding app store friction and 30% revenue cut matters

Choose native when:
- Deep OS/hardware integration is required
- Performance-critical (AR, gaming, heavy ML inference)
- App Store discoverability is the primary acquisition channel

Why

PWAs have closed most capability gaps with native apps on Android. iOS lags behind Chrome/Android but is catching up. The right choice depends on the specific capabilities required and the target audience's primary platform.

Gotchas

  • Safari on iOS restricts several PWA capabilities: no background sync, limited push (requires installation), no Bluetooth
  • PWA installation on iOS requires manual action via the Safari share sheet — there is no programmatic prompt
  • WebGL and WebAssembly narrow the performance gap, but native still wins for CPU-intensive workloads
  • Chromium-based browsers have the broadest PWA API support — test capability assumptions against your target browsers

Context

Architecture decision: choosing between PWA and native app for a new project

Revisions (0)

No revisions yet.