Advanced

Promotional strategy — when, how much, to whom

15 min

Mid-October, a Wednesday afternoon. Esther, the marketing manager, walks into Daniel’s office — in her hand the November pace report, which she printed out herself this time. Back when the January campaign was planned (lesson 31), she still opened with “my boss says we need a campaign”; today she starts with the slow dates:

“November is a valley again. The two weeks between the 9th and the 22nd are badly behind last year’s pace, and if we do nothing, the month lands around 52% against a 60% budget. I want a campaign: −20% on everything, for everyone, on every channel, for all of November. Coupon code NOVEMBER20, live by tomorrow.”

Daniel smiles — the hard part is behind them. “You got the when right: a real demand gap, a well-defined period — it wouldn’t have looked like this back at the January campaign. But −20% on everything, for everyone — that leaves three questions open. What do we give: do we cut the price, or add value? Who do we give it to: really everyone, including those who would come anyway? And how will we know whether it worked? Sit down, let’s run the numbers — I think you’ll end up with a cheaper and stronger campaign.”

In lesson 31 we learned when a promotion has a place: where pace shows a real demand gap. This lesson is the next step — the methodology of the promo decision: what type of offer to make (pure discount, value-add or package), how deep to cut, who to target (window, segment, channel, geo), and how to measure it so that in the end the real incremental revenue decides, not the beauty of the campaign dashboard.

The economics of the three promo types

Every hotel promotion is one of three basic types — or a combination of them. The difference is not a matter of style but of cost structure.

1. Pure discount — the easiest and the most expensive

The open price discount (−15% off the BAR, the public daily base rate) is the easiest to communicate and the fastest-acting tool. But its economics are the worst, for two reasons:

  • 100% of the discount is lost revenue. If we sell the room for 80.75 instead of 95 EUR, the 14.25 EUR difference is a pure revenue loss — there is no cost–value asymmetry behind it.
  • It extends to existing demand too. The open discount also goes to the guest who would have booked at full price — and they are the majority. This is cannibalization: the campaign reprices our own demand that would have arrived anyway.

2. Value-add — exploiting the cost–value asymmetry

The essence of the value-add offer: the room rate stays, but the guest gets something alongside it whose perceived value is a multiple of the hotel’s marginal cost. The classic example is the hotel’s own spa: an entry has a list price of 25 EUR — that is what the guest perceives — but if the spa has spare capacity, one extra entry costs the hotel (towels, cleaning, a share of energy) only ~4 EUR at the margin. The guest receives 25 EUR of value, the hotel pays 4 EUR — this roughly 6:1 ratio is the engine of the value-add. The same works with F&B (welcome drink, dinner coupon) and with late check-out — which, in an empty November, has literally zero marginal cost.

The Total Revenue Management mindset introduced in lesson 45 becomes a tactical weapon here: whoever knows the marginal cost of their own ancillary areas (lesson 30) can give value instead of a discount — at a fraction of the price.

3. Package — price opacity and cross-selling

The package is the value-add’s sibling, with one extra property: the room and the services appear at a single package price. This makes the package price opaque: neither the guest, nor the competitor, nor the price-comparison site can reverse-engineer how much of it is the room. That is worth two things:

  • Price-integrity protection: the BAR stays untouched, the public price position (lesson 44’s rate bridge) is not damaged — while the package may even hide an effective discount.
  • Ancillary cross-selling: the package steers the guest toward services (dinner, a spa treatment) they wouldn’t have bought on their own — and whose margin stays with the hotel.
Pure discountValue-addPackage
What the guest seesA lower priceThe same price, more contentOne package price, incomparable
What it costs the hotel100% of the discountThe service’s marginal costMarginal cost + possibly a hidden discount
Effect on price positionDamages it (open BAR cut)NeutralProtects it (opaque)
When it’s strongGenuinely price-sensitive demandPrice-insensitive, experience-driven demandAncillary capacity + price protection together
Main riskCannibalization + eroding price expectationsWeaker immediate demand effectMore complex communication and operations

Which one when? — diagnosing the demand gap

Choosing the promo type is not a matter of taste but of diagnosis: why is demand missing? Lesson 36’s price-elasticity logic returns here: an open discount only makes sense where demand is genuinely elastic (|E| > 1) — where the lower price really moves new guests, instead of just repricing the existing ones.

Nature of the demand gapSymptomRecommended tool
Price-sensitive valley — travel intent exists in the market, but above the price pointThe compset’s cheaper segment fills, we don’t; OTA searches happen, conversion doesn’tTargeted discount — preferably in a closed group
Price-insensitive gap — the barrier is not the price but the lack of a reason to travelPickup doesn’t move even on a price cutValue-add / package — we give a reason for the trip, not a price cut
Awareness gap in a feeder marketOne feeder market’s share is far below its potentialGeo-targeted campaign, with a package offer
Last-minute holeCapacity stuck on dates within 7-10 daysA closed, short flash offer (newsletter/members) — NOT an open BAR dump
Structural pace lag over monthsEvery period is slow, regardless of segmentNot a promo case — diagnosis needed (lesson 44): product, visibility, distribution

The last row is the most important: a promo is a tactical response to the symptom of a demand gap, not a cure for the disease. If the hotel has been lagging everywhere for months, a campaign only masks (and marks down) the real problem.

How much? — the depth of the discount

Before we get to targeting, a question surprisingly few people ever calculate: how deep should the cut be? The maths is unforgiving: after an open price cut of −d, you need d/(1−d) extra volume for the same revenue — and since every additional occupied room also brings variable cost, you need even more for the same contribution. With Hotel Peaqplus City’s numbers (95 EUR ADR, 22 EUR variable cost):

Open discountExtra volume for equal revenue (d/(1−d))Extra volume for equal contribution
−10%+11.1%+15.0%
−15%+17.6%+24.3%
−20%+25.0%+35.2%
−30%+42.9%+64.0%

The contribution column comes from the ratio (P − c) / (P(1−d) − c) — at −20% that is 73 / 54, i.e. +35.2%. The table says two things. First, the required volume response climbs steeply with discount depth: an open −20% only avoids losing money if total room nights in the discounted period end up at least +35% higher than they would have been without it — in lesson 36’s language, that is already a strong elasticity assumption. Second, going deeper is the weakest answer to a weak campaign: if −15% didn’t move demand, −25% typically doesn’t fix the price point — it makes the cannibalization more expensive. Instead of depth, targeting is almost always the better dial — that is what the next section is about. And the maths of the targeted, code-based promo is worked through below: there, it is not total volume that has to grow, but the share of genuinely new guests among the promo bookers that has to be high enough.

To whom? — the four targeting dimensions

The weakness of Esther’s original proposal (“for everyone, on every channel”) is precisely the lack of targeting. We can narrow along four dimensions — and every narrowing reduces cannibalization:

1. Booking window

We tie the discount to the distance between booking and arrival. An early-bird condition (only 30+ days before arrival) reaches the price-sensitive, flexible planners, while leaving the short-window, less price-sensitive demand (lesson 37’s booking-curve logic) at full price. The reverse: a last-minute flash applies only to holes within 7 days — and doesn’t teach the early booker to wait.

2. Segment — the power of the closed group

The closed group (newsletter subscribers, member rate, regulars) is the most valuable promo target, for two reasons. First, a closed offer does not violate rate parity: since it is not a public rate, the BAR and the rate bridge stay untouched. Second, a campaign sent to your own list has near-zero distribution cost — no advertising CAC (customer acquisition cost), no commission. In lesson 49 we will see: building the closed circle is a strategic tool for exactly this reason, not just a marketing hobby.

3. Channel — the commission-loaded discount

The same −15% does not cost the same on every channel — this is lesson 43’s net-ADR mindset translated to promos. Let’s compute it at Hotel Peaqplus City’s 95 EUR November rate:

  • Direct (closed newsletter): promo rate 80.75 EUR, minus booking engine + card fees (~3%) → the hotel keeps ~78.3 EUR.
  • OTA campaign: promo rate 80.75 EUR, minus an 18% effective commission → ~66.2 EUR.

That is a difference of ~12 EUR per night on the same offer — the OTA promo is a commission-loaded discount: we give the discount and pay the commission on the acquired guest as well. On top of that, the OTAs’ visibility campaigns (deal programmes, boosted placements) often require extra commission points or a mandatory minimum discount. This does not make OTA promos forbidden — in a valley period the OTA brings the widest reach — but the order is fixed: the closed and direct circle first, and the commission-loaded channel only for the remaining demand.

4. Geo — feeder-market targeting

A digital campaign can be targeted at country or city level. If the hotel is under-penetrated in one feeder market (say, one international source market whose share is far below the location’s potential), the promo can be directed there without spoiling the price expectations of the home core market — it simply never appears there. The geo dimension is rarely a standalone tool; it is more a refiner of the other dimensions.

The November campaign in numbers — incremental vs. cannibalization

Now comes the backbone of the lesson. Daniel steps to the whiteboard: “Before we switch anything live, let’s model it — when is it worth it at all?” You already know the two key concepts from lesson 31:

  • Incremental: the night the campaign brought in — the guest would not have come without it.
  • Cannibalization: the night that would have arrived anyway at full price — but now comes discounted.

The discount variant

Suppose a −15% campaign goes out for the weak two weeks of November. The assumptions:

  • Full rate (ADR): 95 EUR → promo rate 95 × 0.85 = 80.75 EUR, the discount is 14.25 EUR/night.
  • 250 nights of bookings arrive on the promo code.
  • Based on last year’s baseline pace, an estimated 60% of the bookers would have come anyway150 nights cannibalized, the true incremental is 100 nights.

The revenue effect:

ItemCalculationValue
Incremental revenue100 nights × 80.75 EUR+8,075 EUR
Cannibalization loss150 nights × 14.25 EUR discount−2,137.5 EUR
Net revenue effect8,075 − 2,137.5+5,937.5 EUR

Positive — but the revenue view still flatters. An incremental night also brings variable cost (cleaning, laundry, breakfast): at Hotel Peaqplus City this is 22 EUR per occupied room. The cannibalized night’s cost doesn’t change (that guest was coming anyway) — but the incremental night’s contribution is only 80.75 − 22 = 58.75 EUR:

ItemCalculationValue
Incremental contribution100 nights × (80.75 − 22)+5,875 EUR
Cannibalization loss150 nights × 14.25−2,137.5 EUR
Net contribution effect5,875 − 2,137.5+3,737.5 EUR

The break-even incremental share — the formula

The campaign breaks even when the incremental contribution exactly covers the cannibalized discount loss. Let i be the incremental share, d the discount percentage, P the full rate and c the variable cost:

i × [P(1−d) − c] = (1−i) × P·d

i × [P(1−d) − c + P·d] = P·d

i × (P − c) = P·d

i* = P·d / (P − c) = d / (1 − c/P)

In other words, the break-even incremental share = discount% divided by (1 − the variable cost’s share of the rate). Two lessons can be read out of it:

  • If we take the variable cost as zero (pure revenue view), i* = d: for a −15% promo it is enough if 15% of the bookers are genuinely new demand. That is a surprisingly low threshold — which is why almost every campaign looks “successful” if you only look at revenue.
  • The real, contribution-based threshold is higher. With Hotel Peaqplus City’s numbers: i* = 0.15 / (1 − 22/95) = 0.15 / 0.768 = 19.5%.

Check with numbers: of 250 nights, 19.5% incremental = 48.8 nights × 58.75 EUR contribution = 2,867 EUR; the 201.2 cannibalized nights × 14.25 EUR = 2,867 EUR. The two balance out. ✓

The modelled campaign’s 40% incremental share is therefore comfortably above the 19.5% threshold — the discount variant works. But Esther’s original −20% on everything? There the threshold is i* = 0.20 / 0.768 = 26% — and since the open, every-channel, whole-month campaign also extends to the strongest dates and the most certain guests, the cannibalization share would slide well above 60%, and the incremental share below the threshold. The same tool, without targeting: a loss.

The value-add variant — same valley, better economics

Now Daniel’s alternative: instead of a discount, spa entry for two with the stay. Perceived value 2 × 25 = 50 EUR; the hotel’s marginal cost is 2 × 4 = 8 EUR per stay, i.e. 4 EUR/night at a 2-night average stay. A value-add typically moves fewer bookings than an open price cut — say 180 nights, with the same 60% cannibalization estimate: 108 nights cannibalized, 72 nights incremental.

ItemCalculationValue
Incremental contribution72 nights × (95 − 22 − 4)+4,968 EUR
Cost of the cannibalized nights108 nights × 4 EUR spa marginal cost−432 EUR
Net contribution effect4,968 − 432+4,536 EUR

The break-even with the same logic (v = the value-add’s marginal cost per night): i × (P − c − v) = (1−i) × v → i* = v / (P − c) = 4 / 73 = 5.5%.

Put the two variants side by side:

Discount −15%Value-add (spa)
Promo nights250180
Incremental nights (40%)10072
Cost per cannibalized night14.25 EUR4.00 EUR
Contribution per incremental night58.75 EUR69.00 EUR
Net contribution effect+3,737.5 EUR+4,536 EUR
Break-even incremental share19.5%5.5%

The value-add delivers 21% more net contribution from 28% fewer bookings — and its break-even threshold is little more than a quarter of the discount’s. The reason is twofold: the incremental guest pays full price, and the cannibalized guest doesn’t take away 14.25 EUR of revenue, only causes 4 EUR of spa cost. The value-add’s error tolerance is therefore dramatically better: even if our cannibalization estimate was optimistic, the campaign is hard to turn into a loss. With the discount, one bad estimate can push the campaign below break-even.

Measurement in practice

The model above is only worth as much as its inputs are measurable. Three practical rules:

1. Every promo runs on its own code or rate plan. If the offer cannot be separated in the booking data (own coupon code, dedicated rate plan, package code), then nothing can be measured afterwards — what remains is the “the campaign went well” feeling, instead of a number. This is the minimum condition without which a promo does not launch.

2. Cannibalization can only be estimated by comparison. The fact of a promo-code booking doesn’t tell you whether the guest would have come anyway. Two practical methods:

  • Control period: we measure the promo period’s total pace against our own historical booking curve (lesson 37). The true incremental is not the volume that came in on the code, but the total pickup surplus over the baseline — if 250 nights came in on the code but total pickup grew by only ~100 nights, the difference (150 nights) is shifting: non-promo bookings fell by the same amount. This is exactly our model’s 60% cannibalization assumption.
  • Control segment: the pickup of a group excluded from the campaign (e.g. a non-targeted feeder market or the corporate segment) shows what demand would have done on its own.

3. The attribution trap: “the promo takes credit for everything”. Campaign reports tend to attribute every booking that arrives during the campaign to the campaign — advertising platforms (with last-click logic) even more so. If demand picks up in November anyway (a conference announcement, a competitor closing), the promo report shows that as its own success too. The estimated incremental share must therefore always be reviewed against the control, and big numbers treated with suspicion: 60% cannibalization is not pessimism, it is the typical city-hotel experience with open campaigns.

Back to the October afternoon

An hour later, this is on the whiteboard — instead of NOVEMBER20, a three-element, targeted plan:

ElementTargetingOfferMeasurement
Closed flashNewsletter + member circle, arrivals Nov 9–22, min. 2 nights (lesson 42), direct only−15% closed discountDedicated promo code, control: last year’s pace
”November City Spa” packageOpen, on OTA and direct, for the whole valley periodRoom + spa entry for two + late check-out, at one package price (BAR untouched)Package rate plan, ancillary contribution on its own line
Geo campaignOne under-penetrated international feeder market, performance ads for the packageThe same package with geo-targeted creativeCampaign code + geo-split conversion

The holiday weekend at the start of the month and the strong weekend at the end of the month (when the city’s Christmas markets open) are excluded — not a euro of promo budget goes there. The open −20% is gone: the discount moved into a closed circle (rate parity and the rate bridge intact), value went to the open channels instead of price, and every element measures on its own code. Esther looks at the board: “We’re giving less discount than I wanted — and we’ll earn more on it. At the December revenue meeting I’ll come with the numbers against the control.” Daniel nods: that is exactly where they belong — in lesson 47 we will see how promo measurement becomes a recurring item on the meeting agenda.

The classic traps

Trap 1: The promo that becomes permanent

Whatever appears every November (then in every valley, then always) is not a promotion but a price cut in instalments. The guest learns: whoever has seen the −20% twice will wait for it the third time — the discount gets built into price expectations, and full-price demand dries up. A promo is by definition an exception: time-boxed, conditional, justified.

Trap 2: An open BAR cut where a closed group would do

The open discount is the most visible — to the competitor (rate-war risk, lesson 44), to the price-comparison sites, and to the future guest’s price expectations. If the target segment can be reached in a closed circle (newsletter, members, geo-targeted campaign), the open cut causes needless collateral damage. The order is always: closed → packaged → open — and open only when the first two have demonstrably proven insufficient.

Trap 3: The promo as symptom treatment

If pace is lagging structurally, for months, in every segment, the promo is morphine: it masks the pain while the disease (product, visibility, distribution, price position) keeps getting worse — and it erodes the ADR along the way. Lesson 44’s diagnosis logic comes first: a promo only goes against a concrete, well-bounded, understood demand gap.

Trap 4: The unmeasured campaign

With a campaign launched without a code, without a control, without a break-even stated up front, the definition of success is born after the fact — and it will always succeed. The discipline is simple: before launch we record the expected incremental share and the break-even threshold, while it runs we measure on a separate code, afterwards we evaluate against the control. If those three are not in place, the campaign is not a promotion but a hope.

Key takeaways

  • Three promo types, three cost structures: the pure discount is lost revenue in its full amount and extends to existing demand; the value-add uses the marginal-cost–perceived-value asymmetry (spa entry: 25 EUR value, ~4 EUR cost); the package protects price integrity with opaque pricing and cross-sells ancillary.
  • The promo type is a question of diagnosis: a targeted (preferably closed) discount for a price-sensitive valley, value-add/package for a price-insensitive gap, a closed flash for a last-minute hole — and for a structural pace problem, not a promo but root-cause hunting.
  • Discount depth is an expensive dial: after an open cut of −d you need d/(1−d) extra volume for the same revenue (+17.6% at −15%, +25% at −20%), and even more at contribution level — target instead of going deeper.
  • Four targeting dimensions — window, segment, channel, geo — and every narrowing reduces cannibalization. The closed group gives a discount without violating parity; the OTA promo is a commission-loaded discount (net-ADR mindset, lesson 43).
  • The campaign is carried by the incremental nights and paid for by the cannibalization. The break-even incremental share = discount% / (1 − variable cost / rate) — 19.5% for Hotel Peaqplus City’s −15% promo; for the value-add variant (i* = marginal cost / contribution) just 5.5%.
  • No measurement, no promo: a dedicated code/rate plan, a control period or control segment, and a break-even recorded up front — otherwise the attribution trap (“the promo takes credit for everything”) lies every campaign into a success.
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.

Hotel Peaqplus City: 95 EUR ADR, an open −15% discount, 22 EUR variable cost per occupied room. At what incremental share does the campaign break even at contribution level?
Pace is slow, but pickup doesn't move even on a price cut — the barrier isn't the price, it's the lack of a reason to travel. What do you launch?
The campaign report shows 250 nights on the promo code — success? The control analysis: total pickup barely grew versus the baseline pace, and non-promo bookings fell by nearly as much as came in on the code. What happened?
Go deeper
Related terms

See the full definitions in the glossary.

Apply it to your own hotel

A hotel with a 110 EUR ADR runs an open −20% campaign (variable cost 26 EUR per occupied room). 320 nights come in on the promo rate; the control analysis says 70% are cannibalized. Compute the break-even incremental share with the formula, then the campaign's net contribution effect — was it worth it? Which targeting change would improve the number the most? And: design a value-add promo for Hotel Peaqplus City's restaurant — a dinner coupon for two, perceived value 60 EUR, F&B marginal cost 18 EUR per stay (2-night average, 95 EUR ADR, 22 EUR/night variable cost). Compute the break-even incremental share, and say which two targeting dimensions you would attach to the offer, and why.

Further reading
  • The international chains work from a promo calendar: offers for the year's valley periods are planned months ahead, down to type and targeting, with a templated measurement frame. In an independent hotel the minimum routine: every promo runs on its own code, a break-even written down before launch, and a quarterly promo audit — which offers have quietly become permanent, and what the past year's discount pattern has taught your guests.
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.