Short answer
Choose a web app (or a PWA, a web app that installs on the home screen) if your users work mostly on a computer or use it occasionally, if you want to be found on Google, and if you do not need Bluetooth, NFC or background tasks on iPhone. Choose a mobile app published on the App Store and Google Play if people use it often on their phone, if notifications must reach every iPhone user without any setup on their part, or if you need the device hardware. In 2026, Safari on iPhone supports notifications from a PWA only since iOS 16.4 and only once the app has been added to the Home Screen; it still offers no Bluetooth, no NFC and no automatic install prompt. This guide gives a five-question test, a feature-by-feature comparison, the app store rules and the mistakes to avoid.
The short answer: a five-question test
Answer these five questions in order. Each answer that points to a mobile app is a serious argument for one; if none does, a web app is almost always enough, and it costs less to build and maintain.
| Question | If yes | Why |
|---|---|---|
| Do users come back several times a week, on their phone, for the same task? | Lean mobile | A home-screen icon and reliable notifications justify the cost of the stores. |
| Do you need Bluetooth, NFC, background tasks or continuous location? | Mobile (React Native or native) | Safari on iPhone supports neither Web Bluetooth, Web NFC nor background sync. |
| Are notifications the core of the service, for every iPhone customer? | Mobile | A PWA can only notify an iPhone after the user adds it to the Home Screen themselves. |
| Do users mostly work on a computer, or arrive from Google? | Web | A web app opens anywhere from a link, and its public pages can be indexed. |
| Do you sell digital content (subscriptions, courses, paid features)? | Weigh the fees | In-app sales of digital goods go through Apple’s in-app purchase, with a commission; on the web you use your own payment processor. |
The test targets business apps (client portals, ordering, booking, field tools, platforms). Games and apps built around real-time camera use almost always belong on mobile.
The four options in plain terms
A web app is software that runs in the browser: a client portal, a dashboard, a booking platform. Built mobile-first, it works on desktop and phone alike.
A PWA (progressive web app) is a web app with a manifest and a service worker: it can be installed on the home screen, open without the browser bar, work partly offline and, depending on the device, send notifications.
A cross-platform app (React Native, Flutter) produces a real iOS app and a real Android app from one codebase, published on both stores.
A native app is written separately for each platform: Swift for iOS, Kotlin for Android. Two codebases, so much of the work and maintenance is paid twice.
| Criterion | Web app | PWA | Cross-platform (React Native, Flutter) | Native (Swift, Kotlin) |
|---|---|---|---|---|
| Codebases | One | One | One | Two |
| Installation | None, a link is enough | Optional, from the browser | App Store and Google Play | App Store and Google Play |
| Found on Google | Yes, for public pages | Yes, for public pages | No (store listing instead) | No (store listing instead) |
| Notifications on iPhone | No | Yes since iOS 16.4, once installed | Yes | Yes |
| Hardware access | Limited | Limited, especially on iPhone | Broad | Full |
| Updates | Instant | Instant | Through store review (except server-loaded content) | Through store review |
| Store fees | None | None | $99/year (Apple) + $25 once (Google) | Same |
| Relative cost | Lowest | Low | Medium | Highest |
What a PWA can do in 2026: iPhone vs Android
PWAs are often pitched as “an app without the app stores.” That is true on Android with Chrome, much less so on iPhone. The table below uses the browser compatibility data published by MDN (Mozilla’s web documentation) as of October 2, 2026.
Two limits often decide the matter. Installation first: Safari shows no install prompt, so users have to tap Share, then “Add to Home Screen.” Then notifications: Apple added them to web apps with iOS and iPadOS 16.4, but only for web apps added to the Home Screen, and the permission request must follow a user action.
| Capability | Chrome on Android | Safari on iPhone | What it means |
|---|---|---|---|
| Notifications (Push API) | Yes | Yes since iOS 16.4, after Add to Home Screen | Some iPhone customers will receive nothing unless they install the PWA |
| Install prompt (beforeinstallprompt) | Yes | No | On iPhone you have to show users how to install |
| Bluetooth (Web Bluetooth) | Yes | No | Scanners, scales, sensors: mobile app |
| NFC (Web NFC) | Yes | No | Reading NFC cards or tags: mobile app |
| Background fetch and periodic sync | Yes | No | Large uploads must happen with the app open |
| Vibration | Yes | No | Minor, but telling |
| Location while the app is open | Yes | Yes | Continuous background tracking: mobile app |
Sources: MDN browser-compat-data (Push API, BeforeInstallPromptEvent, Web Bluetooth, Web NFC, Background Fetch, Periodic Background Sync, Vibration, Geolocation.watchPosition), checked 2026-10-02; WebKit, “Web Push for Web Apps on iOS and iPadOS,” February 16, 2023. MDN flags Web Bluetooth and Web NFC as experimental.
App stores: what they give, what they cost, what they reject
Being on the App Store and Google Play brings a listing, reviews, a familiar install flow and public trust. In exchange you need accounts, fees, a review for every release and rules about payments.
- Fees: the Apple Developer Program costs $99 USD a year; Google Play charges a one-time $25 USD. An Apple organization account requires a D-U-N-S Number, free in most jurisdictions.
- Commissions: when an app sells digital content or features, Apple requires in-app purchase and takes 15% for developers in its Small Business Program (up to $1 million USD in annual proceeds), 30% above that. On the US storefront, apps may also link customers to a web checkout; in most other storefronts, including Canada, Apple’s rules do not allow that outside specific exceptions. Google Play’s service fees vary by region and transaction type, and an updated fee structure took effect in the US on June 30, 2026.
- Physical goods and services: Apple guideline 3.1.3(e) requires a payment method other than in-app purchase for goods or services consumed outside the app. Booking an appointment or ordering a meal is therefore not subject to the commission.
- The wrapped website: Apple guideline 4.2 says an app should offer more than “a repackaged website.” Putting your site in an app shell invites a rejection.
- Google Play accepts a PWA packaged as a Trusted Web Activity, as long as the app and the website belong to the same developer. It is a realistic way to be on Android without rewriting the app.
- Mandatory testing: a personal Google Play account created after November 13, 2023 must run a closed test with at least 12 testers for 14 days before production. An organization account, in your company’s name, is not subject to it.
Cost: what really changes between web and mobile
The price gap comes from the amount of work, not the hourly rate. A mobile app adds publishing to two stores, testing on real devices, store screenshots and listings, Apple and Google reviews, and the technical updates both platforms require every year. A web app deploys to a server, updates instantly and pays no store fees.
For a market benchmark, most mobile app projects on Clutch fall between $10,000 and $49,999 USD, according to its pricing guide updated September 21, 2026. Our app development cost guide covers those ranges, regional rates and recurring costs in detail.
Often forgotten: a mobile app almost always needs a web part too, the admin dashboard where you manage customers, orders or content. Choosing mobile does not remove the web; it adds to it.
| Item | Web app or PWA | iOS + Android app |
|---|---|---|
| Codebases | One | One with React Native or Flutter, two if native |
| Admin dashboard | Part of the same app | Separate web app, also to build |
| Release | Deploy to a server | Apple and Google review for each version |
| Fixed store fees | None | $99/year + $25 once |
| Forced updates | Browsers (rarely blocking) | New iOS, Android and build-tool versions every year |
Five sample scenarios
These are typical cases, not clients. They show how the five-question test plays out.
| Project | Likely choice | Reason |
|---|---|---|
| Client portal for a professional firm (documents, invoices, appointments) | Web app | Occasional use, often on a computer, no hardware needs |
| Internal operations tool (quotes, schedules, inventory) | Web app or PWA | Staff log in at the office and on the road; no store listing needed |
| Ordering or loyalty for a business customers visit weekly | Mobile, or a PWA to test first | Frequent use and notifications; a PWA can validate demand before investing |
| Field reports with photos, signatures and no-signal areas | Mobile app | Camera, robust offline mode and syncing when the network returns |
| Marketplace (buyers and sellers) | Web first, mobile later | Findable on Google from day one; mobile comes once repeat use is proven |
The most common mistakes
- Assuming a PWA will notify every iPhone user: only those who added it to their Home Screen get notifications.
- Wrapping your website in an app “to be on the App Store”: Apple guideline 4.2 targets exactly that.
- Going native by default: two codebases for a need one covers in most business apps.
- Leaving the admin dashboard out of a mobile app budget.
- Opening the Apple and Google accounts in the vendor’s name: switching vendors then means transferring or republishing the app, at the risk of losing reviews and history.
- Putting content that should be found on Google behind a login.
- Deciding without data: a PWA or web app can be the first test before you invest in the stores.
How ZeniTech makes this call with you
ZeniTech is a web, app, automation and AI agency based in Québec City, Canada, working remotely with clients in Canada and the United States. Our default for mobile apps is React Native: one codebase for iOS and Android, published on the App Store and Google Play. We recommend a PWA when the browser is enough, and go native only when a specific feature requires it. For web platforms and portals, our standard stack is Next.js, Node.js and PostgreSQL.
The code repository is created in your account, in your name, from the first commit, and the Apple Developer and Google Play accounts are in your company’s name. Each phase has a fixed price written before it starts and ends with something usable; you can stop after any of them.
| Service | Price (CAD, before tax) | Approx. USD |
|---|---|---|
| Custom software: web platform, client portal, integrations | From $15,000, fixed per phase | approx. $10,500 |
| Custom app: iOS and Android in React Native, or a PWA | First version from $25,000, fixed per phase | approx. $17,600 |
| Out-of-scope work | $125/hour | approx. $88/hour |
USD conversions use the Bank of Canada daily rate for October 1, 2026 (1 USD = 1.4243 CAD), rounded. Store fees ($99 USD a year at Apple, $25 USD once at Google) and hosting are paid directly by the client, on its own accounts.
Frequently asked questions
Does my business need a mobile app, or is a website enough?
If customers visit once or twice a year, a fast website is almost always enough. A mobile app pays off when use is frequent and on the phone, when notifications are essential, or when you need the camera, Bluetooth, NFC, background location or a robust offline mode.
What is a PWA, exactly?
A PWA (progressive web app) is a web app that can be installed on the home screen, open without the browser bar, work partly offline and send notifications depending on the device. It skips the App Store and Google Play, and one codebase runs on desktop, Android and iPhone.
Can a PWA send push notifications on iPhone?
Yes, since iOS and iPadOS 16.4, but only if the user has added the PWA to their Home Screen, and the permission request must follow a user action. Safari shows no install prompt, so you have to tell users to tap Share, then “Add to Home Screen.”
Can I publish a PWA on the App Store or Google Play?
On Google Play, yes, using a Trusted Web Activity, as long as the app and the website belong to the same developer. On the App Store it is risky: Apple guideline 4.2 says an app should offer more than a repackaged website, and a thin shell around a site can be rejected.
Is a web app cheaper than a mobile app?
Usually, yes. A web app has one codebase, updates without store review and pays neither Apple’s $99 USD a year nor Google Play’s $25 USD fee. A mobile app also almost always needs a web admin dashboard, so it adds to the web rather than replacing it.
Can I start with a web app and add a mobile app later?
Yes, and it is often the most prudent path. If the server and database are designed well from the start, the mobile app plugs into them later and reuses the same data, accounts and business rules. The first version proves real use before you invest in the stores.
React Native, Flutter or native: which should I choose?
For most business apps, a cross-platform framework like React Native or Flutter is enough: one codebase produces both the iOS and the Android app. Native (Swift, Kotlin) is justified when a specific feature requires it, such as heavy hardware use or extreme performance.
How much does ZeniTech charge for a web or mobile app?
Custom software such as a web platform or client portal starts at $15,000 CAD before tax (about $10,500 USD), and a custom app, iOS and Android in React Native or a PWA, starts at $25,000 CAD (about $17,600 USD) for a first version. Each phase has a fixed price written in advance, and out-of-scope work is billed at $125 CAD an hour.
Related
Free consultation
Get a fixed price for your project in 30 minutes.
We look at what the project has to achieve, tell you what it costs, and tell you when you do not need it.
Book a call →+1 581-748-7017Sources
- WebKit: Web Push for Web Apps on iOS and iPadOS (February 16, 2023)
- MDN: PushManager, browser compatibility
- MDN: BeforeInstallPromptEvent, browser compatibility
- MDN: Web Bluetooth API
- MDN: Web NFC API
- MDN: Background Fetch API
- Chrome for Developers: Trusted Web Activity
- Apple: App Review Guidelines (3.1.1(a), 3.1.3(e), 4.2)
- Apple: Apple Developer Program enrollment (fees, D-U-N-S)
- Apple: App Store Small Business Program
- Google Play: Play Console registration fee
- Google Play: service fees
- Google Play: testing requirements for new personal developer accounts
- Clutch: Mobile App Development Pricing Guide (updated September 21, 2026)
- Bank of Canada: daily exchange rates