向下兼容(downward compatibility),又称向后兼容(backward compatibility)、回溯兼容,在计算机中指在一个程序、库或硬件更新到较新版本后,用旧版本程序创建的文档或系统仍能被正常操作或使用(包括输入数据)、在旧版本库的基础上开发的程序仍能正常编译运行,或较旧版的硬件仍可在新版使用的情况。
在文件系统中,ext4文件系统的设计就是向后兼容的,ext3的文件系统可以被当作ext4文件系统挂载。
通常更新一个软件时,应该为向下兼容性做出一定的考虑,这往往能给用户带来方便并更好地留住用户。Microsoft 特别强调维持软件的向下兼容性。为了实现此一目标,有时微软甚至不惜支持使用了非官方乃至误用的 API 的软件。例如Microsoft Excel直到现在仍把1900年当作闰年,便是基于早期发售的Lotus 1-2-3也有相同的问题,如果修复此一问题,反而会引起更多的麻烦。这是所谓的“漏洞兼容(英语:bug compatibility)”。
但情况并不总是这样,有时为了考虑向下兼容会带来一些累赘,甚至增加开发的成本,尤其是进行过较多升级后。Python 3.0 便是放弃向下兼容的一个例子。
如果一个软件的旧的版本保存的文档不能被新版本读取,即使厂商提供了额外工具对旧文档进行不可逆转的转换,这也不能称作向下兼容。这可能是软件厂商的一种市场战略,强迫用户购买升级软件,随着升级用户逐渐增加,逐渐地使得旧软件能读取的文档越来越少。
以广为使用的通用串行总线(USB)为例,从1998年的1.1版到2015年时的3.1版,A型的插头与插座均可跨版本互相使用,仅新版本所支持的较大传输速率与一些新特性无法为旧版所使用。
蓝光光盘驱动器通常可向下兼容读取DVD、CD。
此外还有微软公司推出的Xbox One游戏机对Xbox 360,和任天堂推出的Wii U对Wii的旧版本游戏在新版本硬件中提供支持。但是索尼电脑娱乐推出的PS4游戏机则不向下兼容PS3的游戏。