Explained, honestly

Why is the same hotel a different price on every site?
Same room. Different math.

You open Booking, Expedia, and the hotel's own page for the exact same room and dates, and three different numbers stare back. It is not a glitch and it is usually not a scam. Each site strikes its own deal with the hotel, marks it up differently, and shows taxes and fees in its own way, so the price you see is assembled differently even when the room is identical. Here is exactly what is going on, and how to tell which number is really the cheapest.

+ Compare any hotel rate — free or watch a hotel price without installing →

No affiliate pitch. We just show the cheaper confirmed rate for your room, whoever has it.

The short version

The price gaps are real, and they are not random. They come from a handful of ordinary business reasons, none of which you can see from a single tab.

Why the numbers differ

  • • Each site holds a different rate and markup
  • • Some show before-tax, some show the all-in total
  • • Signed-in member and app-only rates are hidden
  • • Dynamic pricing shifts the rate through the day

How to find the real cheapest

  • ✅ Compare the all-in total, after taxes and fees
  • ✅ Confirm the room type and cancellation match
  • ✅ Sign in to catch member and app-only rates
  • ✅ Check the hotel's own site alongside the resellers

The five reasons the same room costs different amounts

A hotel does not set one public price and leave it there. It sells the same rooms through many channels at once, on different terms, and each channel decides how to display the result. Almost every price difference you notice traces back to one of these.

1. Separate contracts and markups

Booking sites and wholesalers negotiate their own rates with the hotel, sometimes buying rooms in bulk at a net price, then add their own margin. One reseller's cost plus a thin margin can undercut another's, so the same room lands at genuinely different totals depending on whose deal you are buying.

2. Taxes and fees shown differently

This is the big one. Some sites headline the room rate before taxes and mandatory resort fees, others fold everything into the total up front. A price that looks lowest can quietly become the most expensive once the fees appear at checkout. Comparing anything other than the all-in total is comparing different things.

3. Member, app, and signed-in rates

Loyalty programs and mobile apps unlock rates that a logged-out browser never sees. The hotel's own site signed in, or a booking app, can show a member price that beats the public number on the same room, which is why the "cheapest site" can flip the moment you log in.

4. Package, opaque, and non-refundable rates

A low number is sometimes a different product: a non-refundable rate, a room without breakfast, a smaller room type, or a price only available when bundled with a flight. It is a real saving if those terms suit you, and a false one if you needed the flexibility or the room you thought you were getting.

5. Dynamic pricing and timing

Room rates move with live demand and how many rooms are left, so two sites can capture the price a few minutes apart and disagree. Currency conversion and rounding add a little more spread. None of it means the room changed; it means you are seeing snapshots taken under slightly different conditions.

So how do you find the actual cheapest?

Since no single site wins every time, the reliable move is to compare rather than to trust a favorite. Pull up the all-in total for the exact same room and dates on the hotel's own site and a couple of booking sites, and make sure the room type and cancellation terms line up before you call one cheaper. That last check matters, because a lower headline number attached to a non-refundable room is not really the same deal.

After that, sign in so member and app-only rates show up, and if your dates are still a way off, watch the price for a few days since it drifts with demand. The comparison step is the one that pays off most often, because the gap between sites is real money sitting on the table, and it is the single part of the whole process you fully control.

Comparing every site by hand is the annoying part

Doing this properly means opening five tabs, matching room types, adding up taxes and fees on each one, and keeping track of which total belongs to which site, all before the rate quietly changes. That is tedious enough that most people give up and just book the first reasonable number, which is exactly where the overpaying happens.

Underbook is a free Chrome extension that runs that comparison for you while you shop. When you are looking at a hotel, it checks other sites for the same room and dates and shows the all-in price side by side, so you can see whether a cheaper number is actually the same booking. When it can't confirm the two rooms match, it says so plainly rather than pretending. You still book wherever you choose; it just makes sure the number you pick is really the lowest one.

Different prices across sites: common questions

Why is the same hotel room a different price on different sites?+

Each site strikes its own deal with the hotel and shows the price its own way. Booking sites contract rooms at different rates, add different markups, and some show the base price before taxes and resort fees while others show the all-in total. Member rates, package rates, currency rounding, and dynamic pricing add more spread. The room is the same; the number is assembled differently.

Which site has the cheapest hotel prices?+

There is no site that is always cheapest. The winner changes by hotel, by dates, and even by the hour, depending on which reseller got a good rate and how each shows taxes and fees. A price that looks lowest can end up higher once fees are added at checkout. The only reliable way to know is to compare the all-in total for the exact same room and dates across the hotel's site and a couple of booking sites.

Is a much cheaper price on a booking site a catch?+

Not always, but check what you are buying. A lower number sometimes reflects a non-refundable rate, a different room type, a room without breakfast, or a price shown before mandatory fees that appear at checkout. Reputable resellers can genuinely be cheaper thanks to the wholesale rate they hold. Confirm the room type, cancellation policy, and all-in total match before deciding the cheaper one is really cheaper.

Does clearing cookies or using a VPN change the price?+

Barely, and not reliably. Most of the difference you see comes from separate contracts, how fees are shown, and signed-in member rates, not from tracking your browser. Clearing cookies or switching to a VPN might nudge a currency or a displayed rate occasionally, but it is a weak lever next to comparing the all-in total across sites and signing in for member rates.

How does Underbook help with this?+

While you look at a hotel, Underbook checks other sites for the same room and dates and shows the all-in price side by side, so you can see which site is genuinely cheapest instead of guessing. It confirms whether the two rooms actually match and tells you when it can't, rather than pretending. You still book wherever you choose; it just makes the comparison automatic.

Same room, different price. See which site really wins.

Underbook compares the all-in price for your room across booking sites while you shop, so the number you book is actually the lowest one. Free, and you always book where you choose.

+ Add to Chrome — free

or see how Underbook works →