Mid-February. Adam walks into Daniel’s office with a bank report in hand, looking a little tense: “Daniel, the bank has reviewed the last 12 months. They’re asking whether our January RevPAR of EUR 32 is some kind of strategic problem. Their suggestion: cut rates aggressively in January to lift occupancy.”
Daniel leans back in his chair. “Adam, let’s look back. January 14th: 39% occupancy, EUR 82 average rate, EUR 32 RevPAR. January 28th: 42% occupancy, EUR 79 average rate, EUR 33 RevPAR. Now jump to July: July 12th — 94% occupancy, EUR 138 average rate, EUR 130 RevPAR. Same hotel, same 80 rooms, same team. RevPAR is four times the January figure.”
“So why is the bank worried?” — Adam asks.
“Because they’re looking at a number that isn’t measured against our own seasonality. The January low season isn’t a performance problem — it’s a natural part of the hotel’s seasonal rhythm. An aggressive January rate cut leads to long-term brand damage, and it won’t bring in new demand that structurally isn’t there.”
This dialogue is the core of understanding seasonality. A revenue manager doesn’t take control of seasonality — they understand it, exploit it, and prepare for it in advance. The goal of this lesson is to teach you to read a hotel’s seasonality fingerprint — and to understand why the seasonality of a resort, an urban business hotel and a mountain spa hotel differs radically.
The three layers seasonality works on
The word “seasonality” is misleading: it sounds like a single, unified annual pattern. In reality at least three different periodic patterns play at once, layered on top of each other.
1. Annual seasonality
The classic high / shoulder / low season split:
- High season — the hotel’s peak months. High demand, high rates, easy occupancy.
- Shoulder season — transitional months. Medium demand, medium rates.
- Low season — weak demand, hard occupancy-building. This is where packages and promos come in.
In an urban 4-star hotel:
| Month | Season status | Typical occupancy | Typical average rate |
|---|---|---|---|
| January | Low | 35-45% | EUR 75-85 |
| February | Low | 40-55% | EUR 78-92 |
| March | Shoulder | 55-70% | EUR 85-105 |
| April | Shoulder-High | 65-80% | EUR 95-120 |
| May | High | 75-90% | EUR 110-140 |
| June | High | 80-90% | EUR 115-145 |
| July | High | 85-95% | EUR 120-150 |
| August | High | 80-90% | EUR 115-145 |
| September | Shoulder-High | 75-85% | EUR 105-130 |
| October | Shoulder | 65-80% | EUR 95-115 |
| November | Low-Shoulder | 50-65% | EUR 80-100 |
| December | Mixed (see below) | 50-90% | EUR 85-180 |
December is special: the two halves of the month are completely different seasons. The 1st-15th is low-like, the 16th-31st (Advent + New Year’s Eve) is ultra-high — for New Year’s Eve a EUR 180 ADR is realistic. “December” as a single unit is misleading — you always have to look date-by-date.
2. Weekly seasonality (weekly pattern)
The within-week occupancy pattern. This differs radically by hotel position:
| Hotel type | Strong days | Weak days |
|---|---|---|
| Urban business | Monday-Thursday (corporate) | Friday-Sunday (weak leisure) |
| Urban leisure / boutique | Friday-Sunday (city break) | Monday-Thursday |
| Resort / spa | Friday-Sunday (families), Tuesday-Thursday (wellness couples) | Monday, Sunday night |
| Airport hotel | Monday-Thursday (corporate transit) | Weekend (except events) |
| Conference hotel | Tuesday-Thursday (mid-conference days) | Weekend break |
Hotel Peaqplus City is a mixed mix — corporate midweek (Monday-Thursday), and leisure / occasion on the weekend. This is a healthy balance, but it also means the weekly occupancy shape is never even. An average October week:
| Day | Occupancy | Dominant segment |
|---|---|---|
| Monday | 62% | Corporate business |
| Tuesday | 74% | Corporate + transient business |
| Wednesday | 78% | Corporate + transient business |
| Thursday | 72% | Corporate (declining) + leisure (starting to grow) |
| Friday | 85% | Leisure city break (peak) |
| Saturday | 92% | Leisure city break + occasion |
| Sunday | 58% | Leisure check-out, few arrivals |
Sunday night is dramatically weak in most urban hotels — the leisure guests have gone home, and the corporate guests haven’t arrived yet. This is a classic revenue management challenge: managing the Sunday-night void (packages, “stay-extra-night-free” offers, a Sunday brunch + room package, etc.).
3. Event-driven peaks (event peaks)
Unique days / weeks when a specific event bursts into the city: a conference, a concert, a sports event, a holiday. These override the annual and weekly patterns, and from the hotel’s demand standpoint they follow an entirely different logic.
An urban hotel’s main event peaks (illustrative):
- A major summer music festival (e.g. a week-long city festival) — one of the most intense weeks for the hotel industry. ADRs jumping 200%+.
- A Formula 1 race weekend — a 4-day high-impact event. 100% compset-wide occupancy even 60 days out.
- Major concerts (the big arenas and stadiums) — a single evening’s performance by a global star can pull up the whole compset.
- Christmas markets — in the city’s main squares, mid-to-late December.
- New Year’s Eve — a single night, the peak of the hotel industry, ADR up to 3-4x the normal.
- Conference calendar — the big exhibition-centre events, IT conferences, medical congresses.
A senior revenue manager doesn’t wait for these events to show up “on their own” in the occupancy data — they proactively monitor event calendars (the city event calendar, conference organizers, concert venue programs), and adjust rates for the peak days 3-12 months ahead.
In lesson 14 (Compset) we saw: competitors’ rate movements confirm or reveal the event peaks. If all 4 compset hotels run a 50% higher rate on the same day, it’s no accident — there’s an event behind it.
The three patterns layered together
The three patterns work at once. A specific day’s demand profile:
Expected demand = annual season × weekly pattern × event factors × segment mix
Take three examples at Hotel Peaqplus City:
- November 15th, Wednesday — late shoulder / low (1.0×), a midweek corporate-strong day (1.1×), no known event (1.0×), corporate dominant. Expected occupancy: ~70%, ADR ~EUR 95.
- August 7th, Friday — high season (1.3×), Friday leisure-strong (1.2×), the first day of the summer music festival (2.0×), transient leisure + occasion dominant. Expected occupancy: 100%, ADR ~EUR 210 (the BAR in the 180-220 peak range).
- December 31st, Tuesday — mixed season, but an extreme peak day (3.0×), occasion dominant. Expected occupancy: 100%, ADR ~EUR 290 (New Year’s Eve package).
The multiplied effect of the three patterns can be an 8-10x RevPAR difference on the same 80-room hotel: between the January ~EUR 32 RevPAR and a New Year’s Eve sold out at 100% (~290 RevPAR) the gap is nine-fold — purely because of seasonality, with the same 80 rooms.
How to identify a hotel’s seasonality fingerprint
In a new RM role, the first 30 days have a priority task: understanding the hotel’s own seasonality patterns. A few concrete steps:
1. Historical data analysis (2-3 years back)
Put every month’s daily data into a table: occupancy, ADR, RevPAR, dominant segments. Look for patterns:
- What is the quietest week of the year? (Hotel Peaqplus City: January 7-13, the post-Christmas “death week”.)
- What is the strongest week? (Hotel Peaqplus City: July 12-18, the week around the summer festival.)
- Are there any surprising peaks? (E.g. a September conference that’s only strong on 3 days, but the hotel has known about it for years.)
2. Weekly pattern analysis
Separately, the average of each day of the week, by month. Hotel Peaqplus City’s April weekly pattern:
| Day | April average occupancy |
|---|---|
| Monday | 55% |
| Tuesday | 68% |
| Wednesday | 72% |
| Thursday | 69% |
| Friday | 78% |
| Saturday | 82% |
| Sunday | 52% |
This shows that Sunday and Monday are structurally weak — that’s where to launch mid-stage offers.
3. Building the event calendar
Compile the hotel’s own event calendar for the next 12 months: conferences, concerts, festivals, sports events, public holidays, markets. Tag each with an expected occupancy uplift (×1.5 / ×2 / ×3+).
This event calendar is the basis of the forecast and the pricing.
4. Segment-level seasonality
A segment doesn’t season uniformly with the whole hotel. Hotel Peaqplus City:
- Corporate segment — already high in January (companies return after the Christmas break), but pauses in August (corporate travel goes quiet).
- Group MICE — peaks in September and May (the classic conference months), low in summer.
- Transient leisure — summer peak (June-August), and the Christmas-market peak in December.
- Transient occasion — Valentine’s Day (February), the summer festival (August), Christmas markets + New Year’s Eve (December).
In lesson 21 (Segmentation in depth) we cover this in detail with a per-segment calendar.
Back to Adam’s concern
Now Daniel puts a second report on the table in front of Adam. It has three columns:
- This year’s January RevPAR: EUR 32
- Last year’s January RevPAR: EUR 28
- Compset (average of four competitors) last year’s January RevPAR: EUR 30
“Adam, the bank only saw the absolute number. We look at relative performance. This January we ran +14% better than last year, and +7% better than the compset average. If we’d launched an aggressive rate cut as they suggest, RevPAR might short-term have gone to EUR 30 because of higher occupancy — but we’d shift the brand position into the ‘discount hotel’ segment for 12-24 months. Guests would learn to wait for the low-season discount, and next year even the EUR 32 would be hard.”
Adam nods. “So my message to the bank: the low absolute January number isn’t underperformance, because…”
Daniel continues: “Because we look at three things together. One: we’re doing well against our own seasonality (+14% on last year). Two: we’re doing well against the compset (+7%). Three: the rate strategy protects long-term brand value, not just the month’s RevPAR. All of these are invisible without knowing the seasonality.”
This kind of answer is not a ‘more numerical report’ — it’s the communication of a business-mature RM mindset. The bank will listen to this; and they’ll withdraw the aggressive discount proposal.
In lesson 17 (Booking pace and the pace report) we cover this more deeply: always measure yourself against your own seasonality, not against abstract “good or bad” yardsticks.
Key takeaways
- Seasonality works on three layers at once: annual (high / shoulder / low), weekly (weekday vs. weekend pattern), and event-driven peaks.
- The three patterns override one another — a New Year’s Eve is “January” in calendar terms, but a record rate at the “event level.” We always think date-by-date.
- A hotel’s seasonality fingerprint is unique — an urban business hotel and a spa resort look radically different. The hotel has to learn its own pattern, not apply a generic “city hotel” template.
- The Sunday-night void is a structural RM challenge in most urban hotels — packages, “stay-extra-night-free”, brunch + room combinations are the classic solutions.
- Always measure performance against your own seasonality — a low absolute January RevPAR isn’t underperformance if you’re doing well against the January benchmark and the compset.
Click an answer — you see immediately whether it is right.
Answer all of them and the lesson counts as complete — and toward your progress.
See the full definitions in the glossary.
Hotel Peaqplus City's Sunday-night occupancy has settled at 48% over the last 6 months. What two concrete actions would you launch to lift it to 60%? And: an urban hotel's average November occupancy is 55%, and the GM thinks that's 'bad' — what 3 questions would you ask before deciding whether you're underperforming?
- STR / CoStar Group market reports and national tourism boards' monthly demand indices — baseline references for tracking a hotel's own seasonality in any market.
The Revenue Management Handbook, Vol. I — the 15 lessons condensed, plus a morning checklist, a meeting agenda and a KPI formula sheet. Delivered by email.