Skip to main content
Back to blog
mobile

PWA or native app: why we use Expo

By ···6 min read
Two ivory frames, one horizontal and one vertical, overlap around shared components on a dark teal background.

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

RequirementPWAReact Native with ExpoSwift / Kotlin
Access through a URLYesPlan a web versionSeparate web version
App-store distributionNot directly; packaging and review may be needediOS/Android builds and reviewiOS/Android builds and review
NotificationsWeb Push depending on browser; specific conditions on iPhoneNative notifications, permissions, and setupNative notifications, permissions, and setup
Offline useBuild caching, storage, and synchronizationBuild storage and synchronizationBuild storage and synchronization
Bluetooth / BLELimited browser support; unavailable in iOS SafariIntegrate a compatible library or native modulePlatform APIs
Passkey sign-inWebAuthn depending on device and browserIntegration requiredPlatform APIs
Background locationHeavily constrained by the browserSubject to permissions and OS restrictionsSubject to permissions and OS restrictions
HealthKit / Health ConnectNo equivalent direct accessIntegrate and test native modulesPlatform APIs
Shared developmentWeb codebaseShared logic and components; platform adaptationsUsually 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.

Sources and references

Back to blogGaspard Chevassus · CEO, Appik Studio