How it works
A PWA is a normal website plus two things: a web app manifest (a JSON file with the name, icons and colours) and a service worker that caches files and data so pages load without a connection. Served over HTTPS, it can be installed from the browser to the home screen or desktop, opens in its own window and, on most platforms, can receive push notifications.
Support varies by platform. Chrome and Edge on Android and desktop offer an install prompt; iPhones and iPads install through Share, then Add to Home Screen, and have supported web push for installed apps since iOS 16.4. A PWA can also be listed on Google Play as a Trusted Web Activity, or in the Microsoft Store. It cannot reach every device feature a native app can, such as some Bluetooth, background and widget abilities.
Progressive web app (PWA) pros and cons
Pros
- One codebase for web, Android, iOS and desktop
- No app store needed, and updates arrive instantly
- Works offline and on flaky connections
- Usually cheaper than building separate native apps
Cons
- Support on iPhone and iPad is more limited than on Android
- Less access to device features than native apps
- Harder to discover than a store listing unless published there too
When to use Progressive web app (PWA)
Pick it when
- Tools people return to often, such as booking or ordering apps
- Budgets that cannot stretch to separate native apps
- Field or shop-floor use with patchy internet
Skip it when
- The app depends on deep device features or long background work
- A store presence and a native look are central to the product
Progressive web app (PWA) vs the alternatives
- Native vs Flutter vs React Native vs Capacitor vs PWAFive ways to put an app on a phone, from fully native to a website installed from the browser. The trade-off runs between native polish and platform access on one side and one shared codebase on the other.
- Capacitor vs TWA vs PWAThree ways to turn a web app into something people install. They differ in which stores they reach and how much of the phone they can use.
Related terms
More in Rendering and architecture
App shapes