Blog /

Marketing Strategy

How AI Predicts Hotel Occupancy Amid Cancellations

How AI Predicts Hotel Occupancy Amid Cancellations

How AI Predicts Hotel Occupancy Amid Cancellations

Adjust bookings for cancellations and no-shows, add expected future pickup, and use AI-calibrated probabilities to forecast occupancy.

By Shahar Rubin, Co-founder

•

I estimate hotel occupancy by adjusting bookings for cancellations and no-shows, then adding expected future bookings. In the article’s hypothetical 100-room hotel, 72 booked rooms become 61.6 expected occupied rooms. Add 20 expected rooms from future bookings, and forecast occupancy reaches 81.6%.

Here’s the process I use:

  • Start with dated booking records and available room counts.

  • Estimate arrival odds by channel, booking timing, and rate plan.

  • Add future bookings adjusted for cancellation and no-show risk.

  • Keep forecasts within room capacity and include an uncertainty range.

  • Check predictions against actual stays before using them to guide pricing, staffing, marketing, or overbooking.

<u>My starting point is a spreadsheet, not AI.</u> I add AI only when testing shows it makes forecasts more accurate or improves daily decisions.

Estimate Cancellation and No-Show Risk

Use the reservation history you prepared to estimate risk by segment, rather than relying on a hotel-wide average. An overall average hides differences among direct, OTA, corporate, and group bookings.

Group Bookings by Risk Factors

Group reservations by channel, lead time, days to arrival, and rate plan. Keep days-to-arrival buckets separate: same-day, 1–7 days, 8–30 days, and 31 or more days. Include payment status, length of stay, and reliable guest history when available. If a segment has too few reservations, merge it into a broader group or blend its rate toward the larger segment’s average.

Score today’s reservations using historical snapshots taken at the same days-to-arrival point.

Compare Cancellation, No-Show, and Show-Up Rates

Example segment rates below use the same starting reservation count for all three outcomes. The three outcomes are mutually exclusive and total 100%.

Channel

Booking lead-time bucket

Days until arrival at snapshot

Rate plan

Reservation count

Cancellation rate

No-show rate

Show-up rate

Direct

1–7 days

1–7

Flexible

200

8%

3%

89%

OTA

31+ days

31+

Flexible

150

22%

5%

73%

OTA

1–7 days

1–7

Nonrefundable

120

4%

2%

94%

GDS

8–30 days

8–30

Corporate

100

10%

4%

86%

Group

31+ days

31+

Deposit-backed

80

15%

3%

82%

Calculate each rate by dividing its outcome count by the starting reservation count. If the no-show rate applies only to reservations that weren’t canceled, account for that condition when combining the two risks:

Show-up probability = (1 − cancellation rate) × (1 − conditional no-show rate).

Use these probabilities to turn bookings into expected occupied rooms as part of your AI-powered booking optimization strategy.

Calculate Expected Occupancy With AI

Hotel Occupancy Forecast: From Bookings to Expected Stays

Hotel Occupancy Forecast: From Bookings to Expected Stays

Turn Booking Probabilities Into Expected Occupied Rooms

Once you’ve scored cancellation risk, turn those probabilities into expected room-night demand. Start with a segment-level baseline for current reservations. Then use AI models that account for reservation features tied to risk. Use calibrated probabilities, not yes-or-no labels: the probability of cancellation before arrival and the conditional probability of a no-show if the reservation stays active.

Show-up probability = (1 − cancellation probability) × (1 − conditional no-show probability)

For each stay date, multiply booked rooms by their predicted show-up probability, then add the results. This gives you expected occupied room-nights. Divide that total by available rooms and multiply by 100 to calculate occupancy.

Run these calculations at the room-night level, separately for each room type. Account for partial cancellations, early departures, and room moves. Keep held group allocations separate from picked-up reservations. Don’t count the same rooms as both confirmed bookings and future pickup - or deduct them twice from inventory.

Add Expected Future Bookings

Current reservations tell only part of the story. Add expected pickup using a separate model from the one used for cancellation risk. Forecast pickup by stay date and room type, then adjust those added room-nights for cancellations, no-shows, and stay changes. Exclude stayovers already on the books.

Expected future pickup = expected future booked room-nights × future show-up probability

Total expected occupied rooms = expected occupied rooms from current bookings + expected future pickup

Recalculate whenever reservations, inventory, or demand signals change, and save dated snapshots. Report both a central estimate and a range. Keep unconstrained demand separate from forecast occupancy: occupancy cannot exceed available capacity, including limits by room type.

Build an Occupancy Forecast by Stay Date

The example below combines current bookings and expected future pickup for each stay date.

Worked example: Hypothetical 100-room hotel. Available rooms equal physical inventory minus maintenance and out-of-order rooms. Each room move and partial cancellation is counted once; no additional changes are assumed. Pickup is adjusted for cancellation and no-show risk. For 11/15/2026, the calculation is (72 − 7.2 − 3.2 + 20.0) ÷ 100 × 100 = 81.6%. Fractional room counts are statistical averages, not rooms staff can assign.

Stay date

Available rooms

Booked rooms

Predicted canceled rooms

Predicted no-show rooms

Expected occupied rooms from current bookings

Expected future pickup

Total expected occupancy rate

11/15/2026

100

72

7.2

3.2

61.6

20.0

81.6%

11/16/2026

98

80

6.4

3.0

70.6

15.5

87.9%

11/17/2026

95

86

4.3

2.6

79.1

9.0

92.7%

Use Occupancy Forecasts and Check Accuracy

Plan Availability, Staffing, and Marketing

Use expected occupancy and its uncertainty range to set rates, open or close inventory, and apply minimum-stay rules during peak periods. Schedule housekeeping around expected departures and stayovers so staffing matches the forecast.

Target underfilled stay dates with Sail’s AI-powered direct-booking campaigns, then scale back promotions as capacity tightens.

Compare Forecasts Before Overbooking

As demand nears capacity, compare booked occupancy with cancellation-adjusted and no-show-adjusted forecasts. Include forecast error when estimating overflow risk before approving planned overbooking. Weigh losses from empty rooms against relocation costs and guest dissatisfaction.

First, confirm relocation arrangements, transportation, guest safeguards, and contractual obligations. Keep demand estimates separate from occupancy forecasts capped at capacity so overflow risk stays visible.

Test Forecast Accuracy and Recalibrate

After each arrival date, compare predicted occupancy with actual occupancy to spot overprediction and underprediction. Review results by channel, lead time, and rate plan, and check whether actual occupancy falls within the predicted range. Sold-out dates can hide unmet demand, so low bookings don’t always mean weak demand.

Update the model daily and retrain it as booking patterns change to keep cancellation and no-show assumptions current.

Conclusion: Keep Forecasts Adjusted for Cancellations

Use a dated reservation snapshot for each stay date, and update the forecast as bookings change. Group bookings by cancellation risk, then calculate expected occupancy = booked rooms × show-up probability + adjusted future pickup.

Start with a spreadsheet baseline: booked rooms, expected pickup, and expected occupied rooms. Make sure the numbers can be audited and are easy to explain before scaling. Add AI only when you have consistent historical data and holdout testing shows lower forecast error or clear gains in day-to-day operations.

Compare forecasts with actual occupancy to check results and recalibrate as needed. Keep booked, expected, and actual occupancy separate. Use the forecast to guide decisions - not as a guarantee that guests will arrive.

FAQs

How much booking history do I need for reliable forecasts?

Use 90 to 365 days of booking history to build reliable occupancy forecasts. This range helps you spot seasonal patterns and booking pace trends while accounting for cancellations and no-shows. Keep your definitions of occupancy, ADR, and RevPAR consistent across the entire period.

That history smooths out short-term data noise and provides a stable baseline forecast. AI can then refine it using real-time market inputs and demand signals.

How do I forecast occupancy during unusual events?

Combine historical booking trends with real-time weather, local events, booking pace, and cancellation/no-show patterns. Break down those patterns by channel, lead time, and rate plan. Keep booked rooms separate from actual stays. To estimate occupied rooms, apply expected cancellation/no-show rates to reservations by room type and segment.

Check forecasts against similar past disruptions and timestamp event notes. Update short-term forecasts every 2–4 hours and forecasts 8–30 days out daily.

How can I tell if AI outperforms my spreadsheet?

Regularly compare actual occupancy with AI and spreadsheet forecasts to check forecast accuracy. Track RevPAR growth - above 7% indicates high performance - along with how efficiently operations run during peak demand, net contribution, and resource allocation compared with manual tracking.

Monitor your Market Penetration Index (MPI), too. Check whether AI-driven insights account for real-time factors, including local events, weather, and shifts in booking behavior.

Related Blog Posts

Share:

20 years of hospitality lessons. No fluff. No spam

Join 500+ hospitality pros getting our best growth playbooks.

Both

Hotel

Restaurant

Both

Restaurant

Hotel

See your competitors' ads, rates & reviews — Free hotel marketing audit →