A developer testing an app on a phone next to a laptop and a tablet on a desk
    Native vs hybrid app

    Native vs hybrid app: which approach meets your requirements?

    Buyers often call every non-Swift, non-Kotlin app hybrid, but there are four approaches: native, WebView hybrid, cross-platform frameworks that render native views, and web apps or PWAs. The fastest way to choose is to list your hard requirements and check which approaches can meet each one, and at what cost in native code.

    Which approach can meet each requirement?

    Quick answer

    Native vs hybrid app is decided by your hardest requirement: Bluetooth medical devices, HealthKit, background work or offline PHI push you toward native or cross-platform code, while content and forms fit a WebView hybrid or web app if it meets App Store rules. Agnotic Technologies tests each requirement against each approach before choosing.

    CriterionNativeHybrid
    Bluetooth LE medical devicesNative: full platform BLE APIs. Cross-platform: through native modulesHybrid: only through a native plugin. PWA on iOS: not available in Safari
    HealthKit or Health ConnectNative frameworks; cross-platform through native modulesHybrid: through a native plugin. PWA: no access
    Background location and background tasksPlatform background modes, subject to store reviewHybrid: through native plugins with care. PWA: not available
    Push notifications on iOSApple Push Notification serviceHybrid: native plugin. PWA: Web Push for Home Screen web apps since iOS and iPadOS 16.4
    Offline encrypted PHI storageKeychain, Keystore and encrypted databasesHybrid: needs a native secure storage plugin. PWA: browser storage only; avoid PHI
    App Store minimum functionality (4.2)Rarely an issue for a real native appA repackaged website risks rejection; the app needs app-like features
    Downloaded code (2.5.2)No downloading code that changes featuresSame rule; over-the-air web bundles must not add or change features
    In-app web browsing (2.5.6)Must use WebKit on iOS, unless entitled otherwiseBuilt on WebKit on iOS already
    Interface renderingNative viewsWeb views inside a native shell, or the browser
    Moving laterAlready nativeWrap web screens in a native shell first, then replace screens feature by feature

    What they are

    What is Native

    A native app is written with the platform's own toolkits, Swift or Objective-C on iOS and Kotlin or Java on Android. Cross-platform frameworks such as React Native sit on the same side of the line: React Native's documentation says it creates the corresponding Android and iOS views at runtime, so the interface is made of native views.

    What is Hybrid

    A hybrid app runs web code, HTML, CSS and JavaScript, inside a native WebView container, with plugins for device features; Capacitor describes itself as a native runtime for web apps with a plugin API for Swift on iOS and Java on Android. A web app or PWA runs in the browser and can be added to the home screen.

    Key differences

    Is React Native a hybrid app?

    Not in the WebView sense. React Native's documentation states that at runtime it creates the corresponding Android and iOS views for its components, so the user sees native views driven by JavaScript. A WebView hybrid renders HTML inside a browser view. Treat React Native and Flutter as cross-platform native, and compare them with native on device and performance needs, not with WebView apps.

    What do App Store rules mean for a hybrid app?

    Apple's App Review Guideline 4.2 expects features, content and interface that make an app more than a repackaged website, and 4.2.2 says apps should not be primarily web clippings or a collection of links. Guideline 2.5.2 bars downloading code that introduces or changes features. A hybrid app passes when it has real app features and ships feature changes through review.

    Can a web app or PWA replace a native app?

    For some products. WebKit added Web Push for Home Screen web apps in iOS and iPadOS 16.4, which removed one long-standing gap. Device access is still the limit: a PWA cannot read HealthKit, run reliable background work or reach most Bluetooth medical devices on iOS. If the requirements list is all content, forms and video, a web app plus later native shells is a sound start.

    Native vs web app in healthcare: what changes?

    Healthcare adds three hard requirements. HealthKit and Health Connect are native frameworks, and Apple's guidelines say HealthKit should be used for health and fitness purposes and integrate with the Health app. Bluetooth medical devices need native BLE access. Offline PHI needs encrypted storage the platform protects. Any one of them moves at least that feature into native or cross-platform code; for the two health data APIs side by side, see HealthKit vs Health Connect.

    Should you build the web app or the mobile app first?

    Build the web app first when users do the work at a desk, need no device features, find you through search and you ship changes often; build the mobile app first when users work on the move, need the camera, Bluetooth or health data, or return daily from a home screen. Agnotic Technologies weighs six factors before choosing. Where users do the work decides most cases. Device features needed push toward mobile. How users find you matters because search sends people to web pages, while app stores need a listing and a reason to install. How often you ship changes favors web, since a web release goes live at once and every mobile release passes store review. Who pays and signs up matters too: business buyers usually sign up and pay on the web, while consumer subscriptions often start in the app. Both versions talk to one API, so the second client reuses the backend, and the steps for moving to native later are listed below.

    When to use each

    When to use Native app

    • You connect to Bluetooth LE medical devices or wearables.
    • You read or write HealthKit or Health Connect data.
    • You need background tasks, background location or reliable notifications.
    • You store PHI offline and want the platform's encrypted storage and keychain.

    When to use Hybrid app

    • The app is mostly content, forms, scheduling and messaging.
    • You already have a web app and want a store presence quickly.
    • Device needs are light and covered by existing plugins.
    • One web team must ship to the browser, iOS and Android.

    How do you move from a hybrid or web app to native later?

    1. Keep the backend and API the same. Every approach talks to the same API, so the move is a client change, not a platform rebuild.

    2. Move device features first. Put Bluetooth, health data and background work in native modules behind a small bridge while the rest of the app stays web.

    3. Replace screens by traffic. Rebuild the screens people use most in native or cross-platform code, one release at a time, and leave rare screens in the WebView.

    4. Keep store rules in view. Ship each change through review rather than as downloaded code, in line with Guideline 2.5.2.

    5. Retire the WebView once the remaining web screens are few, or keep them where content changes often and device access is not needed.

    Frequently Asked Questions

    At the start, often, because one web codebase serves every platform. The saving shrinks as device requirements grow, since each one needs native plugin work. Compare approaches against your requirements list, not a generic estimate.