What is a PWA, and when to choose it over a native app
A progressive web app runs on Android, iOS and desktop from one codebase, installs like an app and updates without an app store. Here is what PWAs are good for, and where you still need native.
When people say "app", most managers picture two separate projects: one for Android, one for iPhone. For a large share of products there is a simpler route: the progressive web app.
A PWA in plain terms
A PWA is a website that behaves like an app. The user opens it in a browser and can install it to the home screen or desktop. Once installed it has its own icon, opens without browser chrome and can send notifications.
Three technical pieces make it work:
- Manifest: a file that tells the operating system the app's name, icon and colours.
- Service worker: code that runs in the background and enables caching, offline use and push.
- HTTPS: without a secure connection, none of it works.
The real benefits
- One codebase, every platform. Android, iOS and desktop from a single project, with far lower build and maintenance cost.
- No app store. A user opens a link and is inside the product. No download, no review queue.
- Instant updates. A new version reaches everyone as soon as it is deployed.
- Searchable. PWA pages appear in search engines; native apps don't have that.
- Small footprint. It matters to users with limited storage or data.
For the Iranian market there is one more: releasing the product doesn't depend on app stores being available.
The limits you should know
PWAs don't fit everything. Honestly, here is where:
- Deep hardware access. Advanced Bluetooth, special sensors and heavy background processing are still better native.
- Notifications on iOS. Apple enables web push only for a PWA that has been added to the home screen, so you must guide users through that step.
- Games and heavy graphics. Native or a game engine is the right choice.
- Store presence. If discovery depends on app store search, a PWA alone isn't enough.
When a PWA is the right call
| Situation | Recommendation |
|---|---|
| Content, forms, dashboards, commerce | PWA |
| A first version with limited time and budget | PWA |
| Mobile and desktop at the same time | PWA |
| Heavy reliance on device hardware | Native |
| Games or intensive graphics | Native |
A real example
Rahro is built as a PWA: a Persian relationship-wellbeing app with an AI coach, a mood tracker and a shared space for couples. The same code runs on Android, iOS and desktop, which kept releases and updates simple and independent of app stores.
What decides PWA quality
Being installable isn't enough. A good PWA is fast, survives a weak network and feels like an app. Speed is measured with Core Web Vitals; for Persian interfaces, right-to-left done properly matters just as much.
The takeaway
A PWA doesn't replace every app, but for most business products it is the best starting point: cheaper, faster and free of store dependencies. The choice should follow the product's real needs, not habit.
To ship on mobile and web together, see digital product build.