How it works
The mechanics underneath
your room price.
A hotel’s revenue management system has one job: fill rooms at the highest possible average daily rate. It does this by forecasting occupancy for every night of the year on a rolling basis, watching competitor rates through rate-shopping tools, and adjusting its own rates in response. A downtown hotel on a normal Tuesday and the same hotel during a convention week can show the same room at wildly different prices.
Layered on top of the occupancy model is a channel and device layer. Booking directly on the hotel’s website typically produces the lowest rate. Third-party aggregators like Expedia, Booking.com, and Hotels.com show different rates because each has a different commission structure with the hotel. Within those aggregators, device and browser signals have been shown repeatedly to affect what rates you see.
The famous 2012 Orbitz study found Mac users were being shown hotel rates an average of $20 to $30 per night higher than Windows users. The company defended the practice as presenting higher-end options to shoppers who were statistically more likely to book them, not charging more for the same room. The legal distinction was meaningful. The practical effect on a Mac user was not.
The signals
What they’re actually reading
about you.
Weights are approximate and based on published research, regulatory filings, and reverse-engineering studies. Sources are cited in full on the Sources page.
Mac vs Windows, iOS vs Android, mobile vs desktop all show different rate recommendations on most major booking sites. The Orbitz effect is narrower today but has not disappeared.
Hotel direct, Expedia, Booking.com, and the aggregators all get different inventory and different rates. Which channel you arrived through matters more than shoppers realize.
Weekends, holidays, local events, and stay-length minimums all feed the occupancy forecast that drives the base rate.
How far in advance you’re booking. Last-minute rates sometimes drop on under-booked nights, sometimes spike on high-demand ones.
Convention schedules, festivals, and seasonal patterns are core inputs for the revenue management system. A room near a major conference can triple in price.
Chain loyalty programs quietly unlock member-only rates and occasional upgrades. Guest bookings pay the walk-up rate.
Cookies, account signals, and session history all affect what rates return on a repeat visit. Multiple searches for the same hotel can nudge the rate up.
The country your search is coming from can route you to different rate tables entirely. US-origin searches sometimes see higher rates for the same international hotel than EU-origin searches.
What you can do
Ways to push back
that actually work.
None of these are silver bullets, but together they can shift the signals enough to meaningfully change the number you see.
Book direct, always compare first
Direct booking usually wins on price, and always wins on loyalty points and upgrade eligibility. But shop three sites first, because occasionally an aggregator has a promotional rate the hotel cannot match directly.
Call the hotel
A direct phone call to the property can unlock rates that neither the hotel’s own website nor any aggregator will show. This is especially true for last-minute bookings on under-booked nights.
Check desktop and mobile
Mobile-only rates exist and sometimes run lower. But the reverse also happens. Run the same search on both devices, and take the cheaper result.
Use price-freeze tools
Some aggregators now offer a price-freeze button that holds a rate for 24 to 48 hours. Worth using while you check other channels without worrying about the rate moving underneath you.
Other case studies