Also, in addition to likely not being even close to calibrated yet, the other thing to note is the app guesses your battery life left based on normal usage. If your phone sits asleep for 8 straight hours, the estimated percent left should be off, because your normal usage likely isn't to never use your phone (who would buy a phnoe in that case, lol). The extremes of the spectrum (not using the phone for a long period, using it non-stop for a long period) will lead to the estimation being off for the simple fact that it calibrates to normal usage, not the extremes. Extremes make any guessing application less accurate.
Read back over the posts in this thread by "preinvent" or visit the website to get a better idea of how the app works.
ETA: I posted before I saw your reply. Since it does read accurate, I believe it will read 'accurate' once it is like 50% accurate, so even though it is 'accurate' it may still be just barely accurate. Even still, I think your situtation is more like what I have described, then a case of it being accurate. It probably needs to collect more data points for the percentage decades 10-20%, 20-30%, etc. I'm not sure about what percent your phone is at normally when you sleep at night, but the app needs to collect data for those ranges too, even though it is reading 'accurate' it may not have enough data points for those ranges. It goes with what I said first, it needs to adapt to your normal usage, and if you normally go to sleep with your phone at 40% and go 8 hours and it stays at 40%, after a few days it will become more accurate, but only in that decade. If your usage deviates from what is normal for that decade, it will be off. and the more you deviate, the more off it gets.
and that makes sense, the application can't tell the future.
I don't know if you have noticed, but one nice thing is if it is giving a really inaccurate reading, give it a few minutes and it will readjust.