Skip to content
Guide

Hotel KPIs: occupancy, ADR and RevPAR explained clearly

At the end of the month someone says: “We were well booked.” But was the month also well sold? Occupancy, average rate and RevPAR answer that question in a few minutes, as long as you calculate them correctly and don’t compare apples with oranges. This guide explains the key hotel KPIs with formulas and one worked example throughout, and shows which five numbers a small hotel should look at every week.

01

The three core KPIs: occupancy, ADR and RevPAR

All three KPIs are based on two quantities: available and sold room nights.

A room night is one room for one night. A 25-room hotel has 750 available room nights in a 30-day month. If a room is occupied for three nights, that is three sold room nights. These two figures, together with room revenue (revenue from the overnight stay alone, without breakfast, restaurant or spa), give you the three core KPIs.

Occupancy tells you what share of the available room nights was sold. ADR (average daily rate) tells you what a sold room night brought in on average. RevPAR (revenue per available room) spreads room revenue across all available room nights, including the empty ones. It therefore shows how well you sold your capacity as a whole.

Why RevPAR matters so much: high occupancy can almost always be reached with low prices, and a high ADR with a few expensive bookings. Both can hurt the business. RevPAR only rises when the balance between price and occupancy improves. Decide once in-house whether blocked rooms, for example during renovation, count as available, and then stick with it.

Formulas for the core KPIs
Formulas for the core KPIs
KPIFormulaAnswers the question
OccupancySold room nights ÷ available room nights × 100How full was the hotel?
ADRRoom revenue ÷ sold room nightsAt what price did we sell?
RevPARRoom revenue ÷ available room nights, or ADR × occupancyHow much did each available room earn?
TRevPARTotal revenue (rooms, breakfast, food and beverage, spa, extras) ÷ available room nightsWhat does a room bring in including all ancillary revenue?
GOPPARGross operating profit (GOP) ÷ available room nightsWhat is left after operating costs per available room?
02

A worked example for a 25-room hotel

Let’s take a hypothetical 25-room hotel in September, i.e. 30 days. All figures are an example and net, i.e. excluding VAT and tourist tax. The hotel sells 510 room nights in the month, generating room revenue of €56,100. With breakfast, restaurant, bar and extras, total revenue comes to €78,000. After staff, cost of goods, energy, commissions and other operating costs, a gross operating profit (GOP) of €24,000 remains.

That gives these KPIs: 750 available room nights, 68% occupancy, €110 ADR and €74.80 RevPAR. The cross-check works: €110 × 68% also gives €74.80. Across the whole hotel, each available room brings in €104 of total revenue per night (TRevPAR) and €32 of operating profit (GOPPAR).

It gets interesting when you compare. Suppose the hotel had sold 570 room nights at €95 in September the previous year: 76% occupancy, but only €54,150 room revenue and €72.20 RevPAR. So occupancy fell, yet RevPAR rose, and 60 fewer rooms had to be cleaned. That is exactly the context you miss if you only look at occupancy.

03

Looking ahead: pickup, pace, booking window, channel mix and cancellation rate

Occupancy and RevPAR tell you what happened. The following KPIs show what is coming.

Pickup is the number of room nights added for a future period within a given time span, minus cancellations. Example: for the first Saturday in October, 14 rooms were on the books on Monday and 19 on Sunday. The weekly pickup is five rooms. Unusually high pickup is a signal that you may be too cheap; if it doesn’t come, it’s time for a promotion or a look at the OTAs.

Pace compares today’s on-the-books position for a period with the position the same period had at the same lead time last year. If the hotel has 15 rooms booked 30 days before the October weekend, compared with 11 at the same point last year, demand is running ahead. Pace is the most important early warning, because it shows deviations weeks before the stay.

The booking window measures how many days lie between booking and arrival. A city hotel often lives on short-notice bookings, while a mountain resort hotel gets many bookings months in advance. If you know your booking window, you know when rate changes take effect and when they come too late. Channel mix shows through which routes your room nights are sold: direct, by phone, via Booking.com, Expedia or other OTAs. It is the basis for judging commissions and dependencies.

The cancellation rate sets cancelled bookings against all bookings for a period. If 18 out of 180 bookings are cancelled, it is 10%. If it rises noticeably, look at channel and rate: flexible OTA bookings often cancel more than direct bookings with a deposit. No-shows belong in a separate figure, because they have different causes and different consequences for the invoice.

Forward-looking KPIs at a glance
Forward-looking KPIs at a glance
KPIHow to calculate itWhat you use it for
PickupRoom nights on the books today minus room nights on the books X days ago, for the same stay periodSeeing whether a date is picking up or stalling
PaceOn the books today ÷ on the books at the same lead time last yearEarly warning weeks before the stay
Booking windowAverage days between booking date and arrivalFinding the right moment for rate changes
Channel mixRoom nights or room revenue per channel ÷ totalJudging commission costs and OTA dependency
Cancellation rateCancelled bookings ÷ all bookings × 100Reviewing rate and cancellation terms
04

The five numbers a small hotel should check every week

A hotel with 15 to 50 rooms doesn’t need a revenue team, but it does need a fixed quarter of an hour each week. For example, go through the same five numbers every Monday, write down what stands out, and decide whether to change rates or restrictions. Regularity matters more than the perfect number: if you look the same way every week, you start to see patterns.

Always look at two periods: last week, to learn, and the next 30 to 90 days, to act. For the future, what counts is the on-the-books position per date and the pickup of the last seven days; for the past, RevPAR, ADR and channel mix.

Your 15-minute weekly review

  • On the books for the next 30, 60 and 90 days: where are the gaps, where is it getting tight?
  • Pickup of the last 7 days: which dates are picking up, which are standing still?
  • Last week’s RevPAR compared with the same week last year or with budget
  • ADR per channel: are you selling direct and through OTAs at comparable prices, and what is left after commission?
  • Last week’s cancellation rate and no-shows, broken down by channel

From review to decision

  1. 01
    Note what stands out

    For example: “Saturday in three weeks has picked up six rooms in seven days; last year it was two.”

  2. 02
    Check the cause

    Is there an event, a public holiday, a group? Or is your rate well below the level in your area?

  3. 03
    Decide on an action

    Raise the rate, set a minimum stay, close a discounted rate or offer a package for weak days.

  4. 04
    Check the effect

    Next week, check whether pickup and ADR developed as expected.

05

Typical mistakes when calculating and comparing

The most common mistake is averaging over the whole season. A winter season with 72% occupancy can consist of fully booked Christmas holidays and half-empty weeks in January. The average hides exactly the weeks in which you could have made a difference with rates or packages. Look at weeks at least, days of the week ideally, and compare holiday periods with holiday periods.

The second mistake is mixing gross and net. An ADR including VAT, breakfast and tourist tax is a different figure from a net ADR for the room only. Both are legitimate, but not comparable. Decide which basis you use and write it next to the number. This matters especially when you compare your figures with numbers from an OTA extranet, an industry report or last year’s data from another system.

Other pitfalls: commissions are forgotten, so an OTA’s ADR looks better than it is. Blocked rooms count as available one time and not the next. Cancelled bookings stay in occupancy. And KPIs are viewed without comparison: a RevPAR of €74.80 says little on its own, but compared with last year or with budget it says a lot.

06

How STRYK helps with your KPIs

In STRYK the KPIs come from the same data your team works with: bookings, rooms, rates and invoices. In the controlling view of the finance area you see occupancy, ADR, RevPAR and room revenue for any period you choose, each as gross values, along with available, sold and blocked room nights. A comparison period, such as the same month last year, sits right next to it. The channel overview shows room nights, share, room revenue and ADR per booking source, so you can see your channel mix without a spreadsheet of your own.

The reports in the PMS also show bookings, average length of stay, cancellation rate, no-shows, breakdown by booking channel and category, as well as revenue and outstanding amounts. Every report can be exported as PDF, Excel or CSV, with the same filters as on screen. If you work with a tax advisor or owner, the management report can also show revenue and operating profit per available room once the accounting accounts are fully mapped; until then STRYK deliberately does not show these values.

For looking ahead there is the Intelligent Pricing add-on. It analyses occupancy, pickup, pace, booking curve, lead time and ADR per category and stay date and turns them into rate recommendations you can review. You will find more in the guide to dynamic pricing.

KPIs in STRYK
KPIs in STRYK
KPIWhere you find it
Occupancy, ADR, RevPAR, room revenueControlling in the finance area, with comparison period
Channel mix and ADR per channelChannel overview in controlling
Cancellation rate, no-shows, length of stayBooking reports, export as PDF, Excel or CSV
Revenue and profit per available roomManagement report, once the accounts are fully mapped
Pickup, pace, booking curveIntelligent Pricing (add-on)

Frequently asked questions

How do I calculate RevPAR?+

Divide the room revenue of a period by the available room nights. ADR times occupancy gives the same result. Example: €56,100 room revenue with 750 available room nights gives a RevPAR of €74.80.

What is the difference between ADR and RevPAR?+

ADR is the average rate per sold room night. RevPAR spreads the same revenue across all available room nights, including the empty ones. It therefore shows how well rate and occupancy work together.

How do I calculate my hotel’s occupancy?+

Sold room nights divided by available room nights, times 100. 510 sold out of 750 available room nights gives 68% occupancy.

Do I calculate ADR with or without breakfast and VAT?+

The usual basis is room revenue excluding VAT, breakfast and tourist tax. More important than the choice is that you always use the same basis and note it when comparing. STRYK shows ADR and RevPAR in controlling as gross values.

What is a good RevPAR?+

That depends on location, category and season. A fixed benchmark is of little help. Compare your RevPAR with the same period last year and with your budget, and check whether the change comes from rate or occupancy.

What do pickup and pace mean?+

Pickup is the number of newly booked room nights for a future period within a given span, such as the last seven days. Pace compares today’s on-the-books position with the position at the same lead time last year.

Do I need GOPPAR as a small hotel?+

Not for the weekly review. In the monthly or quarterly meeting GOPPAR is useful because it includes costs. For that, though, you need reliable figures from your accounts.

Keep reading

Test STRYK with your real hotel day

14 days free, no setup fee. We set up your rooms, rates and first workflows together with you.

Questions about STRYK?