Skip to content
WisDom RM Revenue Intelligence
Cost & profitability

What is hotel CPOR and how do you calculate it?

CPOR (Cost Per Occupied Room) is what each room you sell costs you — housekeeping wages, linen and laundry, guest supplies, energy — spread over the room nights you sold. It is the number that shows where revenue ends and profit begins. And it is the number most independent hotels have never calculated.

What CPOR is — the definition in one line

CPOR answers one simple question: how much does each room I fill cost me? The formula:

The formula CPOR = Variable room costs ÷ Rooms sold

Only variable costs go on top: the costs that exist because the room was sold. Housekeeping, linen, guest supplies, the extra electricity and water. Management and front-desk salaries do not go in — they run whether you sell or not — and neither do OTA commissions, food and beverage or taxes. The restaurant and the spa have their own departments, following the logic of the USALI standard.

How to calculate it — an example in euros

Take a hotel with 47 rooms and one month of the season at 70% occupancy:

Example · 47-room hotel · one month Available: 47 × 30 nights = 1,410 rooms
Occupancy 70% → sold: 987 rooms

Housekeeping: €5,620
Linen / laundry: €2,590
Guest supplies: €1,720
Energy: €3,890
Total: €13,820

CPOR = 13,820 ÷ 987 ≈ €14
💡

Did you know? CPOR does not stay still: it changes with every bill and every month. WisDom RM calculates your hotel’s CPOR and break-even automatically every night.

Try it free for 14 days →

Every room you sold this month cost you €14 — before OTA commissions, the building’s fixed costs, loans or your own salary. If your average rate (ADR) is €86, each room night contributes €72 to your fixed costs — not €86.

What to watch on the top line

  • Housekeeping wages with contributions: the real cost to the employer, not the net pay.
  • Breakfast, if it is in the rate: it costs per room night — leave it out and your CPOR comes out falsely low.
  • The energy share: you do not need a meter in every room. A sensible split (by square metres or by history) is enough, as long as it stays the same from month to month.
  • Consistency over precision: a CPOR calculated the same way every month is worth more than a “perfect” one done once and forgotten.

Full and variable CPOR — the rate floor

Many textbooks define CPOR as full cost: they also spread the fixed costs — management salaries, the loan, insurance — over the rooms sold. The number then comes out several times bigger, and it brings a wrong conclusion with it: that “CPOR goes up when occupancy falls”. That is an arithmetic effect of the allocation, not a real rise in cost.

The €14 above is variable CPOR, and it does not behave like that: variable costs and rooms sold move together, so their ratio stays stable. It does not change with size either — two hotels that run the same way with a different number of rooms get almost the same CPOR, because it is a cost per room, not a total.

This number is your rate floor — the marginal cost below which every sale loses money — and it tells you when a rate cut is a mistake. Above €14, every sale — even a “cheap” one — adds something towards the fixed costs. Below €14, every room you fill makes you poorer: you pay to host the guest.

The key: “better full than empty” is true only above variable CPOR. Without that number, the phrase is a wish — not a strategy.

And one warning in the other direction: the floor is not a target. If you sell close to variable cost all season, you cover the cleaning but not the fixed costs, the loans or the next renovation. The floor protects you from the loss of a single night; your break-even shows you whether the year works.

CPOR and ADR: the pair that shows the margin

On its own, ADR tells you what you collect (and RevPAR how much each available room brings in overall). On its own, CPOR tells you what you spend. Together they show the one number that counts in the end:

Margin per room sold ADR €86 − CPOR €14 = €72 contribution to fixed costs

This is also where the most common low-season illusion hides: an offer at €40 looks like “better than nothing”. With a variable CPOR of €14 it does contribute €26 — but add a 20% OTA commission on top (€8) and the contribution falls to €18.

A low-season offer · CPOR €14 €40 offer through an OTA: 40 − 8 (20%) − 14 = €18
Same offer, booked direct: 40 − 14 = €26
26 ÷ 18 = 1.44 → direct leaves 44% more

The same room, sold direct, leaves 44% more. Without CPOR, these differences are invisible.

The three most common mistakes

  • It is not calculated at all. The PMS shows revenue, not costs — so the number simply does not exist anywhere, and rates are set “by eye” or by looking only at the hotel next door.
  • Every hotel expense goes on top. That gives an inflated number that helps no pricing decision. Departments are kept separate.
  • It is calculated once and left in a drawer. Wages, laundry and energy change from month to month, and CPOR changes with them. It needs a figure for every month, not a yearly average.

Conclusion

CPOR is the other side of pricing: you cannot know whether a rate is “good” if you do not know what the room costs you. Start simple — one month’s variable costs divided by the room nights you sold — and repeat the same calculation every month. From then on, no rate decision is made blind: it has a floor, a margin and a target.

Alkis Tselemegkos
Alkis Tselemegkos
Creator of WisDom RM

Mathematician with studies in hospitality management and years of night shifts in hotels. WisDom RM — and this blog — were born on the night shift.

LinkedIn ↗

Less analysis.
More time for what matters.

WisDom RM turns the night’s data into decisions that you make — for independent hotels, with no subscription.

See how it works
← All articles