PWA or native app: which should you choose?
Choose a PWA when users should reach your product through a link and their tasks work in the target browsers. Consider a native app when a critical requirement needs device integration, background operation, or app-store distribution. At Appik Studio, Expo is our preferred approach to bringing web/PWA, iOS, and Android into one project. We have delivered this combination several times. React Native with Expo produces native mobile apps from a shared development foundation.
Decide from the journeys you need to deliver and the devices people use. Neither native nor PWA guarantees retention, security, or performance by itself.
Compare capabilities on the target devices
| Requirement | PWA | React Native with Expo | Swift / Kotlin |
|---|---|---|---|
| Access through a URL | Yes | Plan a web version | Separate web version |
| App-store distribution | Not directly; packaging and review may be needed | iOS/Android builds and review | iOS/Android builds and review |
| Notifications | Web Push depending on browser; specific conditions on iPhone | Native notifications, permissions, and setup | Native notifications, permissions, and setup |
| Offline use | Build caching, storage, and synchronization | Build storage and synchronization | Build storage and synchronization |
| Bluetooth / BLE | Limited browser support; unavailable in iOS Safari | Integrate a compatible library or native module | Platform APIs |
| Passkey sign-in | WebAuthn depending on device and browser | Integration required | Platform APIs |
| Background location | Heavily constrained by the browser | Subject to permissions and OS restrictions | Subject to permissions and OS restrictions |
| HealthKit / Health Connect | No equivalent direct access | Integrate and test native modules | Platform APIs |
| Shared development | Web codebase | Shared logic and components; platform adaptations | Usually separate iOS and Android interfaces |
Use this table to plan a technical prototype. Availability alone does not establish that a complete journey works reliably, handles denied permissions, or continues with a locked phone.
Do PWA notifications work on iPhone?
Yes. Since iOS and iPadOS 16.4, a web app added to the Home Screen can request notification permission following a user action. Test installation and consent with your audience. This does not make push available to every visitor in a Safari tab. WebKit explains the conditions.
Are Bluetooth and biometrics exclusive to native apps?
Not in every case. Web Bluetooth exists in some browsers with limited compatibility. For a BLE device that must work with both iPhone and Android, validate the connection on both systems before choosing web.
WebAuthn sign-in can use device authentication, including biometric verification. It does not expose biometric data to the website or grant access to every native capability.
What Expo shares and what needs adaptation
Expo uses React Native. A team can share business rules, API calls, validation, and some components across web, iOS, and Android. Navigation, keyboards, files, permissions, payments, and library support need platform-specific validation.
An existing website built with HTML elements and browser-only libraries does not automatically become a React Native app. Its backend and business rules may remain reusable while its screens need rewriting.
An Expo project is not automatically a PWA. Its web version needs configuration, including an installation manifest and a service-worker strategy for caching or offline behavior. The Expo PWA guide describes this setup. Useful offline operation also requires handling stale data and synchronization conflicts.
Search visibility and updates
PWA capabilities and rendering mode are separate choices. An installable website can serve prerendered HTML. Expo Router supports static rendering; its request-time server rendering is documented as alpha for SDK 55 and later at this revision. SSR is neither automatic nor required for every indexable page: accessible content, links, and metadata also matter.
EAS Update can deliver changes compatible with the installed native code. Changing that native layer requires a new build. Store rules still apply. PWA caching and the service-worker lifecycle can also delay the appearance of an update.
Three situations to guide the decision
A booking portal reached from an email. A responsive website, optionally installable, may cover the journey. Check payments, sign-in, and offline requirements before investing in the stores.
A field app connected to a Bluetooth device. Start with a connection test on real devices. Expo may suit the project with a compatible module; some features may need specific Swift or Kotlin development.
An established iOS and Android product. Expo may reduce duplicated implementation. Still budget for tests on both systems, store submissions, and future upgrades.
Why we favor Expo at Appik
We have repeatedly built Expo applications available on web/PWA and natively on iOS and Android. This experience lets us plan platforms together from the start: one team, shared business logic, and features evolving within the same project.
The practical benefit is launching on the web when it is the right channel, then extending mobile distribution without starting over. We can also release the platforms in parallel. Adaptations focus on what actually changes between browser and phone.
Le Pool and Fiduly are examples of our web/PWA work. For a product targeting multiple platforms, we recommend assessing Expo first, then validating the critical integrations.
How to compare budgets
Ask teams to price the same user journey in each approach, with equivalent quality requirements. Separate the shared foundation, iOS/Android/web adaptations, distribution, and maintenance. Screen count alone cannot make quotes comparable.
Our Swiss mobile app pricing guide provides indicative budget ranges. Use the quote comparison checklist to assess proposals. A universal savings percentage cannot replace this scoping work.
For a release in two stages, the PWA first, then native guide covers the decisions to make before migration.
Unsure about a critical capability? Tell us about the journey and target devices. Explore our mobile development and web development services.
