At one point, I was at 28 hours and still had 50% left, and all of that was NOT on standby. I had played some Game of War, placed and took some phone calls, sent and received various text messages, listened to music in the car on my way home and to do other errands for a total of almost an hour of music listening. Plus, I leave it on all night because I use the phone as my alarm clock as well.
Battery life on this phone is excellent. I've had other people that I know who have this phone and they complain that when they shoot HD videos, and play their games for an hour or more, the battery life goes down quick. Well, duh. Yeah, it will if all your doing is shooting HD videos and playing games all day. What do you expect? I have to laugh when they complain like that.
And, as hilmar2k stated, shutting down apps constantly actually causes more battery to be sucked up. Android is NOT a true multi-tasking OS. Yes, it does have services that run in the background, and that's what they are for. They are not interactive with the user and should only be used for certain circumstances, but nothing stops a dev from creating a service that could misbehave.
Now, to warn you, I'm going on a teaching moment, so you don't have to continue if you don't want to, but I just wanted to go into more detail about how Android handles applications and resources. If you're not interested, then you can stop reading now. But, if you are interested in why task killers could actually be a detriment to battery life, read on.
The apps you run, known as activities, do NOT continue running in the background when they are no longer in focus. Instead, they go into a suspended state where, depending on what the developer chose to do, stores certain information to allow it to start back up where the user left off. The Android OS then basically shuts it down. As more and more apps come into focus and then leave, they also are saving their "states". If the OS detects that memory is getting low, then it will start actually killing off older processes that are in a suspended state, and it essentially chooses them based on various factors, but one is how old is it, has it accessed any Android services or resources recently, etc. In essence, this is what a task killer does, but instead, it kills the process outright when maybe it doesn't need to be yet.
Those processes that are killed require longer restart times than those that are suspended and not really doing anything. Suspended does NOT mean it's still running and eating up CPU processes. They are essentially asleep, but not dead (killed).
However, those suspended apps will start up quicker and not eat up battery life as opposed to those that have been outright killed and have to start up from scratch completely. When an app has to start up from scratch, there are a lot of other things that the Android OS must do to start that app up. Starting an app up from suspended mode skips a lot of those other necessary steps, hence it starts up quicker and doesn't eat up as much battery life doing so. Again, the Android OS will eventually kill off old processes when it needs more resources.
So, if you are using an app, and then you leave it and kill it, and then come back to it later, you essentially are starting it up from scratch again, which results in more battery life being killed off. However, if you would have left it alone, it might have still been in a suspended mode, hence it would start up quicker and would not chew up battery.
Now, it might not seem like that should make that much of a difference, but it does. Task killers reduce battery life, especially if you are constantly killing apps off. They might make your phone appear to run snappier, but in the end, you are actually killing your battery life.
A lot of what is perceived as too many apps running, and makes the phone feel sluggish, is due to poorly programmed apps where people program their apps without taking into account what should happen when their app goes into a suspended mode and they leave various resources open or don't clean up properly when going into suspended mode. Or, they just program it poorly. Yes, you CAN program an app poorly. Take it from me, I've done a number of poorly programmed applications in my early years of programming.
Programming for android is a LOT different than programming for say, Windows. PCs have so much more resources (memory, storage, etc) than a phone does, so it takes a different mindset when programming for mobile devices. Mobile devices have limited memory, resources, etc. Yes, these days we are getting phones with quad core processors (like the G3), more memory, etc. But, in the end, they are still limited in what can be packed into a hand-held device. So, you have to take that into account when programming. And task killing works fine in Windows. But why do you have to kill it? If programmed properly, you wouldn't need to do that. Same goes for mobile applications. But, task killing under Android is actually a no-no. In the early days, yes. It was a necessary evil. These days, not so much any more. Android has matured a lot since it's early Cupcake days.
Now, for those that use Greenify, it's not a task killer. It puts the application into a suspended mode. Also, it's not like freezing. Basically, it is preventing an application from performing a wake lock. Again, it doesn't kill the app, it just suspends it. Of course, if resources become low, that app could eventually be killed outright by Android, but at that point, Android is taking care of it and killing the app when it deems necessary. Greenify doesn't kill the app.
Whew. Went WAY too far into detail and I apologize for that, but sometimes I think that can actually help people out if they don't understand how Android works. It's actually pretty smart how Google wrote Android and how it has matured over the years.