First, let's look at the definition of Native app and Web app: -
What is a Native App? Native apps are developed for a specific platform and are coded in a platform-specific programming language. We can install it directly onto the device through an online store such as "App Store" or "Google Play".
What is a Web App? A web app is a website that is created to being viewed on a smartphone like a mobile app. A web app is accessed through the mobile device’s web browser and it doesn’t need to be downloaded and installed on the device.
Web App Pros
If you know JavaScript, CSS, and HTML5, you can build web apps for both platforms.
You don't need to worry about any software development kit (SDK) to create a web app unlike an iOS or Android app.
Developing a web app is always simpler than developing a native app, although it can depend on your requirements as well.
It is quick to launch cause does not require app store approval.
Web App Cons
Web apps are less advanced in terms of features.
Web apps work slower as compare to native apps.
If an app is designed for desktop users over mobile, it may miss out on mobile traffic, engagement, and revenue opportunities.
It is hard to provide an optimal mobile experience for repeat usage through web apps.
Native App Pros
Native apps offer the fastest, most reliable, and most responsive experience to users.
Native makes tapping into the camera, microphone, compass, accelerometer, and swipe gestures super easy so can provide greater functionality to the user.
It is easy to please users cause matching each app’s UI/UX to the platform conventions is easy.
Native apps are more safe and secure.
Native Apps Cons
When developing native apps, there is no flexibility regarding the platform. Developers have to code separately for both platforms: Android and iOS.
Native apps are expensive to build cause every platform needs a separate set of code, which means it's equivalent to coding for two different apps.
There are chances that users might be using an old version of the app if they ignored the update.
It is expensive to maintain and update.
When deciding between a native app or a web app, consider how important the app's speed, security, and performance are to you. Other factors to consider are time and money.