Dynamic pricing for small properties: build your seasons from your own booking history

Owners of a B&B, a few holiday lets or a small guesthouse usually price in one of two ways: one rate all year, or whatever the neighbours charge on Booking.com. Both ignore the most reliable data you have: what actually happened at your own property in previous years. This guide shows, step by step, how to turn past occupancy and average rate into rate seasons, with floor and ceiling prices, minimum stays and last-minute rules.

In short
  • Read the last 2-3 years week by week: occupancy, average rate per sold night (ADR) and how far ahead bookings came in.
  • Group the weeks into 4-6 seasons by what they earned, not by the calendar.
  • Give each season a base rate, a hard floor and ceiling, and a minimum stay.
  • Bank holidays and events go into a high season; they do not become seasons of their own.
  • Discount late and lightly: a date months away that is still empty is normal.

Want to see it in action? In Vezpa your seasons can be proposed from your own sales history. Try it now on the live demo, nothing to install.

14 days free · no credit card required
Try the demo →

1. Why start from your own history, not your neighbours' rates

Competitors' rates tell you what others ask, not what they sell, or to whom. The cottage down the road may have bigger rooms, parking, better reviews or simply the wrong prices. Your own history holds the market's answer to your offer: which weeks filled up, at what rate, and how far ahead guests booked.

Checking the local market is still useful, but as a sanity check: it tells you whether you are out of line, not what your rate should be.

2. Step 1: pull out the right numbers

For each week of the last two or three years (or at least the last one) you need only a few figures:

Two cautions. Leave out nights when you were closed or had rooms out of service, otherwise they look unsold. And flag unusual years (building work, an exceptional event, a channel you had just connected): read them with care rather than throwing them away.

Work by week, not by month: a month like May can hold two busy bank-holiday weekends and two quiet weeks, and the monthly average hides all of them.

3. Step 2: group the weeks into 4-6 seasons

Sort the weeks from lowest to highest RevPAR and look for the jumps: where earnings change level, that is where one season ends and the next begins. Then put them back on the calendar and fix isolated weeks by hand: one low week between two mid weeks is almost always an accident, not a season.

A useful rule for reading each season: if historical occupancy was very high (say above 85-90%), demand outstripped your rooms and your rate was probably too low; if it was very low, the problem is demand, and cutting the rate hard rarely creates it.

4. Step 3: events, bank holidays and school holidays

Dates that move every year are the main trap for anyone who copies last year's rates: Easter shifts, half-terms differ between areas, and local festivals, races, concerts or graduations run on their own calendars. In Ireland, St Patrick's Day and the June and August bank holidays need the same treatment.

5. Step 4: minimum stay by season

Minimum stay is as much a pricing lever as the rate itself. In peak season it protects your best weeks from one-night bookings that leave gaps you cannot resell; in low season a long minimum simply loses bookings.

As arrival gets closer, the minimum stay should get shorter, not longer: three days out, a single night stranded between two bookings will only sell on its own.

6. Step 5: base rate, floor and ceiling

Each season needs three numbers, not one:

In Vezpa every season has a base rate, floor, ceiling and minimum stay per room type: no automatic change ever goes below the floor or above the ceiling.

14 days free · no credit card required
See the demo →

7. Last-minute and early-booking discounts: when they really help

They are opposite tools, and the choice should come from your lead-time history, not from a hunch.

Last minute

It only makes sense if your data shows that few bookings still arrive in the last days before arrival compared with the rooms left. If your area lives on late bookings (city breaks, work trips, people passing through), the rooms sell anyway and the discount just gives margin away. When you use it: a short window (a few days), a moderate discount, never below the season's floor.

Early booking

It works in the shoulder seasons, to lock in a base of bookings months ahead, often combined with a non-refundable rate. In peak season, if your history says you fill up anyway, an early discount cuts revenue without adding nights.

8. When NOT to drop your rate

9. A worked example (illustrative)

Made-up example. The figures in this table are invented to show the method and do not describe any real market: a 4-room B&B in a destination with a summer season, priced in pounds (the method is identical in euros). Redo the calculation with your own data.
4-room B&B: from booking history to seasons (illustrative figures)
Season Period (example) Historical occupancy Historical ADR Historical RevPAR Proposed base rate Floor – ceiling Minimum stay Last minute (final 3 days)
LowNovember – February, excluding Christmas22%£68£15£70£60 – £851 night10%
Medium-LowMarch, October41%£76£31£78£65 – £951 night10%
MediumApril – May, late September58%£88£51£92£78 – £1102 nights5%
Medium-HighJune, early September, bank holidays74%£104£77£110£95 – £1352 nights5%
HighJuly – August, Easter, New Year91%£128£116£138£120 – £1703 nightsnone

How to read it: in High, 91% occupancy says demand exceeded your rooms, so the base rate goes above the historical ADR (from £128 to £138) and a last-minute discount is pointless. In Low, 22% occupancy says demand is missing: the base rate stays close to the historical ADR, because cutting it hard would not bring in enough extra guests. RevPAR (ADR × occupancy) shows how different the seasons are: in this example a peak night earns roughly eight times a low-season night per available room.

Done with spreadsheets? With Vezpa your seasons start from your own history and rates reach every connected channel.

14 days free · no credit card required

10. The most common mistakes

11. How Vezpa does it

In Vezpa the method in this guide lives in Revenue Management (RMS), the module included in the Pro plan. In practice:

Rates and seasons apply even with the engine off: you can use the RMS purely as a season calendar and make every decision yourself.

Your seasons, from your own history

Seasons proposed from previous years' sales, floor and ceiling prices, minimum stay and last minute per season, rates synced with 60+ OTA channels. Try it on the live demo, nothing to install.

Try the live demo →

Frequently asked questions

How many rate seasons does a B&B or holiday let need?
Four to six seasons are enough for a small property. Fewer than four lump very different periods together; more than six become hard to maintain and the boundaries between them turn arbitrary. Bank holidays and events go into one of the higher seasons rather than becoming seasons of their own.
How many years of booking history do I need to build seasons?
Ideally two or three years, read week by week. One year works as a starting point but needs common sense: a year with renovation work, closures or an exceptional event distorts the averages. With no history at all, start from reasoned seasons and review them after the first full season.
Should I always discount empty dates at the last minute?
No. A last-minute discount only makes sense if your history shows that few bookings still arrive in the final days compared with the rooms left. If your last days fill up anyway, the discount just gives margin away. A date months away that is still empty is normal and should not be discounted.
How do I set the floor and ceiling price for a season?
The floor starts from the cost of one sold night (cleaning, linen, utilities, breakfast, channel commission) plus the minimum margin you will accept. The ceiling is the price above which, in your own history, bookings stop. Set both season by season.
What minimum stay should I set for each season?
The busier the season, the longer the minimum stay can be: typically 1 night in low season, 2 in the shoulder seasons, 3 or more in peak season and over bank holidays. As the date gets closer, shorten it so that single nights stranded between two bookings can still be sold.

Done with spreadsheets? With Vezpa your seasons start from your own history and rates reach every connected channel.

14 days free · no credit card required
Seasons and rates from your own history with Vezpa
Try the demo →