मुख्य कॉन्टेंट पर जाएं
अपीयरेंस
सारी पोस्ट

Revenue · 28 September 2026 · 7 मिनट का पाठ

Hotel dynamic pricing engine: why it beats a fixed rate card

How a pricing engine builds each night's price from your base rate, what it reads, the limits that always win, and the modes that keep you in charge.

· Founder, ZimmerStack, चलते हुए होटल फ्रंट डेस्कों से लिखा गया

A laptop with a rising chart on a hotel desk at dusk, city lights coming on outside
इस पेज पर
  1. 1A fixed rate card is wrong in both directions
  2. 2What the engine reads before it moves a price
  3. 3How one night's price is built, step by step
  4. 4Your limits always win
  5. 5Stabilisation keeps prices calm
  6. 6Choose how much the engine decides
  7. 7What to do this week

In October you printed the rate card: Deluxe at ₹3,500, every night until March. On a Tuesday in February, you sell your last Deluxe for Saturday at that price. A wedding two streets away filled the town three weeks ago. You only find out when the phone keeps ringing with guests you must turn away. This post shows how a pricing engine builds each night's price instead, what it reads, and what stays in your hands.

A fixed rate card is wrong in both directions

A rate card set twice a year makes two mistakes, and only one of them is easy to see.

On busy nights it is too cheap. You sell out early at an ordinary price, and the last rooms go for less than guests would have paid. Selling out feels like success, but selling out is not the same as selling well.

On quiet nights it is too dear. Rooms stay empty at a price nobody was going to pay. An empty room night doesn't carry over to tomorrow: at midnight it is worth nothing.

Worked example

One busy Saturday, one quiet Tuesday

In this example, a 20-room hotel sells every night at a fixed ₹3,500.

  • On a busy Saturday, the last 5 rooms sell three weeks early. Guests would have paid ₹4,500 for them, so ₹5,000 is left on the table.
  • On a quiet Tuesday, 6 rooms stay empty at ₹3,500. At ₹2,900, four of them might have sold, which is ₹11,600 the hotel never earns.

Neither loss appears on your P&L, which is why a fixed card can feel fine while it costs you money.

What the engine reads before it moves a price

A pricing engine asks one question for every room type and every night: is this night going better or worse than normal? To answer it, the engine reads your own hotel's data.

SignalWhat it tells the engine
Rooms already sold for the nightHow full you are, for the room type or the whole house
Days to arrivalHow far out the night is. 60% sold means one thing at 30 days and another at 3.
Day of the weekWeekends and weekdays behave differently in most towns
SeasonYour busy and quiet months
Dates you markWeddings, festivals, exhibitions and exams you know are coming
Pace, if you switch it onWhether the night is filling faster or slower than this kind of date usually does

One signal is missing on purpose. ZimmerStack's engine does not look at other hotels' prices unless you connect a source for that. By default, every move comes from your own bookings and your own settings. For more on pace and pickup, read our practical guide to dynamic pricing.

How one night's price is built, step by step

Every price starts from a number you chose. Each step after that adds or takes away a percent, and every step is written down.

  1. Start from the base rate. This is a price you set for the room type, or the base of a calendar period that covers the night.
  2. Apply the percent factors. Season, weekday, marked dates and lead time each add or take off a percent. A table of occupancy against lead time adds one more, and pace adds a small nudge if you switch it on.
  3. Apply your limits. The corridor, the rails and any protected period clamp the price. The tightest limit wins.
  4. Stabilise. A move smaller than your minimum is held, and no update or day may move the price more than your change budget.
  5. Round. The price lands on a clean number, such as the nearest ₹50.
  6. Publish two prices. Channels get the price with your channel markup, and your website gets it with your website discount.

The factors compound, one after another, rather than adding up.

Price before limits
Base rate × (1 + factor 1) × (1 + factor 2) × … = price before limits

Worked example

One Saturday, three weeks out

In this example, the Deluxe base rate is ₹4,000. The night is 70% sold three weeks before arrival, and it falls on a Saturday.

StepChangePrice
Base rate₹4,000
Occupancy, from your table+8%₹4,320
Lead time+4%₹4,493
Saturday+6%₹4,762
Limits: floor ₹3,200, ceiling ₹4,800inside₹4,762
Rounded to the nearest ₹50₹4,750

If the same night were only 30% sold, your table might say −5% instead of +8%. The price would then come out near ₹4,200.

Your ceiling ₹4,800Your floor ₹3,200₹4,000Base rate+8%Occupancy+4%Lead time+6%SaturdayWithin limits₹4,750Published
One Saturday's price built step by step, from a ₹4,000 base rate to ₹4,750 published inside your floor and ceiling.

In ZimmerStack, you can open any night and read how its price was made, step by step, with the numbers. The same night then leaves as two prices, one for channels and one for your website. Why your website must never cost more explains that split.

Your limits always win

No owner hands prices to software that can do anything it likes. The engine works inside fences you set, and it can never publish outside them.

  • Corridor. How far a price may move from the base rate, as a percent. For example, 20% either side of ₹4,000 allows ₹3,200 to ₹4,800.
  • Rails. Your absolute lowest and highest price for the room type, whatever the corridor says.
  • Protected period. A date range where the base rate itself becomes the floor, such as a festival weekend you will never discount.
  • Holds. A price you set yourself, for a time you choose. The engine leaves it alone until the hold ends, and it shows as "Set by you" rather than "Automatic".

When two limits disagree, the tighter one holds. You can change any of them whenever you like, and the next update uses the new ones.

A fixed rate card is wrong twice: too cheap on the nights everyone wants, and too dear on the nights nobody does.

Stabilisation keeps prices calm

A price that jumps every hour confuses guests who look twice, and staff who quote on the phone. Stabilisation keeps it steady with three rules:

  • A minimum move. A change smaller than this amount is held, not published.
  • A change budget. This is the largest move allowed in one update, and in one day, both set as a percent.
  • A reversal guard. A price turns back the other way only when the new move is clearly bigger, so one booking can't flip it back and forth.

Every held move is logged, so you can see what the engine wanted to do. New prices go out to your channels within the hour, and again when a booking lands. The same moves reach every rate plan too, because plans follow the base. One base rate for every rate plan shows how.

Choose how much the engine decides

The engine has three modes. You can start in one and move to another as your booking history grows.

ModeWhat moves the priceGood for
RulesOnly your calendar and your occupancy table. Nothing is learned.Owners who want every move to follow rules they wrote
AssistedYour rules, plus a small learned nudge inside a narrow band you setHotels with some booking history that want a little help
AutopilotWhat the engine has learned from your history, inside your limitsHotels with steady history that want the engine to do more

Any mode can add Review first. Then nothing publishes until you approve it. Small moves can approve themselves under a threshold you set, and the rest wait in a queue with the reason attached. Before a new strategy goes live, you preview exactly which nights would move.

In ZimmerStack, the engine is part of revenue management, included with PMS and Channel Manager from the Growth plan at ₹299 per room per month. It is not an add-on, and it sends prices through the same channel manager as everything else. The revenue management page has a small working engine. Change rooms sold, days to arrival and the weekday, and watch the rate move inside your limits.

Try your own base rate in the pricing labEnter a base rate, plan adjustments, a channel markup and a website discount, and see what each channel and your website would show.Open the pricing lab

What to do this week

  1. Find last season's early sell-outs. List the nights that sold out more than a week before arrival. Those were priced too low.
  2. Find the empty nights. List the nights with a third of your rooms unsold. Those were priced too high, or discounted too late.
  3. Write down your special dates. Mark the weddings, festivals, exhibitions and exams in your town for the next 12 months.
  4. Set a floor and a ceiling for each room type. Pick the lowest price you will ever sell at, and the highest you are willing to be seen at.
  5. Move the engine yourself. Change rooms sold and days to arrival on the revenue management page, and watch the rate stay inside your limits.

होटल मालिक जो सवाल पूछते हैं

आपका सवाल यहां नहीं है? कॉल करें। फोन ऐसा इंसान उठाता है जिसने फ्रंट डेस्क पर काम किया है।

सीधे हमसे पूछें →
What is a dynamic pricing engine for hotels?

It is software that sets each night's room price from a base rate you choose, and moves it with demand: occupancy, days to arrival, the weekday and dates you mark. It always stays inside limits you set.

Will a pricing engine change my rates without asking me?

Only inside the corridor and rails you set, and never past them. If you turn on Review first, nothing publishes until you approve it, and a price you hold yourself stays until the hold ends.

Does ZimmerStack's pricing engine look at other hotels' prices?

Not by default. It prices from your own hotel's data, and a read on nearby prices stays off unless you connect a source for it.

How often does the engine change my prices?

It works out prices again through the day and whenever a booking lands, and new prices reach your channels within the hour. Stabilisation holds back small moves and caps how far a price can move in one update or one day.

Is dynamic pricing an extra cost with ZimmerStack?

No. The pricing engine is included with PMS and Channel Manager from the Growth plan, at ₹299 per room per month, and it is never a paid add-on.

What is the difference between Rules, Assisted and Autopilot?

Rules moves prices only by your calendar and occupancy table. Assisted adds a small learned nudge inside a band you set. Autopilot leans on what the engine has learned, always inside your limits.

ये आइडिया एक असली होटल में चलते देखें

इस ब्लॉग के आइडिया चलते हुए होटलों की फ्रंट डेस्क से आते हैं। इन्हें अपने कमरों पर चलते देखें: कॉल करें, या 30 दिन का फ्री ट्रायल शुरू करें।

30 दिन का फ्री ट्रायल · 48 घंटे में फ्री माइग्रेशन · किसी भी महीने बंद करें