Hotel demand forecasting: the complete guide
Hotel demand forecasting predicts occupancy, arrivals, departures and covers from reservations already on the books, pickup pace, seasonality and events. Done well, hourly, per department, refreshed daily, it is the difference between a roster built on data and one built on gut feel, and typically the first 6–12% of labor cost recovered.
Why does forecast accuracy decide labor cost?
Labor is a hotel's largest controllable cost, about 32.4% of revenue (CBRE, US benchmark), and every point of forecast error becomes staffing error: overtime where demand was under-called, idle paid hours where it was over-called. A forecast is not a planning nicety; it is the input the roster inherits its quality from.
How do hotels forecast demand today?
Same-day-last-year: copy last year's number, adjust by feel. Free, and blind to shifting group blocks, new supply and event calendars.
Spreadsheet models: occupancy averages by day-of-week with manual adjustments, the APAC default. They decay fast with horizon (chart below) and stop at property-level occupancy, which cannot staff a breakfast shift.
Pickup-based models: track how bookings accumulate against historical pickup curves, re-forecasting as pace deviates. Strong inside 30 days; this is where automation starts to pay.
ML on live PMS data: models trained on your property's history, pickup, segment mix, events, cancellation behavior, producing hourly, department-level forecasts refreshed as the book changes. This is what closing the loop into a demand-matched roster requires.
How accurate is each horizon?
The data behind this chart
| Horizon | Typical error (MAPE %) |
|---|---|
| 7 days | 8 |
| 14 days | 11 |
| 30 days | 15 |
| 60 days | 22 |
| 90 days | 28 |
Two practical consequences. First, any roster locked more than two weeks out is built on double-digit error. Second, accuracy inside the scheduling window is what matters, a model that re-forecasts daily at 7-day horizon beats a perfect quarterly forecast for staffing purposes every time.
How does a forecast become a roster?
Three conversions, each explicit in a good system: demand → workload (arrivals to check-in transactions, departures to room-turns, covers to service minutes); workload → hours via labor standards ("28 minutes per room-turn"); hours → shifts under real constraints, skills, contracts, rest rules, service floors. Skip a step and you get a forecast presentation, not a schedule. The full method →
What should you look for in forecasting software?
- Hourly, department-level output, not property occupancy alone.
- Live PMS connection (OHIP, Mews, Cloudbeds) with daily re-forecasting.
- Accuracy reporting against actuals, a vendor unwilling to show MAPE is telling you something.
- A path from forecast to schedule; insight that never changes tonight's roster is decoration.
Frequently asked questions
What is hotel demand forecasting?
Predicting future hotel demand, occupancy, arrivals, departures and covers, from reservations on the books, pickup pace, seasonality, events and segment mix. Operationally useful forecasts are made per department and per hour, not just as a monthly occupancy number.
How accurate are hotel demand forecasts?
Accuracy depends on horizon: roughly 8% error (MAPE) at 7 days, ~15% at 30 days, and ~28% at 90 days for typical manual methods. Pickup-driven models that re-forecast daily hold single-digit error inside the scheduling window.
What data does a demand forecast need?
At minimum: reservations on the books, historical pickup curves by day-of-week and segment, and the event calendar. From a PMS like OPERA Cloud (via OHIP), Mews or Cloudbeds, all of it is available read-only through official APIs.
What is the difference between revenue forecasting and operations forecasting?
Revenue forecasting answers "what will we sell and at what rate"; operations forecasting answers "how many staff-hours will Saturday breakfast need". Same data, different granularity, the operational version must be hourly and departmental to build a roster from.
Or see forecasts feed rosters live: AI demand forecasting.