De reden dat een PWA vrijwel dezelfde mogelijkheden heeft als een gewone, ofwel native app is dat er gewerkt wordt met een service worker. Service workers zorgen er voor dat een PWA offline goed bruikbaar is, dat de PWA op de achtergrond gesynchroniseerd kan worden en dat je push notificaties kan ontvangen.Ook zorgt de service worker ervoor dat de content up-to-date blijft door op de achtergrond content te cachen. Hierdoor wordt de laadtijd verbeterd en is het zelfs mogelijk om offline de Progressive Web App te gebruiken. De service worker bepaalt of je de live versie van de website te zien krijgt of dat je de gecachte versie te zien krijgt indien je internetverbinding niet (voldoende) werkt.
Bij het ontwikkelen van een PWA hoef je geen rekening te houden met Android en iOS. Het is wel een nadeel dat iOS service workers nog niet worden ondersteund, waardoor de functionaliteiten een PWA op iOS niet volledig gebruikt kunnen worden. Vanaf iOS kun je een PWA uiteraard wel online bezoeken. Een van de voorwaarden voor PWA is dat je website op een https-domein draait.