Of je een app of webapplicatie laten maken het beste kunt, hangt vooral af van wie je gebruikers zijn en wat ze met je software moeten doen. Voor de meeste zakelijke toepassingen, zoals een klantportaal, planningstool of interne tool, is een webapplicatie (eventueel als progressive web app) de slimste keuze: één codebase, werkt op elk apparaat en geen afhankelijkheid van de app stores. Een native app is pas logisch als je intensief gebruikmaakt van de hardware van de telefoon of als zichtbaarheid in de App Store en Google Play echt bijdraagt aan je verdienmodel.
In dit artikel zetten we de drie opties naast elkaar, geven we je vijf beslisvragen en lees je wanneer welke keuze past.
App of webapp: wat is eigenlijk het verschil?
Het woord “app” wordt voor veel verschillende dingen gebruikt. Voordat je een app laat bouwen, is het handig om de termen scherp te hebben.
Native app
Een native app is een mobiele app die specifiek voor één besturingssysteem is gebouwd, zoals iOS of Android. Gebruikers downloaden hem uit de App Store of de Google Play Store en vinden hem daarna op hun startscherm. Een native app heeft de meeste toegang tot native functionaliteiten van het toestel, zoals Bluetooth, sensoren en achtergrondprocessen. Wil je zowel iOS als Android bedienen, dan bouw en onderhoud je in de praktijk vaak twee apps.
Webapplicatie (web app)
Een webapplicatie is software die in de browser draait. Je opent hem via een link, logt in en gaat aan de slag, op een laptop, tablet of smartphone. Er valt niets te downloaden en updates staan direct bij alle gebruikers live. Bekende voorbeelden van web apps zijn online boekhoudpakketten en tools als Google Docs. Wil je meer weten over de basis, lees dan wat een webapplicatie is.
Progressive web app (PWA)
Een progressive web app is een webapplicatie met extra mogelijkheden: gebruikers kunnen hem op het startscherm zetten, hij opent zonder browserbalk in een eigen venster en hij kan offline werken als hij daarvoor gebouwd is. Progressive web apps zitten daarmee tussen een website en een native app in. Hoe dat technisch werkt, lees je in ons artikel wat is een progressive web app.
Hybride app en cross platform
Een hybride app is een webapplicatie die in een native “schil” wordt verpakt, zodat je hem toch via de app stores kunt aanbieden. Cross platform ontwikkeling gaat een stap verder: met frameworks als React Native schrijf je één codebase in JavaScript, die native onderdelen van iOS en Android aanstuurt. Dat scheelt werk ten opzichte van twee volledig losse apps, maar je blijft wel afhankelijk van de app stores voor distributie en updates.
Native app, webapplicatie of PWA: de vergelijking
Deze tabel zet de drie meest gekozen opties naast elkaar. Gebruik hem als eerste filter, niet als eindoordeel.
| Native app | Webapplicatie | Progressive web app | |
|---|---|---|---|
| Hoe open je hem? | Via het startscherm na downloaden | Via de browser en een link | Via de browser of het startscherm |
| Installeren | Via App Store en Google Play | Niet nodig | Optioneel, zonder app store |
| Werkt op | Eén platform per app (of cross platform) | Elk apparaat met een browser | Elk apparaat met een moderne browser |
| Offline werken | Ja | Nee | Ja, als het is gebouwd |
| Toegang tot hardware | Volledig | Beperkt | Gemiddeld (camera, locatie, notificaties) |
| Updates | Via de store, gebruiker moet updaten | Direct live voor iedereen | Direct live voor iedereen |
| Codebase | Meestal per platform | Eén | Eén |
| Goedkeuring van Apple of Google | Nodig bij elke release | Niet nodig | Niet nodig |
| Vindbaar via | App stores | Zoekmachines en links | Zoekmachines en links |
| Onderhoud | Per platform, plus store-eisen | Eén applicatie | Eén applicatie |
Het belangrijkste verschil zit niet in de technologie, maar in distributie en onderhoud. Een native app moet langs de app store, een webapplicatie niet. Elke wijziging in een native app gaat opnieuw door een releaseproces, terwijl je een web app op elk moment kunt bijwerken.
Vijf vragen die de keuze bepalen
Twijfel je tussen een native app of webapp? Beantwoord deze vijf vragen eerlijk. Meestal is de keuze daarna duidelijk.
1. Wie zijn je gebruikers en hoe vinden ze je software?
Gaat het om consumenten die je app moeten ontdekken in de App Store, dan telt die zichtbaarheid. Gaat het om medewerkers, klanten of partners die je zelf uitnodigt, dan stuur je ze gewoon een link. Voor een klantportaal of interne tool heb je de app store niet nodig.
2. Welke native functionaliteiten heb je echt nodig?
Maak een lijst van wat de applicatie met het toestel moet doen. Camera, locatie en notificaties zijn met moderne web apps prima mogelijk. Heb je continu Bluetooth nodig, uitgebreide achtergrondtaken of diepe integratie met het besturingssysteem, dan kom je bij een native app uit.
3. Moet de app offline werken?
Werken je gebruikers in kelders, op bouwplaatsen of in het buitengebied, dan is offline gebruik een harde eis. Dat kan native, maar ook met een progressive web app. Voor Van den Pol Elektrotechniek bouwden we bijvoorbeeld een app die ook offline werkt, zodat monteurs op locatie door kunnen werken.
4. Op welke apparaten werken je gebruikers?
Werken gebruikers zowel achter een bureau als op de telefoon, dan is een webapplicatie die op elk scherm werkt vaak logischer dan een mobiele app die alleen op de smartphone draait. Veel zakelijke workflows bestaan uit invoer op kantoor en raadplegen of aftekenen onderweg.
5. Wat betekent het voor onderhoud en totale kosten?
Kijk niet alleen naar de bouw, maar naar de jaren daarna. Twee native apps plus een backend betekent drie onderdelen die je moet testen, onderhouden en up-to-date houden met nieuwe versies van iOS en Android. Eén webapplicatie houdt de complexiteit lager. Wil je weten wat dat in jouw situatie betekent, lees dan wat bepaalt wat een webapplicatie kost.
Wanneer kies je voor een webapplicatie?
Een webapplicatie is de beste keuze als je software vooral draait om gegevens, processen en samenwerking. Denk aan:
- Klantportalen waar klanten orders, documenten of facturen inzien;
- Interne tools zoals planningen, dashboards of een maatwerk applicatie voor je administratie;
- SaaS-producten die klanten via een abonnement gebruiken;
- Workflows met koppelingen naar bestaande systemen, zoals je boekhouding of CRM.
In al deze gevallen wil je dat gebruikers direct kunnen beginnen zonder iets te downloaden, en dat jij nieuwe functionaliteiten zonder goedkeuring van Apple of Google live kunt zetten. Bovendien heb je met één codebase maar één plek waar je beveiliging, monitoring en geautomatiseerde tests regelt.
Wanneer kies je voor een progressive web app?
Een PWA is de middenweg als je de voordelen van een webapplicatie wilt, maar gebruikers toch het gevoel van een app wilt geven. Kies voor een progressive web app als:
- gebruikers de app dagelijks openen en een icoon op hun startscherm handig vinden;
- offline werken nodig is, bijvoorbeeld voor werkbonnen of inspecties;
- je notificaties wilt sturen, bijvoorbeeld als een order klaar is;
- je geen aparte apps voor de app stores wilt bouwen en onderhouden.
Voor veel bedrijven is dit de route met de beste verhouding tussen gebruiksgemak en onderhoud. Je kunt bovendien klein beginnen: eerst een gewone webapplicatie, daarna installeerbaar en offline geschikt maken waar dat echt nodig is.
Wanneer kies je voor een native app?
Er zijn goede redenen om een native app te laten ontwikkelen. Kies voor native apps als:
- je app draait om intensief gebruik van hardware, zoals continue Bluetooth-verbindingen met apparatuur;
- je de beste prestaties nodig hebt, bijvoorbeeld bij zware graphics of real-time verwerking;
- vindbaarheid in de App Store en Google Play essentieel is voor je product;
- je gebruikers een app uit de store verwachten, bijvoorbeeld bij een consumentenproduct.
Houd er rekening mee dat je dan meestal een app voor zowel iOS als Android nodig hebt, plus een backend met koppelingen. Cross platform frameworks als React Native verkleinen het verschil, maar de store-releases, reviews en updates per platform blijven. Vaak is een combinatie het verstandigst: een webapplicatie als basis en later een native app die dezelfde backend gebruikt.
Heb je al een website?
Heb je al een website en wil je die als app aanbieden? Dan zijn er meerdere routes, van een snelkoppeling op het startscherm tot een echte webapplicatie voor het ingelogde deel. Die opties zetten we op een rij in website omzetten naar app.
Zo begin je als je een app of webapplicatie laat bouwen
De grootste fout bij het laten bouwen van software is beginnen met de technologie. Begin bij het probleem.
- Beschrijf het proces. Wat doen je gebruikers nu, waar gaat het mis en wat moet de software oplossen?
- Bepaal de belangrijkste functionaliteiten. Wat moet er in de eerste werkende versie zitten, en wat kan later?
- Maak een klikbaar prototype. Zo zien gebruikers hoe het eruit komt te zien en krijg je vroeg feedback, voordat er code geschreven is.
- Kies pas dan het type. Met de antwoorden op de vijf vragen hierboven is de keuze tussen app of webapp meestal snel gemaakt.
- Bouw in korte stappen. Lever in iteraties op, test met echte gebruikers en stuur bij.
Let ook op eigendom. Een maatwerk applicatie is pas echt van jou als je de broncode krijgt en niet vastzit aan één leverancier of platform. Een lock-in kan net zo goed bij een bureau als bij een app store zitten.
Hoe wij dit aanpakken
Bij Inesta bouwen we sinds 2005 webapplicaties en hebben we meer dan 300 sites en applicaties opgeleverd. Bij een nieuwe vraag kijken we eerst of het met low-code kan, bijvoorbeeld in Retool voor interne tools. Past dat niet, dan bouwen we maatwerk in Symfony of Laravel, en waar nodig als progressive web app die ook offline werkt. De code is altijd van jou.
We adviseren eerlijk, ook als een native app beter past dan wat wij bouwen. Wil je weten welke route voor jouw idee het meest oplevert? Bekijk wat we doen als je een webapp laat ontwikkelen en plan een vrijblijvend gesprek. Je krijgt binnen één werkdag reactie.