Channel markups: pricing Airbnb, Booking.com and Agoda differently without losing margin
If every channel shows the same nightly price, every channel leaves you a different amount. A channel markup fixes that by raising the price on each channel just enough to cover what that channel keeps. The catch is that the obvious calculation is wrong, and Booking.com's terms limit how far you can go. This guide gives the formula, a worked table in baht, and the points to check before you switch markups on.
Key takeaways
- To keep the same net, divide by (1 − fee), do not add the fee: a 15% commission needs a 17.6% markup, not 15%.
- Airbnb's 15.5% host-only fee needs an 18.3% markup to leave the same net as a fee-free booking.
- On the Booking.com General Delivery Terms we read, Thailand is not on the No Parity or Narrow Parity lists, so the wide-parity wording applies: Booking.com should get rates the same as or better than your other channels.
- Equalising net is a starting point, not a rule. Payout timing, cancellations and which channel fills which months can justify a lower net on one channel.
Why the same price leaves a different net on each channel
Each OTA takes its share differently, and the differences are larger than the headline percentages suggest. We compare them in detail in Agoda vs Airbnb vs Booking.com; the short version:
- Airbnb charges most hosts a single host-only fee of 15.5% (others typically 14–16%), and hosts who use property management software must use it. The guest sees one price that includes the fee. More in Airbnb's 15.5% host-only fee.
- Booking.com charges 10–25% commission depending on property type and location, with programmes such as Preferred Partner adding to it and Genius discounts lowering the price the guest pays.
- Agoda does not publish a rate. Its compensation is “either a percentage of the reference sell rate or a markup added to the loaded rate”, and your contracted figure is in YCS under Finance, Contracted compensation. For Thai properties that are not VAT-registered, Agoda adds 7% VAT on its commission.
So a 4,000 THB night is not worth 4,000 THB anywhere except a direct booking, and it is worth a different amount on each OTA.
The formula for a markup that equalises net
Start from the net you want per night (your base price), work out each channel's effective fee (commission plus anything charged on top of it, such as VAT on commission), then:
| Channel | Effective fee | Markup | Price on the channel (THB) | Fee (THB) | Net (THB) |
|---|---|---|---|---|---|
| Direct booking | 0% | 0% | 4,000 | 0 | 4,000 |
| Airbnb (published) | 15.5% | 18.3% | 4,734 | 734 | 4,000 |
| Booking.com (assumed) | 15% | 17.6% | 4,706 | 706 | 4,000 |
| Agoda (assumed) + 7% VAT on commission | 15% + 1.05% = 16.05% | 19.1% | 4,765 | 765 | 4,000 |
Work out the effective fee from your statements
Contract rates miss the extras. Once a quarter, take each channel's payouts for stays in the period and divide by the gross booking value: 1 minus that figure is your effective fee. Programme uplifts, discounts you fund and VAT on commission all show up there.
Rate parity: what the OTAs' terms say
Before you put one channel above another, check what you signed. Parity clauses are contract terms, and they differ by platform and by country.
Booking.com
Booking.com's General Delivery Terms (the version online on 4 November 2026) split countries into three groups. No Parity Countries are the European Economic Area, Chile, Indonesia, Russia, South Africa and Switzerland. Narrow Parity Countries include Australia, China, Hong Kong, Japan, South Korea, the UK and New Zealand. Every other country is a Wide Parity Country. Thailand is on neither list, so on these terms the wide-parity wording in Annex 5 applies to Thai properties.
That wording asks for rate parity, meaning the same or better rates (and conditions such as cancellation terms) than you offer to any Booking.com competitor, including other online agencies and your own website, and availability parity, meaning availability at least as favourable as any competitor gets. Rates for a closed user group (opt-in, password-protected members with a previous booking) are excluded as long as they are not made public.
For context, the European Commission says Booking.com removed parity requirements for businesses in the EEA in July 2024, under the Digital Markets Act. We found no comparable published decision by Thailand's competition authority on OTA parity clauses.
Airbnb
Airbnb's pricing and payment transparency policy prohibits offering or soliciting discounts to book off Airbnb and requires that the price guests see is the full price. We found no clause in it requiring Airbnb's price to match or beat other channels.
Agoda
Agoda's general terms sit in YCS under Resources, Terms and Conditions, not on a public page. Read your version for any rate or availability parity wording before you price Agoda below or above the others.
What guests actually see
Guests compare. The same villa on three sites at three prices can look like a pricing error, or send the guest to the cheapest site, which is usually the one that leaves you least. Check the guest-facing price, not the rate you load:
- Airbnb shows the total including its fee, because hosts on the single fee pay it all. A cleaning fee or length-of-stay discount changes the total per night, so compare like for like.
- Booking.com applies Genius and other programme discounts after your rate, so a Genius member may see less than the price you sent.
- Agoda may calculate its compensation as a markup on the rate you load, in which case the guest sees more than your rate. Open your listing as a guest to see the real figure.
A useful rule: after markups and discounts, the gap between the cheapest and dearest guest price for the same night should be small enough that nobody notices without looking for it. If it is large, reduce markups and accept a small net difference.
When not to equalise net
Equal net per night is a neutral default. A channel strategy sometimes beats it:
- Fill and timing. A channel that reliably fills short-notice gaps or shoulder months can be worth a lower net than one that only fills peak weeks you would sell anyway.
- Cancellations and no-shows. Compare how many bookings each channel loses before arrival. A higher net on paper is worth less if a share of it cancels.
- Cash flow. Payout timing differs by channel and payment model. Money that arrives sooner can justify a slightly lower rate.
- Guest fit. Families on Airbnb, regional travellers on Agoda and business or short stays on Booking.com behave differently on length of stay and wear on the unit.
- Parity. As above, on Booking.com's wide-parity terms the cheapest-channel position is not entirely your choice.
Pick a reason for any deliberate difference, write it down and check once a quarter whether it still holds.
How per-channel markups work in Propool
In Propool the markup is the last step. Price rules for dates, weekdays, lead time and gaps between bookings calculate the nightly price, a one-off price typed on the calendar replaces it for that night, and floor and ceiling limits keep the rule price inside your range. The channel's markup is then applied to that price: a 3,500 THB night with a 10% Booking.com markup goes to Booking.com at 3,850 THB, while your calendar price stays 3,500 THB.
- Set a markup for each channel, and switch the calendar between showing your price and the price after a channel's markup.
- Show the calendar as your price or as the price after a channel's markup, so you can check what each channel receives.
- Before the first sync, compare a snapshot of the channel's current prices next to yours.
- Floors and ceilings apply to your calendar price before the markup, so set them as your own price, not the price a channel shows.
- Availability-only connections leave prices with the channel, and calendar links (iCal) carry dates only, so markups do not apply to either.
See the channel manager guide for how Airbnb, Booking.com and Agoda connect.
Questions
How much should I mark up Airbnb to cover the 15.5% fee?
About 18.3%. Divide the net you want by 0.845: a 4,000 THB net needs a 4,734 THB price on Airbnb. Adding 15.5% would leave you short.
Is it allowed to charge more on Booking.com than on Airbnb or Agoda?
On the Booking.com General Delivery Terms we read, Thailand falls under the wide-parity wording, which asks for Booking.com rates the same as or better than other channels. Check your own agreement before pricing Booking.com highest.
Does Airbnb require rate parity?
Airbnb's pricing transparency policy bars offering discounts to book off Airbnb and requires the full price to be shown, but we found no clause requiring Airbnb's price to match other channels.
What markup covers a 15% commission?
17.6%, because the commission is taken from the marked-up price. The formula is 1 divided by (1 minus the fee), minus 1.
Should I include VAT on Agoda's commission in the markup?
If your Thai property is not VAT-registered, yes: Agoda adds 7% VAT on its commission, so a 15% commission costs about 16.05% of the booking.
Product guides
Sources
- Airbnb service fees
- Pricing and payment transparency
- How much commission do I pay?
- General Delivery Terms (parity clauses, Annex 5)
- How the DMA ensures businesses using Booking.com are free to set their prices
- What commission do I pay to Agoda?
- VAT implication for Thailand properties
- What should I do if I can't accommodate a guest? (terms location in YCS)