Initially I thought , it may be due to age of the phone (2 years), rooting the phone, installing custom ROM (manufacturer knows the phone best ) or due to partitioning SD card to increase internal storage (phone may be unknowingly accessing my slow class 4 SD card frequently). I also consulted some "Gadget Guru" friends of mine but as expected their knowledge was limited to the user's and market point of view. They asked me to get a new phone as a 3 year old would have suggested me :). I completely forgot that fact that in our childhood gadgets we used to change the rechargeable batteries. These days the smart phones are being upgraded so frequently nobody bothers to get a new battery.
Finally I decided to replace the battery for 450 INR and then get a new phone if the phone really had a problem. It has been a week and battery performance has been drastically increased as if it is a new phone. Here is a screenshot of the battery usage after I charged the battery to only 85%. I read somewhere the battery life increases more when you let the battery discharge below 10% and then charge all the way till 100% (one has to wait even after 100% , phone should say battery is charged.)
Also note that following good practices helps the phone retain charge for longer hours in my experience
- Keep the WI-FI turned off when not in wi-fi area, phone spends a lot of power just searching for signal
- Disable Background data use when not required.
- Create profiles and manage various power settings depending on the usage (Home, work or Car). This feature is available in most of the custom ROMs.
- Reduce screen brightness at night time.
- Close the apps with Back button of Android because they keep running in the background if you press home button. Apple products does magic in this case by putting the background apps to sleep.