I would always recommend booking directly with the hotel. Hotels can see where your booking comes from (hotels.com, direct, hotwire). Non-direct bookings show the hotel that you have no loyalty and that you're a price shopper. If you were a hotel manager, would you give a better room to someone who is a price shopper with no loyalty (ie booking through a discounter) or to someone who paid a little extra (direct). There are deals, but you get what you pay for - hotels are no different.