Since I've been following this thread since it was like only 10 pages long...
I was having poor battery life when I got my ATT 4S opening weekend.
I did some of the tweaks people mentioned here:
Use location services & notifications only on limited apps where its actually needed
Shut off the auto time zone thing
Do not send diagnostics
Manually retrieve email (I do not use any exchange server email accounts)
Now I can pretty much last all day with "normal" usage (indicated 2-3 hours) and still have around 50% left.
This is not as good as my iPhone 4 with iOS 4x, where with limited usage it would last 2 days and still have almost 50% left. This 4S could not do that.
Interestingly, if I recall correctly my old 4 would get roughly 6 hours of usage time and I was happy with that. If I extrapolate useage of my 4S it seems roughly the same based on my indicated uasge at the end of the day before I go to bed (i.e. last night I was at 2.5 hours of usage and 60% battery remaining).
The difference is that I don't think I'm actually using my 4S for the amount of time it says I am. If I take my phone off the charger and let it sit completely idle for an hour and then check usage, it might say something like 8 minutes of usage. What are those 8 minutes? It was completely untouched for the hour and fetch mail is on manual. So I suspect that in my case the phone is doing something in the background that increasing usage and draining battery. If usage were actal time I used the phone I think my 4S would be same as my 4.
Also, since iOS5 my original iPad has great battery life.