Most hoteliers check RevPAR, ADR and occupancy every day. There is one figure, however, that rarely gets the same attention, even though it determines real profitability: cost of goods sold, or CoGS. In a hotel, CoGS covers all the direct costs of delivering the stay: supplies, food and beverage, cleaning, consumables, energy and guest amenities. Put simply, it is everything you need in order to “produce” a night in your hotel.
TL;DR
- CoGS is the direct cost of producing the stay. RevPAR shows what each available room earns; CoGS shows what it costs to earn it.
- Hotel A: RevPAR €100, CoGS €45, margin €55. Hotel B: RevPAR €90, CoGS €25, margin €65. The hotel with the lower RevPAR is the more profitable one.
- Track CoGS per occupied room and by department through your PMS or ERP. Saving €3–4 per room per day adds up to thousands of euros a year without raising a single rate.
What counts as cost of goods in a hotel
In retail or manufacturing, cost of goods sold is straightforward: the cost of the product you sold. In hospitality the “product” is the stay itself, so CoGS is broader. It includes every direct cost consumed in delivering a guest’s night, across every department that touches it.
Depending on the size and structure of the property, hotel CoGS typically includes:
| Category | What it covers |
|---|---|
| F&B cost | Food, beverages and raw ingredients |
| Housekeeping | Consumables, cleaning chemicals, linen and laundry |
| Utilities | Electricity, water and gas |
| Amenities | Toiletries, mini-bar stock, welcome items |
| Maintenance and linen replacement | Repairs, wear and tear, replacement of worn items |
What CoGS does not include is just as important: payroll, marketing, administration, insurance, rent and depreciation are operating or ownership costs, not direct costs of production. Keeping them separate is what makes CoGS useful as a measure of operational efficiency rather than a restatement of the whole P&L.
Continuous monitoring of these categories through your PMS or an ERP system is what allows you to spot variances early and manage waste, rather than discovering at the end of the season that the laundry bill doubled.
Where CoGS sits among your cost metrics
It helps to be precise about how CoGS relates to the other cost figures hoteliers use. CPAR (cost per available room) spreads all operating costs, including payroll and overheads, across every room whether sold or not; it sets the break-even floor for the whole operation. CoGS is narrower and sharper: only the direct costs of producing the stay, most of which move with occupancy. That is why CoGS is usually expressed per occupied room, while CPAR is expressed per available room.
The two answer different questions. CPAR tells you what the hotel costs to exist. CoGS tells you what each guest costs to serve. Subtract both from revenue and you arrive at GOP, and from there at GOPPAR. Reading all three together is what turns a set of isolated ratios into a picture of how the business actually makes money.
Common pitfalls
A few mistakes appear again and again when hotels start measuring CoGS:
- Mixing in labour. Housekeeping wages are an operating cost, not a cost of goods. Including them inflates CoGS and hides the movement in consumables that you are trying to see.
- Booking purchases, not consumption. A large delivery of amenities booked in one month distorts that month’s figure. Measure what was used, which means stock counts.
- One number for the whole hotel. Departmental CoGS is where the insight lives. A single blended figure smooths away exactly the variances you need to catch.
- Ignoring seasonality. Compare CoGS per occupied room against the same period last year, not against last month, or normal seasonal shifts will look like problems.
How cost of goods connects to RevPAR
RevPAR (revenue per available room) shows how much revenue each available room brings in. It is the industry’s favourite benchmark, and rightly so: it captures both rate and occupancy in one number.
What it does not show is how much it cost to produce that revenue. Two hotels with very different cost structures can post similar RevPAR figures and end the year in very different financial positions.
Consider the following example:
| Hotel A | Hotel B | |
|---|---|---|
| RevPAR | €100 | €90 |
| CoGS per available room | €45 | €25 |
| Margin after CoGS | €55 | €65 |
Hotel A wins on RevPAR by €10. Hotel B, despite the lower RevPAR, keeps €10 more per available room. Across a 100-room property over a full year, that €10 difference is €365,000 of margin.
The conclusion is unavoidable: without cost analysis, RevPAR can mislead. A hotel that chases RevPAR through generous inclusions, lavish amenities or an F&B offer that costs more than it earns can look like a market leader on the revenue league table while quietly falling behind on profit.
Reading RevPAR net of cost
A useful habit is to look at RevPAR net of CoGS per available room, the €55 and €65 in the table above. This “margin per available room” is the figure that actually pays for payroll, marketing and overheads, and ultimately produces GOPPAR. When you evaluate a pricing change, a new package or a new amenity programme, ask what it does to this net figure, not just to top-line RevPAR.
How to track CoGS effectively
Modern property systems make this far easier than it used to be. A PMS or hotel ERP can show you:
- Cost per occupied room (CPOR): the direct cost of servicing each room that was actually sold
- Cost per guest or per day: useful when occupancy per room varies, for example in family or resort properties
- Consumption of materials and stock by department: F&B, housekeeping, maintenance and so on
Tracking at this level of detail is what turns CoGS from an accounting entry into a management tool. When housekeeping consumables per occupied room rise sharply with no change in occupancy or guest profile, something has changed: a supplier, a dosing routine, a stock-control gap. Seen monthly by department, that variance is obvious and fixable. Seen once a year as a single total, it is invisible.
The compounding effect of small savings
Here is the insight that makes CoGS worth the effort: even €3–4 of savings per room per day can translate into thousands of euros of profit per year, without any increase in price.
The arithmetic is simple. On 10,000 occupied room-nights a year, €3 saved per room-night is €30,000. On 20,000 room-nights, it is €60,000. None of that requires a single extra booking or a single euro of ADR growth; it goes straight from cost of goods to gross operating profit.
Practical controls that work
A few controls that consistently reduce CoGS without touching the guest experience:
- Par stock levels for amenities, linen and cleaning supplies, reviewed each season rather than set once and forgotten
- Portion and recipe costing in F&B, so every menu item has a known cost and a known margin
- Linen life tracking, since premature replacement is one of the most common hidden costs in housekeeping
- Departmental variance reviews, weekly in season, comparing actual consumption per occupied room against target
- Energy per occupied room, so utility costs are judged against activity rather than in absolute terms
How cost of goods shapes revenue strategy
Understanding CoGS does more than tighten cost control. It changes how you set prices and design offers.
More accurate pricing. When you know your real margin per room, you know how much room you have to move. Rate decisions stop being a guess about what the market will bear and become a calculation about what the hotel actually keeps.
Targeted promotions. Knowing your profitability threshold lets you design offers that fill rooms without filling them at a loss. If your CoGS per occupied room is €25, a €40 last-minute rate still contributes €15 towards fixed costs, whereas a €20 rate loses money on every stay. Without the CoGS figure, both look like “a booking”.
Strategic reallocation of resources. Departmental CoGS shows where each euro of cost produces the most margin. That evidence supports decisions about where to invest, where to simplify and where to stop offering something guests do not value enough to pay for.
In other words, cost of goods is the counterweight to RevPAR. One shows how much you make; the other shows how much you keep. Managing one without the other is like steering with one hand.
Bringing the two together
The most effective operators keep a very short list of numbers in front of them every day, and they read them as a set:
| Metric | Question it answers |
|---|---|
| RevPAR | How much revenue does each available room generate? |
| CoGS per occupied room | What does it cost to deliver each stay? |
| Margin per available room | What is left to cover payroll, overheads and profit? |
When RevPAR rises and margin does not follow, cost of goods is almost always the reason. When margin improves at a flat RevPAR, someone in operations has done something right, and they deserve to know it.
Conclusion
Profitability does not depend only on how full the hotel is, but on how efficiently it runs. Cost of goods is the metric that connects revenue to real performance. Track it systematically and you can improve what you keep from every euro of RevPAR without raising prices at all, simply by controlling what it costs to earn them.
Success is not selling more. Success is keeping more.
How Hotelia360 helps
Hotelia360 connects your PMS, accounting and purchasing data into BI dashboards that show CoGS per occupied room and per department alongside RevPAR, so margin per available room is visible daily rather than reconstructed at year-end. Our AI agents monitor consumption patterns and flag variances the moment they appear, and our revenue and channel management work is always evaluated on what the hotel keeps, not just on what it sells.
Published by Hotelia360, Heraklion. Also available in Greek.



