A hybrid app is built with web technologies — HTML, CSS, JavaScript — and wrapped in a thin native shell that renders it inside a WebView. Frameworks like Cordova, Ionic, and Capacitor are the classic hybrid stacks. The appeal is one codebase shipping to both iOS and Android (and often the web), which lowers development cost and speeds up release cycles.
The trade-off is performance and platform fidelity. Because the UI runs in a WebView rather than as native components, complex animations, heavy graphics, and deep device-API access can lag a fully native build — and the app can feel subtly "non-native." For content-led or straightforward CRUD apps the gap is often acceptable; for games or interaction-heavy apps it usually isn't.
A common confusion: cross-platform-native frameworks like React Native and Flutter are *not* hybrid. They share a codebase like hybrid apps but compile to genuine native UI components instead of rendering web in a WebView, so they avoid most of the performance penalty. Either way, hybrid and cross-platform apps both distribute through the App Store and Google Play, so [[android-app-bundle]] packaging, [[app-size]], and ASO behave the same as for native apps.