Explained, honestly

Why is the same hotel a different price on every site?
Different deals, fees and rooms.

Because each site has its own deal with the hotel, its own markup and its own way of showing taxes and fees, and the room behind a lower price may differ too. In our 15 price snapshots, at 72% of 6,254 hotel prices some site listed the stay at least 5% under the going rate, but most of those lower listings named no room. It is not a glitch and it is usually not a scam. Here is exactly what is going on, and how to tell which number is really lowest for the room you want.

Free. If you book through Underbook we may earn a commission, which never changes which rate we show. We show the cheaper rate, whoever has it, and whether it names your room.

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 hotel 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 hotel can land at 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. Some channels add fees of their own too, from service-fee bundles to currency markups; see hotel booking fees explained.

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.

Measured, September 2026

How big the differences really are

In 15 snapshots from September 22 to October 1, 2026 we recorded 6,254 hotel prices in 348 cities on every booking site Google Hotels lists. At 4,512 of 6,254 (72%) some site listed the stay at least 5% under the price most sites agreed on, typically 17% lower, about $23 a night. So the differences are not rounding noise.

But the reasons above decide what that lower price is. At 3,765 of those 4,512 hotels the cheapest listing named no room at all: a wholesale rate published without the room it buys. At only 747 of 6,254 (11.9%) did the cheapest listing name a room, and naming a room is not proof it is the same one (some were dorm beds priced against private rooms). At chain hotels the cheapest listing named a room at 186 of 2,334, against 561 of 3,920 at independents. From September 25 on, 14 snapshots compared room names: a cheaper listing whose room name matched the room at the going rate turned up at 515 of 5,830 hotels (8.8%) on our original room check (952, or 16.3%, on the stricter October 1 check).

First snapshot, September 22, 2026. Bar chart of 424 priced hotels: at 45 the cheapest listing was 5% or more below the going rate and named a room, at 286 it was cheaper and named no room, 93 had no cheaper listing.
From the first snapshot of our hotel price study (September 22, 2026: 424 priced hotels, US market, USD; method, charts and CSVs on that page).

The practical rule that falls out of it: expect a cheaper listing, and before you pay less, check that the room name and cancellation terms match the room you were about to book.

So how do you find the actual cheapest?

Since no single site wins every time, the reliable move is to compare hotel prices rather than 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. The same rule applies when a metasearch like momondo hands you off to another seller: the number it shows is a preview, and the total that counts is the one at the checkout it redirects you to.

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 hotel and dates and shows the prices side by side (all-in when the sites report taxes and fees) and says whether the cheaper listing names the same room. When the room names don't match, it says to check before booking rather than pretending. You still book wherever you choose; it just shows you whether another site Google Hotels lists has the same hotel and dates for less.

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 hotel is the same, the room may not be, and 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 hotel and dates and shows the prices side by side (all-in when the sites report taxes and fees), so you can see which site lists it lowest and whether it names the same room. It checks whether the two listings name the same room and tells you when they don't, rather than pretending. You still book wherever you choose; it just makes the comparison automatic.

Real prices, hotel by hotel

Every site's price at 5,644 hotels in 348 cities

From our price snapshots of September 25, 2026, September 28, 2026, September 29, 2026, September 30, 2026 and October 1, 2026: each hotel's page lists every booking site Google Hotels showed, the going rate, and whether the cheapest listing named a room, with a button to check today's price for your own dates.

By region: United States · Europe · Canada, Latin America, Caribbean · Asia-Pacific, Middle East, Africa

Abu Dhabi · Albany New York · Albuquerque · Alexandria Virginia · Amalfi · Amarillo · Amelia Island · Amsterdam · Anaheim · Anchorage · Annapolis · Antalya · Antigua Guatemala · Antwerp · Aruba · Asheville · Aspen · Athens · Atlanta · Atlantic City · Auckland · Austin · Bali · Baltimore · Banff · Bangkok · Bar Harbor · Barbados · Barcelona · Bath · Baton Rouge · Beaufort South Carolina · Bend · Bergen Norway · Berlin · Big Bear Lake · Bilbao · Birmingham · Bogota · Boise · Bologna · Bordeaux · Boston · Bozeman · Branson · Breckenridge · Brisbane · Bruges · Brussels · Budapest · Buenos Aires · Buffalo · Burlington Vermont · Busan · Cabo San Lucas · Cairns · Calgary · Cancun · Cannes · Cannon Beach · Cape May · Cape Town · Carmel-by-the-Sea · Cartagena · Charleston · Charlotte · Chattanooga · Chiang Mai · Chicago · Cincinnati · Clearwater Beach · Cleveland · Cocoa Beach · Cologne · Colombo · Columbus · Como · Copenhagen · Cordoba Spain · Cork · Corpus Christi · Cozumel · Cusco · Da Nang · Dallas · Daytona Beach · Denver · Des Moines · Destin · Detroit · Doha · Dresden · Dubai · Dublin · Dubrovnik · Durham North Carolina · Edinburgh · El Paso · Estes Park · Eugene Oregon · Flagstaff · Florence · Fort Lauderdale · Fort Myers · Fort Worth · Frankfurt · Fredericksburg Texas · Fresno · Fukuoka · Funchal · Galveston · Gatlinburg · Geneva · Genoa · Gettysburg · Ghent · Glasgow · Gold Coast Australia · Granada Spain · Grand Rapids · Greenville South Carolina · Guadalajara · Gulf Shores · Halifax · Hamburg · Hanoi · Hartford · Heidelberg · Helsinki · Heraklion · Hershey · Hilton Head · Ho Chi Minh City · Hobart · Hong Kong · Honolulu · Hot Springs Arkansas · Houston · Huntsville Alabama · Hyannis · Ibiza · Indianapolis · Innsbruck · Istanbul · Jackson Hole · Jacksonville · Juneau · Kansas City · Kathmandu · Kauai · Kennebunkport · Key Largo · Key West · Knoxville · Kona · Kotor · Krabi · Krakow · Kuala Lumpur · Kyoto · Laguna Beach · Lake George · Lake Placid · Lake Tahoe · Lancaster Pennsylvania · Las Vegas · Leavenworth · Lexington · Lima · Lisbon · Little Rock · Ljubljana · London · Long Beach · Los Angeles · Louisville · Luang Prabang · Lubbock · Lucerne · Lyon · Mackinac Island · Madison · Madrid · Malaga · Malta · Mammoth Lakes · Manchester · Manila · Marco Island · Marrakech · Marseille · Maui · Medellin · Melbourne · Memphis · Merida Mexico · Mexico City · Miami · Milan · Milwaukee · Minneapolis · Moab · Mobile Alabama · Montego Bay · Monterey · Montreal · Mumbai · Munich · Mykonos · Myrtle Beach · Mystic · Nags Head · Nantucket · Napa · Naples, Florida · Nashville · Nassau · New Delhi · New Haven · New Orleans · New York · Newport Rhode Island · Niagara Falls New York · Nice · Oaxaca · Ocean City · Ogunquit · Oklahoma City · Omaha · Orlando · Osaka · Oslo · Ottawa · Palermo Sicily · Palm Springs · Palma de Mallorca · Panama City Beach · Paris · Park City · Penang · Pensacola · Perth · Philadelphia · Phuket · Pigeon Forge · Pittsburgh · Playa del Carmen · Portland · Portland Maine · Porto · Prague · Providence · Puerto Vallarta · Punta Cana · Quebec City · Queenstown New Zealand · Raleigh · Rehoboth Beach · Reno · Reykjavik · Richmond · Riga · Rio de Janeiro · Rochester New York · Rome · Rotterdam · Sacramento · Salt Lake City · Salzburg · San Antonio · San Diego · San Francisco · San Jose · San Jose Costa Rica · San Juan Puerto Rico · San Miguel de Allende · San Sebastian · Sanibel Island · Santa Barbara · Santa Cruz California · Santa Fe · Santa Monica · Santiago Chile · Santorini · Sao Paulo · Sapporo · Sarasota · Saratoga Springs · Savannah · Scottsdale · Seattle · Sedona · Seoul · Seville · Shanghai · Shreveport · Siem Reap · Siena · Singapore · Sioux Falls · Sonoma · Sorrento · South Padre Island · Split · Spokane · St. Augustine · St. Louis · St. Petersburg Florida · St. Simons Island · Stockholm · Stowe · Strasbourg · Sydney · Tacoma · Taipei · Tallahassee · Tallinn · Tampa · Tel Aviv · Tenerife · Thessaloniki · Tokyo · Toronto · Traverse City · Tucson · Tulsa · Tulum · Turin · Tybee Island · Vail · Valencia · Vancouver · Venice · Verona · Victoria BC · Vienna · Virginia Beach · Warsaw · Washington DC · West Palm Beach · Whistler · Wichita · Williamsburg · Wilmington North Carolina · Wisconsin Dells · Zagreb · Zermatt · Zurich

All 5,644 hotels by city

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

Underbook compares the price for your hotel and dates, all-in where the sites report taxes and fees, across booking sites while you shop, so you see the lowest all-in number and whether it names the same room. Free, and you always book where you choose.

+ Add to Chrome — free

or see how Underbook works →