The technology decision is made in the first week, but its impact lasts for years. Here is what really sets the three common options apart.
What is what?
- Native — two separate apps: one in Swift for iOS and one in Kotlin for Android. Best performance, twice the work.
- React Native (Expo) — one codebase that produces real native apps for both platforms. It is now the default choice for most business apps.
- PWA — a website that behaves like an app. It opens in a browser, can be added to the home screen, and does not go through app stores.
Comparison
| Native | React Native | PWA | |
|---|---|---|---|
| Relative cost | 160–180% | 100% | 50–70% |
| Camera and sensors | Full access | Full access | Limited |
| Offline support | Full | Full | Limited |
| Push notifications | Yes | Yes | Limited on iOS |
| In app stores | Yes | Yes | No |
| Releasing an update | Days, after review | Days; some changes are instant | Instant |
When to choose each option
PWA — when your app does not need to be an app
If users work at a desk, have an internet connection, and your product is essentially an interface for a database, a PWA is the fastest and cheapest route. There is no app review or waiting; changes go live as soon as you publish them. Our Kolektro is a good example: the accountant works at a computer, while a client can open a link to send a document without installing anything.
A PWA is not a good fit if you need reliable offline support, substantial camera access, or an app store presence to earn customer trust.
React Native — the default choice for business apps
One team, one codebase, both platforms. For an app with lists, forms, a camera, sign-in, and syncing—which describes most business apps—the difference from native is invisible to users, while the cost is roughly half.
Our Handover is built with React Native even though most of the app is camera and offline functionality—exactly the kind of work traditionally associated with native development. It works well.
Native — when the app is the product
Native development makes sense in three cases: when graphics or real-time processing are central to the product (games, video processing), when you need hardware that cross-platform tools support late, or when your user base is large enough to justify two teams for the final few percent of polish.
For most businesses in Croatia, native is an expensive solution to a problem they do not have. If you are unsure whether you need it, you probably do not.
Where a cheaper option can cost you later
Savings on technology can come back as costs later, usually in three ways:
- PWA and iOS. Push notifications and offline support on iPhone are still more limited than on Android. If notifications are essential to your product, a PWA is a risk rather than a saving.
- Switching later. Moving from a PWA to a native app is a new project, not an upgrade. If you know you will need an app store release next year, avoid paying twice.
- Specialized libraries. React Native covers most common needs. For specialized hardware, someone may need to write a bridge to native code. It is a one-time cost, but a real one.
A practical decision sequence
- Does it need to work offline or use the camera heavily? If so, rule out a PWA.
- Does it need to be in an app store for trust or payments? If so, rule out a PWA.
- Are graphics or real-time processing central to the product? If so, go native.
- In all other cases, choose React Native.
If you are not sure which applies to your project, our article on what goes into the cost of an app breaks down each stage and where the budget goes.
