Why are ROMs flashable through recovery while factory images require fastboot?

2 Answers 2


The factory image is just the ROM that's on the phone when it leaves the factory. It sounds like you might be thinking about different kinds of ROMs.

When you download a stock ROM from the phone's manufacturer (or elsewhere), it usually includes the image for the system partition and one for the stock recovery. In contrast, when you download a custom ROM, it usually just includes the image for the system partition, and it's expected that you already have CWM, TWRP, or some other third-party recovery installed.

Obviously you need fastboot to flash the recovery - you can't overwrite the recovery when it's running - so you need fastboot to flash a factory image (when it includes the recovery and the system image), but not necessarily if you're just flashing the system image (from a custom ROM).

A ROM can be a custom ROM or a stock ROM (aka factory image). The difference only comes because of the different ways that first- and third-party ROMs are distributed.

  • So then is it possible to flash these using CWM? What file in there would be the equivalent of what you would flash as a custom ROM? When I extract, I do see files like boot.img, system.img, recovery.img, etc. Commented Nov 29, 2014 at 13:25
  • Each .img file gets flashed to the partition with that name, so the system.img is the image for the system partition. As I said, most custom ROMs only include a system partition, because they assume you already have a custom recovery, and there's no reason for every custom ROM to include a recovery.
    – Dan Hulme
    Commented Nov 30, 2014 at 21:13
  • So I could theoretically just flash system.img through CWM and expect a fully functioning Android OS? Doesn't it require a zip file though? Commented Nov 30, 2014 at 21:56

This article made me understand the difference http://www.howtogeek.com/193055/what-is-a-custom-recovery-on-android-and-why-would-i-want-one/

They are the same concept except that that custom recovery allows certain things like introducing custom ROM. Flashboot is the built-in recovery environment of Android which is limited and definitely does not allow you to introduce custom ROM.

  • Fastboot is not the built-in recovery environment for Android. It is a special boot mode for flashing partitions and a few other developer tasks. Android has a real recovery environment, which is typically used for flashing OTA updates. If you have a custom recovery, it replaces the built-in one, but fastboot remains even if you replace the stock recovery with a custom one such as TWRP or ClockworkMod. Commented Dec 4, 2014 at 20:57

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .