A stock ROM is the version of the Operating System that is pre-installed in your phone when you buy it. Whereas a custom ROM is a standalone version of an Operating System developed and build by a third-party vendor. It replaces the original Android OS of a device with a new version of the Android OS.