¿Por qué las aplicaciones web sin conexión no son populares a pesar de ser superiores a las aplicaciones web tradicionales?

Tendrías que calificar lo que quieres decir con superior.

Si te refieres a aplicaciones web estrictamente fuera de línea …

Pierde algunas de las ventajas que obtiene con las aplicaciones web tradicionales. También es mucho más trabajo mantener que su configuración SaaS tradicional.

Pierde actualizaciones automáticas, parches de seguridad y revisiones.

Pierde la base de datos central que permite una fácil colaboración y el intercambio de datos de aplicaciones en toda su organización.

Pierde la capacidad de ejecutar fácilmente un servidor en el back-end para levantar objetos pesados, almacenar datos, sincronizar eventos, etc. Es posible que pueda agrupar Node con su aplicación web para crear un servidor de back-end, pero esto hace que su sistema operativo sea dependiente.

Si te refieres a las aplicaciones web tradicionales con la capacidad de “trabajar sin conexión” …

Esto es más trabajo para un proveedor de software para implementar las capas de almacenamiento en caché y sincronización necesarias para que esto funcione y para, sospecho, un número bastante limitado de usuarios que lo usarían regularmente.

En última instancia, diría que te estás encerrando en un conjunto limitado de herramientas / caja de arena sin muchas razones particularmente convincentes para hacerlo.