Compatible con versiones anteriores (o, a veces, compatible con versiones anteriores o compatible con versiones anteriores) se refiere a un sistema de hardware o software que puede utilizar con éxito interfaces y datos de versiones anteriores del sistema o con otros sistemas. Por ejemplo, Perl, el lenguaje de programación, fue diseñado para ser compatible con awk, un lenguaje anterior que Perl fue diseñado para reemplazar.
La compatibilidad con versiones anteriores se logra más fácilmente si las versiones anteriores se han diseñado para ser compatibles con versiones posteriores o extensibles, con funciones integradas como Hooks, plug-in o una interfaz de programa de aplicación (API) que permite la adición de nuevas funciones.
El término compatible con versiones anteriores (observe que la "b") se usa a veces para describir hardware o software que está diseñado sin tener en cuenta la compatibilidad con versiones anteriores, lo que hace que las dos versiones luchen (o combatan) entre sí. En este caso, las dos versiones no pueden compartir datos fácilmente y pueden tener características que causen errores o fallas cuando se instalan en la misma computadora, a menudo porque la computadora no comprende a qué versión se hace referencia. Incluso si se elimina la versión anterior, los vestigios restantes de la misma pueden causar problemas al ejecutar la versión más nueva.