This is a huge problem on android too. I saw it on HTC One and LG G2, but it was never the phone or the OS, it was always an app or a setting.
Fortunately on android there are some spectacular power analysis apps able to detect wakelocks with root acess. If you have a legit battery problem, I'd start by resetting EVERYTHING back to factory. Don't setup any profiles (including iCloud) and run a hands-off 8 hour test. I expect you will see much lower consumption. From there, you can gradually add services and apps testing as you go to hunt down the culprit.
There is one decent battery app in the store that shows relative consumption by apps. I used it to find out the Nest app was a battery hog EVEN IDLE. I solved that by deleting the app, using safari to login to my nest account, and creating a shortcut on the desktop. Boom: no more battery drain, same functionality.
Start by hunting down power hungry apps or settings. Location services are also battery hogs. How often do you see the location triangle in your status bar? Figure out what app is hitting location services in the background and that will save some juice. Also, turn off background app refresh for apps that don't need updates if you're not using them.
My phone will idle for up to three hours off charge at 100% and on wifi. It's not iOS and it's probably not your phone. If you really want to figure it out you have to be methodical. Start with a clean slate, establish baseline expectation and add capabilities until you find the culprit.
I hate to say it but there are plenty of app developers who do not care for battery life in their programming. Don't blame the phone and don't blame the iOS unless that legitimate clean slate baseline does not meet your expectations.
PS I think the battery app I mentioned is Battery Doctor. Trying to download but gogo inflight is slooooooooowwwww.