Can I safely do a factory reset without losing root?
Recoveries like TWRP and Philz Touch checks for root verification and in the scenario of you losing root after  factory reset, boot into your custom recovery, attempt for a normal reboot and the recovery will offer to root the device. Take the offer. Come back to Android and install SuperSU from Play Store as usual. This worked well with my Android 4.2.1, 4.4.2, COS12 and stock Android 5.1 ROMs. 

Note: do not use the said approach on a ROM running Android Marshmallow. It may cause boot issues which you might not be able to solve unless you do a clean and full flash of a device specific ROM or manually reverse the steps TWRP used to root the device.

As of now, to root a ROM prefer the flashable zip for SuperSU stable and flash it through your custom recovery. In case of installation issues, refer to this XDA thread. 

Related: I&#39;ve installed a custom recovery image, but not yet rooted my phone. How can I install SuperSU and subscribe to automatic updates?



SuperSU app offers to move itself into system partition which would make it a system app and invulnerable to any factory reset. The option is available under its settings as Install SuperSU into /system. 

(As of now however, for ROMs rooted with system-less root mode SuperSU doesn't provide the said option.)



About battery drain, per my experience with it in Android 4.2.1, 4.4.2 and 5.0.1 I can recommend Greenify app in Boost mode. Boost mode requires Xposed Framework1 installed. 



1  Xposed Framework: Android 4.x, Android 5.x and 6.x