AI Direct Booking, Upsell & Table Management System

Every Booking.com Reservation Was a Guest Who Already Knew Your Name — And Paid an Agency 18% to Introduce You

Hotels & Restaurants

A boutique hotel with an in-house restaurant was paying heavy OTA commissions on bookings it could have captured directly, losing room-night revenue to no-shows, and missing restaurant covers during peak hours due to unanswered calls. We built an AI system that drives direct bookings, automates deposits, and manages the table queue — recovering margin on both sides of the business.

Get a Free Automation Audit

Intro

Short intro

For independent hotels, the real margin battle isn't against empty rooms — it's against OTA commission. A guest who books through Booking.com or Expedia isn't a new customer found; in most cases, they're a customer the hotel could have captured directly, paying 15–20% less to do it. Add a restaurant that loses covers to unanswered phones during dinner rush, and the same property is leaking margin on both sides of the business simultaneously. This case is about closing both gaps at once.

Kubera AI case dashboard for hotels and restaurants automation

About

About the project

A boutique hotel on Spain's coast (18 rooms) with an in-house restaurant open to both guests and walk-in diners, located in a tourist destination with strong seasonality (Easter, June–September peak, shoulder-season trickle through spring/autumn). Bookings came primarily through Booking.com and Expedia, with a secondary trickle through the hotel's own website and direct phone/email inquiries from repeat guests. The restaurant ran on phone reservations and walk-ins only, with a single staff member juggling the host stand and the phone during the busiest service hours.

Starting point

Initial situation

This property had two separate, well-documented leak profiles running in parallel — one on the rooms side, one on the restaurant side:

  • OTA dependency: roughly 70–75% of bookings arrived through Booking.com/Expedia, carrying commission rates typically 15–18% of the booking value — a structurally heavy cost for a hotel that, in many cases, the guest would have booked directly if the direct channel had been as easy to find and trust
  • No-show / late cancellation: without a deposit requirement on a meaningful share of bookings (particularly OTA bookings with free-cancellation terms), no-show and same-day cancellation rates in this market segment typically run 8–12% — a room held and unsold the same night it's cancelled is lost revenue with effectively zero chance of resale
  • Pre-arrival upsell left on the table: room upgrades, early check-in, airport transfer, and breakfast packages were only offered at check-in, if at all — a missed window, since pre-arrival upsell (sent 3–7 days before arrival) consistently converts better than a same-day desk pitch made while a guest is tired from travel and focused on getting to their room
  • Phone reservations competing with service: during peak dinner hours (8–10pm in the Spanish dining schedule), the single staff member managing both walk-ins and the phone meant a meaningful share of incoming reservation calls went unanswered — industry data on restaurant phone handling shows that a missed call during peak hours converts to a lost reservation far more often than a missed call during slow hours, because the caller simply tries the next restaurant
  • No structured waitlist: walk-ins turned away during full periods had no system to be notified of a table opening — a directly recoverable cover, lost purely to lack of a queue mechanism

Goal

Project goal

Two separate, profitable leaks were happening at the same time: OTA commission and no-show exposure on rooms, plus missed calls and lost covers in the restaurant. The goal was to close both without adding front-desk or floor load.

  • Shift booking mix toward the direct channel to reduce OTA commission exposure without reducing total bookings
  • Reduce no-show/cancellation losses through structured deposit collection, especially on free-cancellation OTA bookings
  • Move room and experience upsell to the pre-arrival window, where conversion is structurally higher than at check-in
  • Eliminate missed restaurant reservation calls during peak hours and capture walk-in overflow through an automated waitlist

Strategy

Automation strategy

Two parallel tracks, because rooms and restaurant operate on different rhythms and different revenue logic:

  • Rooms — Track 1: Direct booking capture. Retargeting and post-stay sequences nudge past and inquiring guests toward booking directly next time, with a small rate or perk advantage that still costs less than OTA commission. Website booking flow is matched in ease-of-use to what guests already expect from OTA platforms — the actual barrier to direct booking is usually friction, not preference.
  • Rooms — Track 2: Deposit and pre-arrival sequence. Bookings without a deposit requirement (notably free-cancellation OTA bookings) are flagged, and a structured deposit/card-guarantee request is triggered for direct bookings going forward. All confirmed bookings receive a pre-arrival sequence at 5–7 days and 48h out, offering room upgrades, early check-in, airport transfer, and breakfast/dinner packages — sold calmly before arrival, not pitched at a check-in desk.
  • Restaurant — Track 3: Call coverage. Every incoming reservation call is answered instantly by an AI voice agent that checks live table availability and books directly — no call goes unanswered during peak service, regardless of how busy the floor staff is.
  • Restaurant — Track 4: Waitlist capture. Walk-ins arriving during a full period are added to a digital waitlist with an SMS notification when a table opens, instead of being turned away with no further contact — converting what would have been a lost cover into a delayed but captured one.

Architecture

Workflow architecture

[ROOMS]
[Booking In: Booking.com / Expedia / Own Website / Direct Phone]
        ↓
[Deposit Check: Required? → Card Guarantee or Pre-Payment]
        ↓
[Pre-Arrival Sequence: 5-7 Days Out → Upsell Offers
 (Room Upgrade / Early Check-in / Transfer / Breakfast)]
        ↓
[48h Reminder + Final Upsell Window]
        ↓
[Post-Stay: Review Request + Direct-Booking Incentive
 for Next Stay]
        ↓
[Owner Dashboard: Direct vs OTA Mix %, No-Show Rate,
 Upsell Attach Rate, RevPAR]

[RESTAURANT]
[Inbound: Phone Call / Website / Walk-in]
        ↓
[AI Voice Agent — Live Table Availability Check]
        ↓
   ┌───────────────┴───────────────┐
   ↓                               ↓
[Table Available → Book]    [Full → Add to Digital Waitlist]
        ↓                               ↓
[Confirmation SMS]          [SMS Alert When Table Opens]
        ↓
[Owner Dashboard: Reservation Volume, Missed-Call Recovery,
 Waitlist Conversion Rate]

Implemented

What was implemented

  • Direct-booking nudge sequence targeting past guests and OTA inquirers, with a modest rate/perk incentive that still undercuts OTA commission cost
  • Deposit/card-guarantee automation, triggered on bookings lacking payment protection
  • Pre-arrival upsell sequence (room upgrade, early check-in, transfer, breakfast package) at 5–7 days and 48h before arrival
  • Post-stay automation: review request plus a direct-booking incentive for the next visit
  • Owner dashboard tracking direct vs. OTA booking mix, no-show rate, upsell attach rate, and RevPAR (revenue per available room)
  • AI voice agent answering every incoming reservation call, checking live availability, and booking directly — no missed calls during peak service
  • Digital waitlist system for walk-ins during full periods, with automated SMS notification when a table becomes available
  • Reservation data synced with the hotel's existing booking/POS system to avoid double-booking tables across phone, walk-in, and online channels
  • Owner dashboard tracking reservation volume, missed-call recovery rate, and waitlist-to-seated conversion

Tools / Stack

Tools / Stack

  • n8n (orchestration)
  • OpenAI / GPT-4o (voice agent + conversation logic)
  • Channel manager integration (syncing Booking.com/Expedia availability with the hotel's own booking engine to avoid overbooking)
  • PMS (Property Management System) integration for room inventory, deposits, and guest profiles
  • Restaurant reservation/table management system (live availability + waitlist, synced with POS)
  • Twilio or equivalent telephony (AI voice agent for restaurant calls)
  • SMS gateway (waitlist alerts, pre-arrival sequences)
  • Payment gateway integration (Redsys or Stripe, for deposit/card-guarantee collection)
  • PostgreSQL (guest + diner CRM layer)

Economics

Business economics

Modeled on this property's profile (18 rooms, in-house restaurant, ~70–75% OTA-dependent booking mix) — every figure below follows a calculation any independent hotel or restaurant can re-run on its own occupancy, ADR, and booking mix.

  • OTA commission exposure — the core leak: At an average daily rate (ADR) of ~€110/night and ~75% occupancy across the season, 18 rooms generate roughly €2,700/day in gross room revenue at full performance, or ~€81,000/month in peak months. With ~72% of bookings flowing through OTAs at an average commission of ~16.5%, the hotel is paying roughly €9,600/month in OTA commission during peak months on bookings that, in many cases, the same guest would have completed directly given an equally easy booking path. Shifting even 10 percentage points of booking mix from OTA to direct (a realistic, gradual target — not a wholesale channel shift) recovers approximately €1,300–1,500/month in retained commission during peak season, since direct bookings carry no intermediary fee beyond payment processing (typically 1.5–2.5%).
  • No-show / cancellation cost: At an 8–12% no-show/late-cancellation rate on bookings without a deposit requirement, and roughly 40% of total bookings lacking payment protection (mostly free-cancellation OTA bookings), this represents a recurring share of nights sold on paper but unoccupied and unsold in reality. On ~18 rooms at ~75% occupancy (≈13–14 rooms/night sold), an effective 9% no-show rate across the unprotected share works out to roughly 3–4 lost room-nights/month during peak season. At €110 ADR, that's ~€350–440/month in directly recoverable revenue simply by extending deposit/card-guarantee requirements to bookings that currently lack them — a small number on its own, but compounding across a 5–6 month season and stacking with the OTA-mix savings above.
  • Pre-arrival upsell, before vs. after: Check-in-desk-only upsell (room upgrade, transfer, breakfast package): typical attach rate 10–15% of bookings, pitched inconsistently and often skipped when front desk is busy with arrivals. Pre-arrival digital upsell (5–7 days and 48h before arrival): typical attach rate 25–30% of bookings — consistent with the broader pattern that pre-trip upsell outperforms day-of upsell across hospitality and travel. At an average add-on value of ~€35–45 per booking that takes an upsell, and roughly 380–400 bookings/month in peak season, lifting attach rate from ~12% to ~27% adds roughly 55–60 additional upsell sales/month. → Roughly €2,000–2,500/month in additional upsell revenue during peak season.
  • Restaurant — missed-call and waitlist recovery: During peak dinner service (a 2-hour window most nights in season), industry data on restaurant phone handling indicates a meaningful share of calls during the busiest periods go unanswered when a single staff member is also managing the floor — a conservative estimate for this property is 6–10 missed reservation calls/week during peak months. At an average cover value (including drinks) of ~€28/person and an average party size of ~2.5, each missed call represents roughly €70 in lost covers if that caller doesn't try back — recovering even half of these missed calls via the AI voice agent adds roughly €840–1,400/month in recovered restaurant revenue during peak season. Waitlist capture on walk-in overflow (estimated 8–12 turned-away parties/week in peak season) recovering even 30–40% as seated covers adds a further €350–600/month.
  • Combined seasonal impact, conservative estimate: OTA-mix shift savings: +€1,300–1,500/month. No-show/deposit recovery: +€350–440/month. Pre-arrival upsell lift: +€2,000–2,500/month. Restaurant missed-call + waitlist recovery: +€1,190–2,000/month. Combined: roughly €4,800–6,400/month in additional/retained revenue during the 5–6 month high season, drawn from the same room inventory and the same restaurant covers the property already had — not from new demand, but from stopping the property from giving margin away to intermediaries, no-shows, missed calls, and mistimed upsell offers.

Results

Expected results

  • Direct booking share increasing gradually as a percentage of total mix, reducing OTA commission exposure without reducing total occupancy
  • No-show/cancellation losses reduced through extended deposit/card-guarantee coverage on previously unprotected bookings
  • Pre-arrival upsell attach rate roughly doubling (10–15% → 25–30%) by shifting the offer window away from a busy check-in desk
  • Missed restaurant reservation calls during peak service reduced to near zero through AI voice agent coverage
  • A measurable share of walk-in overflow converted from turned-away guests into seated covers via digital waitlist
  • Owner-level dashboard tracking direct-vs-OTA mix, no-show rate, upsell attach rate, RevPAR, and restaurant missed-call recovery — replacing a season-end guess with trackable monthly numbers

Value

What the business gets

  • A structural reduction in OTA dependency without sacrificing total bookings — the same guest, captured through a cheaper channel
  • A deposit/cancellation policy that protects room-nights without requiring manual follow-up on every booking
  • An upsell channel that works at the moment guests are most receptive — before arrival, not at a busy front desk
  • A restaurant phone line that never loses a reservation to being short-staffed during the dinner rush
  • One system giving the owner visibility across both halves of the business — rooms and restaurant — instead of two disconnected operations reporting separately, or not reporting at all

Conclusion

Conclusion

Independent hotels rarely lose because demand is weak — this property runs near capacity in season. They lose because every OTA booking quietly hands away 15–18% that a direct booking wouldn't have cost, every undeposited no-show sells the same room twice on paper and zero times in reality, and every upsell pitched at a tired guest at check-in converts at half the rate of the same offer sent calmly a week earlier. Add a restaurant phone that goes unanswered during the only two hours a night that actually matter, and a profitable property is still leaking margin on both sides of the building. None of these fixes require more guests. They require the booking-to-arrival window, and the dinner-service phone line, to do work that was previously left entirely to chance.

CTA

Get a Free Automation Audit

Want to know your property's real OTA commission exposure and upsell gap? We'll map it against your actual booking mix, occupancy, and seasonal volume — no commitment, no generic pitch.

Get a Free Automation Audit