Compatibile con le versioni precedenti (o talvolta compatibile con le versioni precedenti o compatibili con le versioni precedenti) si riferisce a un sistema hardware o software che può utilizzare con successo interfacce e dati da versioni precedenti del sistema o con altri sistemi. Ad esempio, Perl, il linguaggio di scripting, è stato progettato per essere retrocompatibile con awk, un linguaggio precedente che Perl è stato progettato per sostituire.
La compatibilità con le versioni precedenti è più facile se le versioni precedenti sono state progettate per essere compatibili con le versioni precedenti, o estensibili, con funzionalità integrate come Hook, plug-in o un'interfaccia del programma applicativo (API) che consente l'aggiunta di nuove funzionalità.
Il termine retrocompatibile (notare la "b") è talvolta usato per descrivere hardware o software che è stato progettato senza riguardo per la compatibilità con le versioni precedenti, facendo sì che le due versioni si combattano (o combattano) a vicenda. In questo caso, le due versioni non possono condividere facilmente i dati e possono avere funzionalità che causano errori o arresti anomali quando vengono installate sullo stesso computer, spesso perché il computer non capisce a quale versione si fa riferimento. Anche se la versione precedente viene rimossa, le tracce rimanenti di essa potrebbero causare problemi nell'esecuzione della versione più recente.