The short answer
How each tool works
All three need an unlocked bootloader, and all three are installed by patching an image with their app and flashing it with fastboot. The difference is where root comes from.
Magisk
Magisk patches the ramdisk, the small part of the start-up image that runs first. When the phone starts, Magisk sets itself up before Android does and adds root without changing the system partition. Depending on the phone, you patch the boot, init_boot, vendor_boot or recovery image. Magisk works on Android 7.0 and newer, and includes Zygisk for modules that run code inside apps.
KernelSU
KernelSU gives root from inside the Linux kernel. It's officially supported on phones with a GKI (Generic Kernel Image) kernel, which most phones launched with Android 12 or later have. It installs in one of two ways:
- LKM mode: the KernelSU app patches your boot or
init_bootimage so a kernel module loads at start-up. Your phone's own kernel stays in place. The KernelSU project recommends this for phones. - GKI mode: you replace your phone's kernel with a KernelSU kernel that matches its kernel version. This also works on Samsung phones, where LKM mode doesn't.
KernelSU's App Profile sets exactly what each root app is allowed to do. Its modules use almost the same format as Magisk's, but mounting is handled by a separate "metamodule" that you install first, and Zygisk isn't built in.
APatch
APatch patches the kernel inside your boot image with its own kernel patching code. While patching, you choose a SuperKey, a password of 8 to 63 letters and numbers that controls root access. APatch only supports ARM64 phones with a kernel between 3.18 and 6.12, built with CONFIG_KALLSYMS enabled. It never patches init_boot.
APatch supports two kinds of modules: APModules, which work like Magisk modules, and KPModules, which add code to the kernel itself.
Side-by-side comparison
| Magisk | KernelSU | APatch | |
|---|---|---|---|
| Where root comes from | Patched ramdisk | The kernel (a module or a replacement kernel) | The patched kernel |
| What you patch | boot, init_boot, vendor_boot or recovery | boot or init_boot (LKM), or a new kernel (GKI) | The kernel in boot only |
| Supported phones | Almost any phone with Android 7.0+ | Phones with a supported GKI kernel | ARM64 phones with kernel 3.18 to 6.12 |
| Root permissions | Per app, in the Superuser tab | Per app, with App Profile | Per app, unlocked by your SuperKey |
| Modules | Magisk modules | Magisk-style modules plus a mounting metamodule | APModules and kernel KPModules |
| Zygisk | Built in | Separate module | Separate module |
| Samsung | Official steps | GKI mode only | No official steps |
| Official docs | topjohnwu.github.io/Magisk | kernelsu.org | apatch.dev |
Which one should you choose?
- Choose Magisk if this is your first time rooting, if your phone is older or isn't on Android 12 or later, or if it's a Samsung phone or a Googlebook. It's also the safest choice when you want to follow a step-by-step guide like ours.
- Choose KernelSU if your phone has a GKI kernel that KernelSU supports and you want fine control over what each root app can do.
- Choose APatch if you have an ARM64 phone whose kernel KernelSU doesn't support, and you're comfortable managing a SuperKey.
How to switch from Magisk to another root tool
Only one root tool can be installed at a time.
- Remove Magisk with Complete uninstall in the Magisk app. Our uninstall guide covers every method.
- Check that your phone starts normally without root.
- Install the new tool by following its official documentation. Reinstall your modules afterwards, because uninstalling Magisk removes them.
To go back to Magisk, remove the other tool the same way, flash your stock image, then install Magisk.
Frequently asked questions
Is KernelSU better than Magisk?
Neither is better for everyone. KernelSU suits phones with a supported GKI kernel and gives detailed control over each root app. Magisk works on far more phones and Android versions, and most guides and modules are written for it.
Can KernelSU use Magisk modules?
Most of them. Both use the same zip format, install modules to the same folder and run their scripts the same way. KernelSU needs a mounting metamodule installed for modules that change system files, and Zygisk modules need a separate Zygisk module.
Does APatch work on every phone?
No. APatch only supports ARM64 phones with a kernel between 3.18 and 6.12, and the kernel must be built with CONFIG_KALLSYMS enabled.
Can I install two root tools at once?
No. Each one changes the boot process, and two of them at the same time can stop the phone from starting. Remove one completely before installing another.
Share this guide
More Magisk guides
All guides- 16 min readDownload Magisk Manager Latest Version 31.1 For Android 2026Download Magisk 31.1, the official APK from GitHub, and root your Android phone step by step. Patch your firmware, manage root access, update or uninstall.Read the guide
- 5 min readHow to Unlock the Bootloader on AndroidUnlock your Android bootloader before rooting with Magisk: what it erases, the fastboot commands, and the steps for Pixel, Xiaomi, Motorola, OnePlus and more.Read the guide
- 4 min readHow to Install ADB and Fastboot on Windows, Mac and LinuxSet up Google's Platform-Tools on Windows, macOS or Linux, connect your phone with USB debugging, and fix the most common adb and fastboot errors.Read the guide
- 4 min readDownload Magisk Beta 31.1 Latest Version For Android 2026Get the newest Magisk beta from the official GitHub pre-releases, switch the Magisk app to the beta channel, and go back to stable if something breaks.Read the guide