I got a Surface 3 a few weeks ago, and I've fallen in love with it, except for one thing: the batteries dies overnight if it's not plugged in.
I started out trying the Sleep Study, which had potential. It shows a nice graph that I'm right... the battery level drops off overnight. If you want to get the report (which is great!), run "powercfg.exe SleepStudy" from an Admin Command Prompt. It'll generate "sleepstudy-report.html". If you want more days, try "powercfg.exe SleepStudy /duration 7" to get the last 7 days worth of stats.
Combing through it, all I really got out of it is that my Wireless card is on while the Surface is "sleeping", and so is the "Intel SD Host Controller". But figuring out what's going on beyond that has been elusive, until tonight!
Running "powercfg /requests" is supposed to identify which applications have made power requests.
Aha! Media Sharing!
Now, I thought I could turn that off through Windows Media Player (since, you know, it says "enabled through Windows Media Player"). Turns out that won't do it.
Go into Control Panel, Administrative Tools, Services:
Find the Windows Media Player Network Sharing Service:
And then... Kill it with fire. Stop it, and change it to Disabled.
Checking back at our trusty "powercfg /requests" list:
Huzzah! Maybe it'll sleep now!
Edit: Yup! Woke up this morning 7 hours later with 95% charge, and I did do a bit of stuff after I had unplugged it last night. Success!