Have you accidentally messed up your phone, removed the OS, don’t feel right on custom ROMs, or want to turn in your Moto G smartphone for servicing? Here today at DroidOrigin, we will assist you on, how to restore stock firmware on Moto G. The process is easy, and only requires you to flash the stock firmware/factory image via fastboot commands. The supported device list includes the following, in simple words, only the following could be restored using this tutorial.

  • Moto G (1st, 2nd, & 3rd Gen)
  • Moto G Turbo Edition

All you will need, is the factory image for your model and variant. Be careful while searching for this, flashing the wrong files may permanently damage your phone. The procedure is nearly same for all the devices and could be followed correctly with a little awareness.


Manually flashing firmware may soft-brick your Moto G if done wrong. DroidOrigin or any of its members shall not be held responsible for any damage to your phone. However, we will definitely assist you if you come across any such situation.


Moto G 1st Gen Factory Images (Thanks to lost101): Link

Moto G 2nd Gen Factory Images (Thanks to Lucas Eugene): Link

Moto G 3rd Gen & Turbo Edition Factory Images (Thanks to lost101): Link


  • Your Moto G must have an unlocked bootloader. If it doesn’t, follow the steps here.
  • Install Motorola drivers: Link
  • Install Android SDK on your Windows machine for ADB and fastboot. Alternatively, you can also use the 15 seconds ADB Installer.
  • This process will erase your device completely, so backup your phone completely, include the internal storage.
  • Charge your Moto G to at least 60% battery level to avoid any sudden shut downs, during the procedure.
  • Enable USB debugging on your Moto G. You can follow the steps here.

Restore Stock Firmware on Moto G

  1. Download the factory image corresponding to your Moto G variant and model. Extract the downloaded firmware.
  2. Go to the folder where the firmware has been extracted.
  3. On an empty space inside the folder, press SHIFT key and right-click on an empty space. Select Open command window here from the pop-up that appears.
  4. Connect your phone to the PC, and make sure it is unlocked. Enter the following command in the command-line window:
    adb reboot bootloader
  5. Your Moto G smartphone will now enter bootloader mode. This is where we will flash the factory image.

    Moto G Turbo Edition Bootloader Mode
    // Bootloader mode on Moto G Turbo Edition
  6. Once it has, make sure that fastboot detects your device by entering the following command:
    fastboot devices
  7. The above command will return an output with the device ID and mode-name.
  8. Enter the following commands now to flash the factory image. There may be a chance that your device or variant has an extra or a less number of system.img_sparsechunk file, so make sure to flash accordingly. If you are downgrading your Moto G’s firmware, do not flash gpt.bin and bootloader.img/motoboot.img file.
    fastboot oem fb_mode_set
    fastboot flash partition gpt.bin
    fastboot flash motoboot motoboot.img
    fastboot flash logo logo.bin
    fastboot flash boot boot.img
    fastboot flash recovery recovery.img
    fastboot flash system system.img_sparsechunk.0
    fastboot flash system system.img_sparsechunk.1
    fastboot flash system system.img_sparsechunk.2
    fastboot flash system system.img_sparsechunk.3
    fastboot flash system system.img_sparsechunk.4
    fastboot flash system system.img_sparsechunk.5
    fastboot flash modem NON-HLOS.bin
    fastboot erase modemst1
    fastboot erase modemst2
    fastboot flash fsg fsg.mbn
    fastboot erase cache
    fastboot erase userdata
    fastboot oem fb_mode_clear
  9. Once everything is done, reboot the phone:
    fastboot reboot

And that was it. Pretty easy for anyone to follow. If you have any queries or feel stuck somewhere, let us know via the comments below.

Also read – Manually Install Android Marshmallow OTA on Moto G3


Previous articleHow to Add Multiple Accounts on Instagram for Android
Next articleEasy ways to reduce data usage on Android devices
Dhananjay (DJ) is an Android devotee and a Tech Blogger by profession. He is a keen undergraduate, seeking and working hard on his ambitions to achieve something distinctive in his life. He prefers interacting with his readers in the most reproaching manner possible and his desires here are not just to reach out the tech figures, but also attract those those non-interested minds to our Android universe. He proudly owns Nexus 6P, Nexus 5, OnePlus One and a Nexus 4.
  • Kunal Varaiya

    I have got my moto G 1st gen blank.. it won’t just start up.. when I plug in, it does show in charging mode..
    Will flashing help out??
    How to flash when I have got the screen blank??

    • Yes, flashing may help out. But only if we get a better look at the situation. The most imperative part is that you must be able to put your device into bootloader mode. So, are you able to do that on your Moto G 1st Gen?

      • Kunal Varaiya

        How to check the bootloader mode?
        Could you please guide me..

        • To enter bootloader mode or Boot Mode Selection Menu follow the instructions below:
          1) Power off your device completely and also make sure that it is unplugged from the USB charger or cable.
          2) Press and hold the power button and volume down button for approximately 3 seconds.

          You should now be able to see the boot menu.

          • Kunal Varaiya

            I tried this for almost 10-12 times and with long duration but it doesn’t respond.

          • So basically all you see is a black screen lighted up?

      • Sanchit Kelkar

        Can i do above procedure if i have twrp and a custom rom flashed… So i want my stock rom back. Can i proceed with your above steps.. Please help..!!

        • Dhananjay

          Yes you can. But! Skip the motoboot.img and gpt.bin commands in case you are downgrading. The rest of the process shall be same.

  • alex

    Please help! if the firmware i downloaded doesn’t have system.img_sparsechunk0 through 5 do i still have to flash all of them or only the ones that my firmware has?

    • Hello Alex, you will only need to flash the amount of sparsechunk files that you have. Some firmware have 4, while others even have more than 5.

  • Bhanu Chopra

    Bro help me i trying to this but i can’t.reason is when i apply commands ,its shows ur bootloader is denied permission .my phone bootloader is unlocked …so, tell me how to allow all permission s…help me ..and one more thing when i go in fastboot mode .my baseband is unknown .why ? Help me bro

    • Hello Bhanu, could you please share a picture of your Moto G’s bootloader mode? And also, kindly specify the exact the model of your device. It will allow us to better track down the issue to its root.

  • Marcelo Curado

    Hi! I think the command line fastboot flash bootloader bootloader.img is misplaced here. Shouldn’t be fastboot flash motoboot motoboot.img instead?

    • Hello. Thank you for notifying this to us. Have updated the command accordingly. 🙂

      • Marcelo Curado

        Tks! I dont know if you can help me once again. But after I have installed the stock version over a custom rom that my moto g2 had, now every time that the smartphone turns on it fist appear the bootloader mode screen, then I need to choose “Normal Powerup” and then the smartphone starts… do you wanna what I could have done wrong and how can I fix it? Tks!

        • Okay. So, switch your device off. Power it on and now when it is in bootloader mode, you should see “Fastboot Reason:”. There should be line after that, kindly paste it here.

          • Marcelo Curado

            It says: UTAG “bootmode” configured as fastboot

          • Okay, so while your device is in bootloader mode, connect it to the PC and enter the follow command: “fastboot oem fb_mode_clear”

          • Marcelo Curado

            Tks! Working smoothly now!

          • You’re welcome. If you need any other help, you can comment here or reach to us

          • I have also updated the article with this command, so that further users would not come across such situation.

          • Marcelo Curado

            Great! 🙂

  • Jayaprakash N

    Hi When i am flashing gpt.bin and motoboot.img, getting Preflash validation error. My moto 9 is already unlocked. Becz of this now my moto g is not at all booting. Only fastboot mode i am able to enter. Please help on with this error. I could not find correct info on this.

    $ ./fastboot-mac flash partition gpt.bin
    target reported max download size of 536870912 bytes
    sending ‘partition’ (32 KB)…
    OKAY [ 0.038s]
    writing ‘partition’…
    (bootloader) Preflash validation failed
    FAILED (remote failure)
    finished. total time: 0.315s

    • Hello, kindly skip the motoboot.img and gpt.bin if you’re downgrading. There are strong chances that you might hard brick your device.

  • Robert Clarke

    I just cannot get past the sparsechunks – I keep getting an error. I have used fastboot and mfastboot but both fail.

    C:Mfastboot>mfastboot flash system system.img_sparsechunk.0
    target max-sparse-size: 256MB
    sending ‘system’ (257451 KB)…
    FAILED (data transfer failure (Unknown error))
    finished. total time: 300.660s

    any idea?

    • Try a different USB port on your PC. Also, if there are any other USB devices connected like external HDD, USB drives, or webcams, remove them momentarily.

  • D GOD

    I did everything while rebooting after bootloader message, android image with erasing comes. from there its just a loop. The device doesn’t start. Please help
    I downloaded XT1550 2gb firmware

    • Hello, please state the exact model of your device. Are you sure you downloaded the firmware for your model? Also, have to tried to downgrade from a higher to lower Android version during this process?

  • chinmay ambekar

    If you are downgrading your Moto G’s firmware, do not flash gpt.bin and bootloader.img/motoboot.img file.

    this lines made my day thanks man ue awesome no one mention this lines in youtube.or anywhere thanks u man

    • It’s always better to provide the most important information first. You are welcome Chinmay.