Oh man a question I/ feel like I'm qualified to answer.
When I ran a hotel we had a base room rate, this was the room rate that was calculated out to cover the cost of the hotel room. Everything was built off the base rate and we would build packages around the time of year, expected occupancy, frequency of stay, rewards, travel agency bookings, etc.
For example, a small studio room at my old place was $159 a night during the month of April (April being one of the busiest months). If you were a booking the room for a week or more we'd offer a discount, if you booked through expedia you might pay $179 a night (we would inflate the price to cover the overhead expedia would charge us), or if it's the day of and we still have the room vacant at say 7pm we'll toss it on hotelstonight for $99 a night. We kept a ton of metrics and would adjust price accordingly. We'd also do pre-pay rooms at a discount for our off season, people would pay and get say 30% off for a room in October (our slowest month) but it wasn't refundable for any reason.
Long story short with so many booking sites, travel agents, and discounts offered by the hotel prices can vary wildly on rooms. Additionally if your room inventory management system isn't tied into 3rd party travel sites pricing can sometimes lag behind what the hotel wants to charge.