Do you have it set up properly
If yes, then something can be interfering with it. Make sure BIOS and ALL drivers are up to date.
From the Command Prompt as Administrator:
powercfg –lastwake [to see what the last device was that woke the PC]
powercfg -devicequery wake_armed [which devices are set to wake the PC from sleep]
powercfg -h on [makes sure hibernate is on, but since you can hibernate I don't think this is the answer]
Back up boot drive image. Try SFC /scannow. Repair install.
My laptop is set to sleep after 20 min of inactivity and it will hibernate after 4 hours.