Las desventajas de una aplicación cliente-servidor incluyen la falta de confiabilidad, herramientas maduras y escalabilidad. Las aplicaciones cliente-servidor, o el software que se ejecuta en una computadora cliente, también tienen las desventajas de mayores costos y riesgos de congestión de la red.
Debido a que las aplicaciones cliente-servidor realizan solicitudes a un servidor remoto desde una computadora cliente, cuando el servidor falla, las operaciones se detienen. Además, los sistemas operativos de red como Windows NT Server carecen de escalabilidad. Otra desventaja de las aplicaciones cliente-servidor es que deben instalarse en la computadora de cada usuario. En algunos casos, esto puede ser tan simple como utilizar una unidad de red compartida. Sin embargo, puede ser tan difícil como pasar horas instalando y configurando software y componentes de tiempo de ejecución en la computadora de cada usuario.
Los costos asociados con una aplicación cliente-servidor dependen del tipo. Las aplicaciones cliente-servidor de dos niveles dividen la presentación, el procesamiento y los datos en dos unidades, mientras que las aplicaciones de tres niveles dividen la interfaz de usuario, la funcionalidad y los datos en tres unidades. Las aplicaciones de tres niveles tienen mayores costos de prueba y migración cuando un cambio en las reglas de negocios requiere un cambio en los parámetros de llamada. Los costos de codificación, pruebas y migración siempre son más altos en los sistemas de dos niveles cuando se compara el costo de cambiar de una herramienta de desarrollo de cliente patentada a otra. Otros costos incluyen costos de red, hardware y tiempo de respuesta.