Always book with the hotel directly. If you don't, and you have any changes, arriving late etc., you will lose your reservation and your money. It is not worth the $10 you might save.
A lot of times I’ve also found it to be cheaper. So that has left me wondering if these web agencies are just selling the same rooms for a small premium on top of the actual price.
The other arbitrage opportunities include breakfast and other facilities. Either way check direct before ever choosing another option like Airbnb.