How should vegan hotels sell holiday and peak-date packages on their own site without becoming an OTA discount channel?
Quick answer
Sell a named package SKU on your engine: nights, kitchen inclusions, direct-only extras, cancel window matching the OTA product. Keep OTAs live at the same public BAR. Do not invent a cheaper web rate, a fake sold-out banner, a carbon-neutral festive stay, or a last-minute OTA dump. Past-guest email first. Scarcity only when PMS remaining is true. Year-round stay pages: vegan hotel direct bookings. Commission mix: direct vs OTA.
Vs other Intelligence guides
| Guide | Job |
|---|---|
| Vegan hotel direct bookings | Year-round stay page and claims freeze. Not a peak SKU. |
| Direct vs OTA mix | Commission and keep-OTA discovery. This page is the package you put on the engine. |
| Slow-season retreat occupancy | Leftover retreat rooms. Protecting hotel peak dates is the opposite job. |
| EmpCo hospitality copy | Site, menu, GBP, OTA crawl. Do not dress the package as an eco stay. |
| Ethical Black Friday | Product Cyber Week. Not lodging packages. |
| Waitlist and drops | Honest scarcity. Use only when remaining rooms are true. |
| This guide | Peak-date package matrix, OTA rate fence, past-guest email, true remaining-inventory rule |
Composite operator guidance. Not a forecast. Do not paste another property's occupancy % onto the package page. Counsel reads your OTA clause before any "always cheaper on our site" line.
Why peak packages become OTA discount nights
Guests shopping Christmas week, Easter, school breaks, long weekends, city events, or vegan-festival dates compare three things: will I eat, what is included, can I cancel. OTAs win when your engine is slower and the only offer is a cheaper public rate. That teaches the guest that peak dates live on Booking.com.
Rate-parity clauses often block a secret cheaper web rate. A festive dinner you cannot honor for OTA walk-ins should not be pasted into the listing as BAR. Last-minute percent-off on both channels trains the next peak. Direct wins on a SKU OTAs cannot operationalize. Run contribution in the break-even calculator before anyone drafts a percent.
Steal this package matrix
One row per peak. GM plus kitchen sign it. Landing page, confirmation, and OTA extranet copy the fence. Blank beats theater.
| SKU | Nights / dates | Inclusions (all channels) | Direct-only extras | OTA rate fence | Scarcity rule |
|---|---|---|---|---|---|
| Named dinner stay | 2 to 3 nights you can staff | Room plus named vegan dinner, hours, allergens | Late checkout, kitchen tour, vegan welcome drink | Public BAR matches the OTA. Package is a direct SKU, not a cheaper room | Waitlist only when PMS remaining is true |
| Long-weekend vegan stay | 2 nights on a bank holiday or local long weekend | Breakfast included only if kitchen scope is true | Parking, dietary pre-stay form the kitchen reads | OTA stays room-only at BAR. Do not percent-off BAR to fill | Last-rooms email uses the PMS count |
| Event or school-break stay | 3+ nights around a city event, school break, or vegan festival | Named kitchen hours. Cancel matches the OTA product you replace | Member rate honest after typical OTA fees, not a public dump | Keep the OTA listing live. Do not ghost peak dates | Close the SKU at your hold-back, not when marketing wants urgency |
| Gift stay for a later peak | Named nights plus blackouts on the voucher | Kitchen scope printed on the voucher | Direct checkout only | Do not list the gift SKU on the OTA | Expiry and blackouts on the page. No open-ended eco gift |
Christmas and New Year are one repeating peak type. Easter, Golden Week, southern-hemisphere summer, and local festivals use the same row. Shift the dates. Do not ship a one-year campaign page.
Direct vs OTA fence
| Move | On your site | On the OTA | Do not |
|---|---|---|---|
| Public room rate | BAR at least at parity | Same BAR | Secret cheaper web rate |
| Named package | SKU with inclusions on one screen | Room-only, or restaurant on site if walk-ins get it | Paste a dinner you cannot honor into the OTA as BAR |
| Value-adds | Breakfast, parking, late checkout, diet form | Only if you can staff them for OTA arrivals | Call extras eco rewards or a carbon-neutral upgrade |
| Last rooms | Email with remaining count from PMS | Optional close-out at BAR | Flash 40% on both channels |
| Paid and metasearch | Land on the package LP | Do not buy ads that land on the OTA | Queries like cheapest vegan hotel [city] |
Keep OTAs as discovery. That mix job lives in direct vs OTA. This fence only stops peak dates becoming the discount aisle. Paid defends brand terms; see branded search defense. LP friction: landing page CRO.
Sell window and three emails
- 8 to 12 weeks before the peak: lock SKU, inclusions, contribution floor, claims freeze. Build the LP. Past guests first (email marketing).
- 4 to 8 weeks out: site and brand search. No public percent. No fake sold-out.
- Last rooms: only if PMS remaining is true. Waitlist for overflow (waitlist). After the peak, do not dump the next peak on the OTA to make up.
| Who | Job | Banned | |
|---|---|---|---|
| Past-guest open | Stayed before, owned list | Named dates, named dinner, book-direct extras | Percent off. Eco festive stay. Invented sold-out |
| Remaining / waitlist | Opened the first email or joined waitlist | True remaining rooms or a waitlist, not both as theater | Almost gone with empty nights still in PMS |
| Last rooms | Only if remaining is true | PMS count in the line. Same SKU, same fence | A new public dump on the OTA the same day |
Do not write eco-friendly festive package or climate-neutral holiday. Keep kitchen facts. Run leftover adjectives through the green claims calculator and the EmpCo hospitality crawl.
Go / no-go
| Call | When |
|---|---|
| No-go on public peak % | No contribution floor, or last year's OTA dump wrecked the next peak ADR |
| Go on dual distribution plus SKU | Matrix filled, kitchen can staff the dinner, OTA BAR matches, past-guest email sendable, remaining rule uses PMS |
| Partial go | Keep primary OTA at BAR, sell one named package direct-only, skip a second OTA close-out |
Score direct vs OTA share of those date nights and contribution after commission, package LP conversion, last-rooms emails vs PMS remaining that morning, and pre-arrival kitchen questions. Do not paste an occupancy lift or a 3x direct claim. Your invoices win.
Peak dates are a SKU, not a sale
OTAs rent discovery. A named dinner and a true remaining count own the guest. A cheaper public rate rents the relationship forever.
Template fields (paste and fill)
| Field | Fill with | Do not invent |
|---|---|---|
[peak_dates] | the local peak (holiday, school break, event) | one campaign year as the only product |
[package_sku] | nights plus named kitchen inclusion | a vibe with no dinner hours |
[direct_extras] | late checkout, parking, diet form, kitchen tour, member rate after typical OTA fees | always cheaper on our site (unless counsel cleared it) |
[ota_fence] | BAR parity; package is direct-only or room-only on OTA | a secret web undercut |
[remaining_rule] | PMS remaining count; waitlist when true | almost gone on an empty calendar |
[past_guest_list] | sendable alumni vs never-stayed | scraped OTA emails you were not granted |
Brief: "[package_sku] on [peak_dates]. Direct extras: [direct_extras]. OTA: [ota_fence]. Remaining: [remaining_rule]." Percents here (15 to 30, 40) are commission bands or anti-patterns, not recommended markdowns.
7-day actions
- Day 1: pick one upcoming peak. Screenshot OTA vs engine for those dates. Start the matrix.
- Day 2: fill [package_sku], [direct_extras], [ota_fence]. Name contribution per package night.
- Day 3: freeze eco festive and carbon-neutral lines. Kitchen signs dinner hours and allergens.
- Day 4: build the package LP. Same photos as the OTA. One book path. No discount popup.
- Day 5: paste the fence into every OTA extranet. Room-only at BAR unless you can staff the inclusion for OTA arrivals.
- Day 6: send the past-guest email. Paid lands on the LP, not the OTA.
- Day 7: wire [remaining_rule] to PMS. Score mix and contribution on those dates, not vanity occupancy.
Frequently asked questions
How should vegan hotels sell holiday and peak-date packages on their own site without becoming an OTA discount channel?
Sell a named package SKU on your engine with kitchen inclusions and direct-only extras. Keep OTAs live at the same public BAR. Do not invent a cheaper web rate, a fake sold-out banner, or a last-minute OTA dump. Past-guest email first. Scarcity only when PMS remaining rooms are true.
Can we undercut Booking.com for Christmas week or another peak?
Usually no if parity clauses apply. Offer a staffable extra (named vegan dinner, late checkout, diet form) instead of a secret cheaper room. This is ops, not legal advice on your contract.
Should we take peak dates off the OTA so guests have to book direct?
Not if first-time guests still arrive from OTAs. Ghosting peak dates often moves the search to a competitor listing. Keep discovery. Sell the package as a direct SKU.
When should we start selling the next peak?
Lock the SKU 8 to 12 weeks out. Email past guests first. Last-rooms copy only when remaining inventory is true. Do not wait until the arrival week and then dump the rate.
How is this different from year-round direct booking or slow-season retreat fill?
Year-round direct booking is the stay page and claims freeze. Direct vs OTA is commission mix. Slow-season retreat occupancy is leftover rooms. This guide is the peak-date package matrix and the fence that stops those nights becoming an OTA discount aisle.