RM tool

Which dates need
attention — and why.

Every week I run a revenue management report that flags the dates which have drifted from baseline. This helps us identify the five or six dates that need special attention.

June 2027

(as of 15 Apr 2027)
RED 2 ORG 1 G 1 DG 2
Mon
Tue
Wed
Thu
Fri
Sat
Sun
1 40% Tue — 40% occupancy
2 47% Wed — 47% occupancy
3 53% Thu — 53% occupancy
4 67% Fri — 67% occupancy
5 87% Sat — 87% occupancy — Dark green: all three signals positive
6 53% Sun — 53% occupancy
7 33% Mon — 33% occupancy
8 27% Tue — 27% occupancy — Orange: two negative, none positive
9 40% Wed — 40% occupancy
10 53% Thu — 53% occupancy
11 67% Fri — 67% occupancy
12 80% Sat — 80% occupancy — Green: two positive, none negative
13 47% Sun — 47% occupancy
14 13% Mon — 13% occupancy — Red: all three signals negative
15 33% Tue — 33% occupancy
16 40% Wed — 40% occupancy
17 53% Thu — 53% occupancy
18 67% Fri — 67% occupancy
19 73% Sat — 73% occupancy
20 53% Sun — 53% occupancy
21 33% Mon — 33% occupancy
22 33% Tue — 33% occupancy
23 47% Wed — 47% occupancy
24 60% Thu — 60% occupancy
25 67% Fri — 67% occupancy
26 87% Sat — 87% occupancy — Dark green: all three signals positive
27 53% Sun — 53% occupancy
28 20% Mon — 20% occupancy — Red: all three signals negative
29 33% Tue — 33% occupancy
30 40% Wed — 40% occupancy

Three signals score each date. The colour summarises all three at a glance.

RED
Red — all three signals negative
ORG
Orange — two negative, none positive
G
Green — two positive, none negative
DG
Dark green — all three signals positive
  • P — position vs last year
  • M — momentum (recent pickup: a 7, 14 or 30-day window depending on how close the date is)
  • R — within-month rank

Mix-adjusted ADR (Rate) is shown as context: it informs the decision, but does not score the date.

Illustrative example using modelled data.

How a single date reads

The colour summarises, the detail explains. These four dates from June show each case: one that never gets flagged, one strong, one starting to worry, and one critical.

DayDOWOTBOcc%LYRankPickupRateSignalsFlag
3 Thu 8 53% 9 mid +2 | +1 +2% P~ M+ R~ Rt~
momentum ahead — but position and rank on pace, so a single signal does not flag the date · ADR: JS 1.02 (6RN) | JSP 1.03 (3RN)
5 Sat 13 87% 11 T1 +4 | +2 +6% P+ M+ R+ Rt+ DG
position: strong | momentum: accelerating | rank: top (T1) · ADR: JS 1.05 (8RN) | JSP 1.10 (5RN)
8 Tue 4 27% 6 B2 +0 | +0 +2% P- M~ R- Rt~ ORG
position: critical | momentum: on pace | rank: bottom (B2) · ADR: JS 0.98 (3RN) | JSP 1.00 (1RN)
14 Mon 2 13% 5 B1 -2 | +0 -3% P- M- R- Rt- RED
position: critical | momentum: stalled | rank: bottom (B1) · ADR: JS 0.95 (2RN) | JSP 0.92 (0RN)
Four dates from June, exactly as the tool shows them.

The 3rd is the one that says the most. Momentum is running ahead, but position and rank are on pace: a single positive signal does not flag a date. That threshold is what keeps the list short and credible.

How it stays current

  • 01 Every time I upload a new booking report, the tool re-scores the whole season, month by month, and flags what has changed since the last run.
  • 02 Thresholds are calibrated per hotel, not generic. A weak weekend in a 15-room hotel is not a weak weekend in a 40-room one.
  • 03 Each flagged date turns into a concrete decision: push rates on the strong ones, stimulate demand where pace is lagging.

What would it look like at your hotel?

In the initial audit I go through your data and show you which dates would be flagged this season.

Request a complimentary audit →