See Every Room Night Before It Books

ML-powered occupancy and revenue forecasts with confidence bands. Pickup, pace, cancellations, seasonality, and local events combine into a single forecast that refreshes nightly.

365-day horizon Nightly retraining Feature-level explainability

6-Month Occupancy Forecast

85.3%P50 avg
Actual Forecast P10–P90

30-day

81.2%

±3.1%

60-day

86.7%

±5.4%

90-day

88.1%

±7.2%

5–9%

MAPE at 7 days

365d

Forecast horizon

6+

Signals modelled

Nightly

Retraining

Six Signals, One Forecast

Every stay-date prediction combines the factors revenue managers have always used — now weighted automatically with explainable feature attribution.

Pickup

Rate of new bookings per day by stay date, segmented by lead time buckets and channel source.

Pace

On-the-books versus same-time-last-year and same-time-last-period. Positive or negative pace drives the forecast adjustment.

Cancellations

Historical cancellation curves by segment, rate plan, lead time, and channel. Predicts net bookings rather than gross.

Seasonality

Day-of-week, month, and multi-year seasonal patterns captured with Fourier components to avoid overfitting.

Events

Local events, school holidays, conferences, and public holidays. Auto-ingested for 4,000+ cities or imported from CSV.

Macro signals

Comp-set rate movement, destination search trends, and flight arrival data where available — layered as exogenous variables.

Built for Revenue Managers, Readable by Owners

A month-grid heatmap shows occupancy at a glance. A pace view compares on-the-books against same-time-last-year. Every chart drills into stay-level detail so you can move from signal to action in one click.

  • Heatmap calendar for 30, 60, and 90-day views
  • Pace curves by segment, channel, and room type
  • Revenue projection with P10/P50/P90 bands
  • Exportable CSV, PDF, and PNG per chart
  • Drill-through to stay-level forecast contributors
Forecast Dashboard — July 2026Auto-refreshed 04:12
166%
272%
383%
468%
559%
652%
738%
851%
957%
1077%
1187%
1270%
1361%
1439%
1542%
1657%
1763%
1882%
1975%
2072%
2162%
2241%
2346%
2448%
2569%
2687%
2778%
2873%
2949%
3044%
3151%
3254%
3375%
3476%
3581%
85%+ 70–84% 50–69%< 50%
Booking Pace — July 2026 arrivals +4.2% vs LY
This year Last year

Why the Model Matters

Rule-based forecasting still has a place — for explainability and small markets. Here’s where an ML model changes the game.

AspectRule-based SwiftGuest ML
Setup time
Weeks of manual rule tuning
Hours — trains on 12 months of PMS data automatically
Adapts to shocks
No — rules break in new conditions
Yes — retrains nightly on most recent pace data
Confidence bands
Single point estimate only
P10/P50/P90 bands per forecast horizon
Event handling
Manual override per event
Auto-detected and weighted from historical event response
Explainability
Fully explainable by definition
Feature attribution per prediction — see which factors drove the number
Accuracy at 7 days out
Typical MAPE 14–22%
Typical MAPE 5–9% on SwiftGuest data

MAPE = Mean Absolute Percentage Error. Lower is better.

Powered by Your Data, Enriched With Context

No CSVs to maintain. SwiftGuest already knows your reservations, pace, and cancellations — we add the external context so the model sees the full picture.

Reservations history

12+ months from PMS

On-the-books pace

Real-time from PMS

Cancellation curves

Per rate plan and channel

Event calendar

4,000+ cities auto-ingested

Weather & holidays

Destination-specific

Comp-set rates

Connected OTA shopper

From Forecast to Decision

Rate strategy

Feed forecasts into the rate engine so rules and ML pricing know the demand curve they’re pricing against.

Overbooking model

Predict cancellation rates per segment and set safe overbooking levels that lift occupancy without walk risk.

Staffing and ops

Export day-level occupancy forecasts to housekeeping and F&B so labour plans match real demand.

Owner reporting

30/60/90-day revenue projections with confidence bands, exportable as PDF or pushed to ownership dashboards.

Four Steps, Fully Automated

1

Ingest

Reservations, pace, cancellations, and rate shops stream into the model continuously.

2

Train

Gradient-boosted regression and exponential smoothing retrain nightly on your full history.

3

Predict

Daily forecasts for the next 365 days with P10/P50/P90 confidence bands and feature attribution.

4

Act

Forecasts feed rate rules, overbooking models, staffing plans, and owner reports.

Frequently asked questions

How much historical data do I need?

A minimum of six months of reservation history gives usable forecasts; twelve months captures a full seasonal cycle. Newer properties can start with a blended model that borrows patterns from similar destinations until they have their own history.

How often does the model retrain?

Retraining runs nightly on the latest bookings, cancellations, and rate shops. Forecasts regenerate for every stay date in the 365-day horizon, so your dashboard is fresh every morning.

What accuracy can I expect?

On SwiftGuest customer data, median MAPE (mean absolute percentage error) is 5–9% at 7 days out, 9–14% at 30 days out, and 14–20% at 90 days out. Every forecast ships with P10/P50/P90 confidence bands so you can see the range of likely outcomes.

Can I see why the model predicted a number?

Yes. Every forecast point has feature attribution: how much of the prediction came from pickup pace, seasonality, events, cancellations, and rate position. Click a day on the chart to see the breakdown.

How are events detected?

SwiftGuest auto-ingests events from public calendars, ticketing APIs, and conference listings for major destinations. You can also upload a CSV, tag custom dates, or mark past events so the model learns your property’s response curve.

Does it handle multiple room types and segments?

Yes. Forecasts are generated at the room-type and segment level (corporate, leisure, group, OTA, direct) then rolled up to total property. You can view every level in the dashboard and export at any granularity.

What happens when market conditions change?

Because the model retrains nightly on recent pace, it adjusts within days of a shift. You can also set guardrails that pause ML-driven pricing decisions when forecast uncertainty exceeds a threshold, reverting to manual control.

Forecast the next 365 days in your first week

Connect your PMS, let the model train overnight, and wake up to a dashboard that tells you exactly where demand is heading.