Me too -- this is a very important point. Often the hotel's direct rate will be the same as advertised on hotels.com. Of course you lose the ~10% rebate by not getting rewards points, but since the hotel is effectively earning 30% more from you, they're much more likely to give you a complimentary or discounted upgrade.
So if that sort of thing matters to you, I can also strongly suggest booking direct.
(Note: You do generally have to ask, but I've had good experiences. Do it on-site @ checkin, and I basically say the above -- "Hey I booked direct so you earned 30% more from me. Can you offer me an upgrade to an un-used room since I'm here now?")