How to upgrade from CyanogenMod 12.1 (CM12.1) to CyanogenMod 13 (CM13)


Earlier this month, the CyanogenMod team started rolling out the initial builds of CyanogenMod 13 based on Android 6.0 Marshmallow for a select few devices. Over the next few weeks, it is likely that the team will expand its roster of supported devices to include other more popular devices as their nightly builds reach a daily driver status.

With CyanogenMod 13 now available, it is likely that most users running CyanogenMod 12.1, which is based on Android 5.1 Lollipop, are looking to upgrade their devices to it. While the process to upgrade from CM12.1 to CM13 is relatively straightforward, there are a lot of things that one must keep in mind for the process to go smoothly.

If you are unsure of the steps on how to upgrade your Android device from CM12.1 to CM13, worry not as we have got you covered. Simply follow the steps mentioned below to a T and you will have CM13 up and running on your device in no time.


  • It is highly recommended that you create a backup of all your important data before proceeding with the steps below. My recommendation would be to create a nandroid backup in TWRP so that you can restore back to it if things go wrong.
  • The steps below will work on devices like the Nexus 4, Nexus 5, OnePlus One and other similar devices. Certain devices will require a bootloader update or a newer firmware to work properly with Marshmallow, so make sure to do some research on the XDA sub-forum of your device before following the steps below.
  • Make sure to update TWRP to the very latest version that is compatible with Marshmallow.
  • The guide below assumes that you are running the latest and official CyanogenMod 12.1 nightly or stable release on your Android device.
  • Beside running CyanogenMod, there should be no other modifications or software tweaks done to your device. Otherwise there is a strong possibility of device entering into a bootloop after installing CM13.
  • The steps below will likely also work for Android devices that are running CyanogenMod 12, which is based on Android 5.0 Lollipop. However, the chances of something going wrong and your device entering into a bootloop are also higher than normal in this case.


Step 1: Download the official CyanogenMod 13 nightly build for your device from here. If an official CM13 nightly build is not available for your device, you can try flashing an unofficial nightly build, but your mileage will vary in such cases.

Step 2: Download a version of Google Apps (GApps) package that is compatible with your device and works under Marshmallow from here. Transfer the CM13 and the Gapps package ZIP files to the internal storage of your Android device.

Step 3: To avoid running into any issues, it is highly recommended that you first completely uninstall Xposed framework and its modules and then proceed with the upgrade process. You can find the ZIP file to uninstall Xposed framework here. Alternatively, simply re-flashing the existing build of CM12.1 on your device will also uninstall Xposed framework. If you want to use Xposed framework under CM13, download the Marshmallow version of the framework from here.

Step 4: Reboot your Android device into recovery. If you are unsure of the steps, make use of the advanced reboot menu option present in CyanogenMod or use an application like Quick Boot.

Step 5: Once your device boots into recovery, select the ‘Install’ option and then proceed to select the CM13 nightly ZIP file. Once the ROM is installed, do not reboot your device. Instead go back to the main menu in TWRP and select the ‘Install’ option again. This time install the Marshmallow compatible Google Apps package.

Step 6: Now proceed to reboot your device back into Android. As is the norm is in such cases, the first boot can take its own sweet time so be patient.

Step 7: If your device boots into CyanogenMod 13, let it idle for a few minutes and wait for things to settle down. I will recommend you to reboot your device once again after 15 mins just to be on the safe side.

Step 8: If everything is working fine and dandy and you want to install Xposed framework on your Android device running CM13, reboot the device back into recovery and flash the relevant ZIP file.

Read: How to install Xposed framework on Android 6.0 Marshmallow

If your device enters into a bootloop after flashing the CyanogenMod 13 ZIP file, you can try repeating the steps and re-flashing the ROM to see if that works or not. If not, there is not much that you can do except doing a clean format and then installing CyanogenMod 13 on your device. Alternatively, you can restore the nandroid backup you took before flashing CM13 to restore your device to its earlier state.

If you end up running into any other problem, drop in a comment below and I will help you out.

Like this post? Share it!