ES EN
Back to blog
Nightfill blog

A percentage floor is not a floor: 55 percent off nets 72 pesos

A 55 percent floor on an MXN 300 bed allows a listed 135. After a 0.729 promo stack and 26.7 percent real commission it nets 72. Our net floor is 130.

Published October 3, 2026 · 6 min read
Charming Andalusian courtyard with lush plants in Cordova, Spain, capturing traditional Spanish architecture.
Photo: Domenico Adornato / Pexels

The number you call your floor

Ask an operator how low they will go on a dorm bed and the answer comes back as a percentage. Never more than half off. Thirty percent in low season and no further. It is an easy rule to carry in your head and an easy one to hand to whoever is on reception at seven in the evening with four beds still empty.

It is also not a floor. A percentage describes what you took off your own rate card. It says nothing about what reaches your bank account, because between the rate card and the bank there are two more multiplications, and you did not make either of them.

Two floors that do not agree

Our pricing engine has run every morning on Maka Hostel in Oaxaca since August 2026, unattended. Two of its hard limits sit in the code as constants. The first: no dorm bed is ever written below 55 percent off base. The second: no bed may net less than MXN 130 once the worst channel and the deepest promotion stack have taken their share. One floor in percent, one in pesos.

Run a bed through both and they come apart. Take a base of MXN 300. The percentage floor allows MXN 135 as a listed price. Now apply what we have actually measured on the channel side. One real eight-bed-night Hostelworld booking carried three promotions at once — length of stay, mobile, app — and they did not add up to 30 percent off. They multiplied: 0.9 × 0.9 × 0.9 = 0.729. That same booking came back with an effective commission of 26.7 percent, well above the 20.9 percent the channel's own schedule implies.

So the arithmetic goes: 135 × 0.729 = MXN 98.41 before commission. Take 26.7 percent off that and MXN 72.14 lands. Use the gentler 20.9 percent and it is MXN 77.85. Either way, a rule that was obeyed to the letter has just permitted a bed that nets about 72 pesos against a floor of 130. The percentage protected nothing.

The arithmetic runs the other way

If the number you care about is the net, you do not get to a listed price by subtracting. You get there by dividing.

listed floor = net floor ÷ (promo multiplier × (1 − commission))

With our numbers: 130 ÷ (0.729 × 0.733) = 130 ÷ 0.534 = MXN 243. On the published 20.9 percent commission instead of the observed 26.7, it is MXN 225.

That is the lowest price we can show on that channel, with that promotion stack live, and still clear 130 pesos a bed. Not 135. Not half off anything.

What 243 collides with

The engine checks three named competitors on Hostelworld every morning, probing a date three days out for one guest and one night. Across 32 logged runs the cheapest bed in that set came back between MXN 168 and MXN 206.

Hold the two numbers next to each other. The market floor in our competitive set tops out at 206. The listed price we need in order to clear our own net floor, on the worst channel with every promotion switched on, is 243. There is no price that is both at market and above our floor. The window does not exist.

That is not an argument for ignoring the floor. It is the finding. It says that on that channel, with that stack, the bottom of our rate card is not a place we can trade at all. The lever is not how deep the discount goes. It is which promotions are switched on at the bottom of the band, and on which channel.

The bar tab does not rescue it

The usual answer here is that the bed is a loss leader and the guest spends once inside. We measure that, daily. Bar and activity income, margin-weighted at 27 percent and 36 percent from our 2025 profit and loss, divided by occupied beds, has run at a rolling MXN 27 per bed over the last eight logged days, against a 32-peso baseline from that same P&L. Day to day the raw figure swings between 3 and 123 pesos a bed, which is why we use the rolling number and not yesterday's.

Add 27 to the 72 and you get 99. Still under 130, and that is before the bed has paid for linen, laundry, water, power and the share of a staff hour it consumed. Ancillary income is real and worth measuring. It is not large enough to be the argument for a price.

Why the percentage rule survives anyway

Because it is the number the screens show you. Your PMS shows a rate and a discount. The channel extranet shows a percentage off and a promised visibility boost. Neither shows the net per bed after the stack, because neither knows your costs and the channel has no reason to compute that for you. The percentage is the only floor the software offers, so it becomes the floor you use.

It is also the only one an owner can delegate without asking anyone to do arithmetic at seven in the evening. So the fix is not to stop using a fixed number: do the division once per channel and put a peso price on the wall instead of a percentage.

Three numbers to write down this week

  • Your variable cost per occupied bed. Linen and laundry, breakfast, water and power, the share of a staff hour. One month of invoices divided by one month of occupied bed nights is close enough to decide with. That cost plus whatever margin you insist on is your net floor.
  • Your worst channel's effective commission. Not the rate in the contract — the rate you get when you divide what landed in the bank by what the guest was charged, on one real booking you can still look up. Ours differed from the contract by almost six points.
  • Your deepest live promotion stack, multiplied out. Three 10 percent promotions put you at 0.729, not 0.70. Check the extranet for what is actually enabled rather than what you remember enabling.

Those three give you a net floor and a divisor that turns it into a listed price per channel. Do your worst channel first; that is the one that binds.

What a floor is for

Ours is enforced before anything is published, not after. If a computed price falls below the floor, or under 50 pesos, or is not a number at all, the entire morning run aborts and not one rate is touched. Across 32 runs that gate has never fired, which tells us the formula above it is behaving — not that the gate is decoration.

A floor you check after the booking has landed is an accounting note. A floor that can stop a price from being published is a floor.

If you would rather have this arithmetic running every morning than doing it by hand, that is what we do: view pricing and start a free 14-day pilot on your own numbers.

revenue-managementpricingotacomisionescanalesmargen