Beginner

Seasonality and demand patterns

10 min

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:

MonthSeason statusTypical occupancyTypical average rate
JanuaryLow35-45%EUR 75-85
FebruaryLow40-55%EUR 78-92
MarchShoulder55-70%EUR 85-105
AprilShoulder-High65-80%EUR 95-120
MayHigh75-90%EUR 110-140
JuneHigh80-90%EUR 115-145
JulyHigh85-95%EUR 120-150
AugustHigh80-90%EUR 115-145
SeptemberShoulder-High75-85%EUR 105-130
OctoberShoulder65-80%EUR 95-115
NovemberLow-Shoulder50-65%EUR 80-100
DecemberMixed (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 typeStrong daysWeak days
Urban businessMonday-Thursday (corporate)Friday-Sunday (weak leisure)
Urban leisure / boutiqueFriday-Sunday (city break)Monday-Thursday
Resort / spaFriday-Sunday (families), Tuesday-Thursday (wellness couples)Monday, Sunday night
Airport hotelMonday-Thursday (corporate transit)Weekend (except events)
Conference hotelTuesday-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:

DayOccupancyDominant segment
Monday62%Corporate business
Tuesday74%Corporate + transient business
Wednesday78%Corporate + transient business
Thursday72%Corporate (declining) + leisure (starting to grow)
Friday85%Leisure city break (peak)
Saturday92%Leisure city break + occasion
Sunday58%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:

DayApril average occupancy
Monday55%
Tuesday68%
Wednesday72%
Thursday69%
Friday78%
Saturday82%
Sunday52%

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.
Check your understanding

Click an answer — you see immediately whether it is right.

Answer all of them and the lesson counts as complete — and toward your progress.

How many distinct periodic patterns make up a hotel's seasonality, acting at the same time?
The bank sees the January RevPAR of EUR 32 as underperformance and proposes an aggressive rate cut. Why does Daniel reject this?
Why is it misleading to treat "December" as a single month for pricing?
Go deeper
Related terms

See the full definitions in the glossary.

Apply it to your own hotel

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?

Further reading
  • 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 whole beginner level in one PDF

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.

Send me the handbook →
Signal → Decision → Action → Outcome

See Peaqplus on your own data.

In our 45–60 minute walkthrough we run Peaqplus on our live demo environment — a simulated property with data that moves day to day.

No setup fee. No PMS access needed.

Not ready for a demo? Start smaller —5-min revenue check →ROI in 4 numbers →