Why Do Hotels Have Two Prices? The Real Reasons (2026)
Table of contents
A hotel room is not one price. It is a price list, and different channels see different rows of it. The number on Booking.com is real, but it's only the row every visitor is allowed to see. There are usually at least three or four other rows for the same room, same dates, same reservation system, and most travelers never learn they exist. Here are the four real reasons, and how to tell which one applies to a hotel you're already looking at.
Key takeaways
- A hotel's public rate is a rate-parity price: kept identical across every channel a normal traveler can browse, because most distribution contracts require it.
- Member rates, app-only discounts, opaque deals, and wholesale rates all sit outside that rate-parity system, which is exactly why they can be lower.
- None of these are "shady" or lower-quality bookings. Same room, same reservation, different price list.
- The wholesale or trade rate is usually the deepest discount of the four, and traditionally the hardest to access without an agent credential.
- SuiteScanner checks the wholesale rate on a specific hotel directly, no credential required.
The short answer: it's not one price, it's a price list
Hotels sell the same room through many channels at once: their own website, Booking.com, Expedia, a corporate travel program, a wholesaler, a loyalty app. Managing all of that is a full discipline called revenue management, and its whole job is deciding what each channel is allowed to charge for the same inventory on a given night.
The price you see on a normal search is the public row of that list. It's the one every channel is contractually required to match. The other rows exist too, they're just not shown to you unless you fit a specific category: a loyalty member, a corporate account, an app user, or someone with access to the trade channel.
Each of these rows has its own industry name too, rack rate, BAR, net rate, covered in full in our hotel pricing terms glossary if you want the vocabulary behind the concept. Here's how the four rows typically compare on the same room, same dates:
| Channel | Typical discount | Who can access it |
|---|---|---|
| Public rate | Baseline | Anyone, no conditions |
| Loyalty member rate | 5 to 15 percent | Logged-in brand loyalty members |
| Opaque or app-only deal | 10 to 25 percent | Mobile app users, or travelers flexible on hotel name |
| Wholesale or trade rate | 15 to 41 percent | Travel agents, or a service like SuiteScanner that checks it directly |
Wholesale rate range reflects four hotels checked against Booking.com on August 6, 2026. See the real price examples for the full breakdown.
Reason 1: rate parity keeps the public price identical everywhere
Most hotel distribution agreements, with Booking.com, Expedia, and the hotel's own brand standards, include a rate-parity clause. It says the hotel can't quietly discount its price on one public channel without matching it everywhere else the public can see it.
This is why searching the hotel's own site, Booking.com, and Expedia for the same room usually turns up nearly identical prices. It isn't coincidence and it isn't the hotel being lazy about pricing. It's a contractual floor that keeps every public channel honest with each other, which also means it can't move even when the hotel genuinely wants to discount that room. See our online vs. direct booking guide for what this means specifically for the "should I just call the hotel" question, and our why do hotel prices change guide for how the same channel's price moves over time, a related but different question.
Rate parity was built to protect OTAs from a hotel undercutting them on its own site, and in practice it works: the public price on a given room rarely differs by more than a dollar or two between the hotel's own site and the major OTAs. The gap almost never shows up on the public channels. It shows up on the channels parity doesn't cover.
Reason 2: member and app-only rates
Almost every major hotel brand now sells a loyalty-member rate, usually 5 to 15 percent below the public price, unlocked by creating a free account and logging in before you search. Rate parity rules generally exempt these, since the discount only appears to a logged-in member, not the general public.
It's a real discount and worth claiming if you already have an account. What it isn't is a workaround for the rate-parity system. It's a separate, sanctioned discount tier the brand carved out for itself.
Reason 3: opaque and mobile-exclusive deals
Some booking apps sell rooms without naming the hotel until after you pay, or restrict a discounted price to the mobile app only. Both tactics sit outside rate parity for the same reason member rates do: the discounted price isn't shown to a general public search, so it isn't the price the parity clause protects.
These deals are real, but they trade away information or flexibility (you often can't choose the exact room type, or you commit before you know the hotel name) in exchange for the lower number.
Reason 4: the wholesale or trade channel
The deepest of the four, and the one most travelers never encounter. Hotels sell a contracted block of rooms to travel agents and tour operators at a wholesale, or trade, rate, often 15 to 40 percent below the public price. It sits outside rate parity because it was never shown to the public in the first place: it's a private price list negotiated directly with trade partners.
This is the same mechanism our hotel wholesale rates explained guide covers in full. Access has traditionally required an IATA number or a consortia membership, credentials most travelers don't have and have no reason to build for a single trip. SuiteScanner checks whether a wholesale rate exists on a specific hotel without requiring one.
How to tell which "second price" applies to a hotel you're looking at
A simple order to check, from easiest to access to hardest:
- Do you already have a loyalty account with that brand? Log in and re-search. If the price drops, that's reason 2.
- Are you flexible on hotel name or room type? An opaque app might beat the named-hotel price, that's reason 3, at the cost of certainty.
- Is there a wholesale rate on this exact hotel? That's usually the largest gap of the four, and the one SuiteScanner is built to check: search the hotel with us and we look for a trade rate on that specific room and dates.
Myths, debunked
"If a hotel has a lower price somewhere, the public one is a scam."
No. Rate parity is a real, standard contractual mechanism, not a trick played on the public. The public price is genuine, it's simply the row of the price list open to everyone with no conditions attached.
"Wholesale rates are only for shady discount sites."
The trade channel is decades old and used by travel agents at reputable agencies every day. It's unfamiliar to most travelers, not illegitimate.
Frequently asked questions
Is the public hotel price ever the real lowest price?
Sometimes, especially for hotels with no wholesale contract or loyalty program. But on a five-night stay with real trade access, we've seen the gap run as high as 41 percent, so it's always worth checking before assuming the public price is final.
Do these four price tiers stack together?
No. Each is a separate price list for the same room. You pick the channel, you get that channel's price, not a combination of discounts.
Why don't hotels just lower the public price instead of running four price lists?
Rate parity and brand-standard agreements make the public price sticky across every channel that shows it. Running separate, less visible channels is how a hotel adjusts pricing without breaking that agreement.
Published August 6, 2026.