Online booking system for hotels and guesthouses without OTA commission
Author:
Paweł Matusiak
·
Booking and Airbnb take a cut and put you next to twenty other properties. Your own booking engine on the hotel site keeps the guest with you: room calendar, deposit, seasons and a channel nobody can switch off.
A 15–18% commission on a booking that already came from your property name in Google is an expensive habit. An online booking system for a hotel or guesthouse on your own site lets you take a deposit, close dates, sell a spa package or a restaurant table — without a middleman who can change the rules. Booking.com is not the enemy at the start. It gets expensive when you are already a brand in Google and you still give away a fifth of the stay for a click that could have landed on your engine.
This is for a guesthouse, small hotel or apartment owner who knows the season better than an OTA rate card. Below: when a middleman pays, which commission bands show up in 2025–2026 round-ups, what a booking engine must do, a day at reception with your own calendar, direct vs OTA maths, SaaS versus custom, a staged rollout, and mistakes that leave you with “email us, we will check availability”.
When OTAs help — and when they eat the season
OTAs are useful at the start, when nobody knows the property. They bring reach, reviews and the habit of “I search for a bed in an app”. They get expensive when 60–80% of guests type your hotel name into Google and still land on an OTA because your site only says “email us”. Direct booking claws that commission back. You do not have to close Booking overnight. You do need a book button, a deposit and a rate that gives a reason to click with you.
Industry guides for 2025–2026 keep repeating that Booking.com’s standard commission is usually about 15% of the amount the guest pays (excluding tourist tax in most destinations). Preferred Partner adds around 3 points — about 18% in total. Preferred Plus often sits near 23%. When payment goes through Booking, processing fees of about 1–3% can appear on top. Genius is not a higher commission: it is a 10–20% discount you fund yourself, plus 15% on the discounted amount. Your exact rate is in the contract and the Extranet, not in this article — but the order of magnitude is clear: every fifth or sixth zloty on the OTA is not yours.
- Launch and low awareness: the OTA pays for discoverability; commission is a marketing cost.
- Peak season and a name typed into Google: commission is a tax on your own brand.
- Preferred / Preferred Plus: more views, a higher percentage — count ROI, not a badge.
- Genius: a discount from your pocket; the hit to ADR is often larger than “just 15%”.
- Best dates (a city event, a long weekend): you can close the OTA and sell direct.
What the booking engine must do
An “enquire about dates” form is not an online booking system for a hotel. An engine shows real availability, applies a minimum stay, takes a deposit, sends a voucher and will not sell the same room twice. Reception sees the same calendar when someone calls. The guest does not wait two days for an email that says “sorry, taken, but we have another date”.
- A calendar of rooms / apartments with minimum stay and housekeeping gaps.
- Seasons, weekends, holidays, closed dates for works or events, different BAR rates.
- An online deposit and the balance on site — with automatic email and SMS, a PDF voucher.
- Packages: stay + breakfast + treatment, restaurant table, parking, a cot, a pet.
- A channel for returning guests: discount code, priority on extension, a regulars’ card.
- A reception panel: check-in, extras, invoice, today’s arrivals, housekeeping.
- Child / extra-bed rules, non-refundable rates, a free-cancellation window.
- A report: source (Google, OTA, return), ADR, occupancy, no-shows, direct share.
A day in a guesthouse with its own calendar
7.30 — housekeeping sees which rooms depart, which stay, which are “clean after 11”. Nobody copies a notebook. 9.00 — a Google guest books a weekend with a BLIK deposit. The dates leave the site. Reception closes those nights on Booking by hand or, in a later phase, a channel manager does it.
14.00 — check-in. Reception sees a breakfast + restaurant table at 19.00 package, already tied to the table booking system. 17.00 — an SMS to tomorrow’s arrivals: address, gate code, time. 21.00 — a report: three direct bookings, one OTA, one cancellation with a full refund inside the window. The owner does not open three inboxes to know whether tomorrow is a full house.
- Morning: departures, housekeeping, breakfasts, exceptions (cot, allergy).
- Late morning: site bookings, deposits, closing the OTA on taken nights.
- Check-in: voucher, extras, restaurant table, parking.
- Afternoon: phone enquiries typed into the same calendar.
- Evening: tomorrow’s arrivals, no-shows, direct share for the week.
Numbers and payback: what a direct share is worth
Take a guesthouse: 12 rooms, a seasonal ADR of 450 PLN, 60% occupancy across 180 “hot” days. Room revenue in that window is 12 × 450 × 0.6 × 180 ≈ 583,000 PLN. If 70% goes through Booking at an effective 18%, commission eats about 73,000 PLN. Moving 15 points of share onto direct (from 30% to 45%) leaves around 15–16 thousand in the till in one season — without raising the site rate. That is not chain revenue-management magic. It is a book button and a deposit instead of “email us”.
A handful of weekend stays that skip the OTA often cover phase one of the engine in a single season. Add the returning guest: a post-stay email with a −10% direct code. Harvard Business Review and Bain: new acquisition can be 5–25× more expensive than keeping someone. The OTA sells you acquisition. Direct sells the return. Both channels can live side by side if you measure mix, not only occupancy.
- Commission 15–18% (up to ~23% in visibility programmes) × OTA share × room revenue.
- A deposit cuts no-shows and “just in case” bookings with no card.
- A breakfast + treatment package on your own site: ADR rises without giving a cut of the treatment.
- A post-stay code: the next weekend with no commission and no new ad cost.
- Less reception time on “is that date free” emails — the calendar answers itself.
How to grow the direct share
An engine with no site that shows it will do nothing. A Google guest must see a photo, a “from” price, dates and a button in five seconds. Rate parity with the OTA is often in the contract — you may not always show a lower number. You may show value: breakfast, late check-out, parking, a regulars’ code, no middleman. That is fair competition with your own brand, not a war of screenshots.
- A site with real photos, a “from” price and a booking button above the fold — not in the footer.
- A best-rate guarantee on your own site, or a package the OTA does not have.
- A post-stay email: “book with us next time — 10% off”.
- Google Business and local SEO for the town name + “guesthouse / hotel”.
- A card, an email footer, a QR in the room: the next stay without Booking.
- Closing the OTA on best dates once direct already pulls — on purpose, with measurement.
Off-the-shelf engine SaaS or your own hotel system?
A packaged booking engine (subscription + widget) is enough for a small property with simple rooms and one season. Your own online booking system for a hotel or guesthouse pays when you mix rooms and apartments, spa packages, a restaurant, several buildings, your own deposit rules, or when the SaaS takes a cut of direct bookings — then you pay a “middleman for recovering the middleman”. Code and guest data stay with you, under GDPR.
- Different resource types: room, apartment, cabin, meeting room, restaurant table.
- Polish weekend and holiday seasonality that a template from another market cannot express.
- A link to table booking and to spa.
- Invoices, deposits, KSeF when you bill B2B.
- No commission on your own guest and an export of the list when you change vendor.
A staged rollout
We do not start with a channel manager and a chain-grade PMS. We start with a calendar that does not lie on Saturday and a deposit that hits the account. For a week reception types phone and email into the same panel. The OTA stays. You close dates by hand until you are sure availability is sacred. Then packages, then housekeeping, then sync.
- Phase 1: room types, calendar, rate, deposit, voucher, a site with a button.
- Phase 2: reception panel, check-in, arrivals list, pre-stay SMS.
- Phase 3: packages, restaurant, parking, codes for returners.
- Phase 4: housekeeping, channel-mix report, decisions to close the OTA.
- Phase 5: channel manager / iCal, a second property, optionally a check-in kiosk.
Mistakes that leave you on the OTA forever
A site with no button. A button that opens an email. No deposit and a no-show on a long weekend. A different price on the site and on Booking with no strategy (or a parity breach that hurts you anyway). Two calendars: Excel and the Extranet. A SaaS widget that takes 8 seconds to load on a phone. A mandatory account before picking dates. And silence after the stay: the guest goes back to Booking because that is the only place with a history.
- OTA photos nicer than your site — the guest books where they trust the picture.
- No phone number on a direct booking: you cannot send a gate code or rescue a no-show.
- A 100% prepaid deposit on every date — conversion drops, especially off-season.
- No cancellation policy next to the button. An email dispute is dearer than one clear sentence.
- A channel manager “just in case” on two channels and 8 rooms — cost without a problem.
Deposits, cancellation and a calmer reception
An online booking system for a hotel or guesthouse with no clear deposit leaves you on the phone on Sunday: “we will not make it after all”. In season, 30–50% up front and a free-cancellation window written next to the button — not in a PDF in the footer — is enough. Off-season you can soften the rule so you do not kill conversion. What matters is that the engine calculates it: refund, date change, no-show with the deposit kept. Reception then does not improvise consumer law on every email and does not lose a Saturday on disputes the calendar could have closed in a minute.
A season checklist: 6 weeks to your own button
Weeks 1–2 — room types, minimum stay, housekeeping gap, a 30–50% weekend deposit, a voucher. Week 3 — a button above the fold, a “from” price, a BLIK test on one room. Week 4 — reception types phone calls into the same calendar, the OTA stays, you close dates by hand. Weeks 5–6 — a post-stay email with a −10% direct code, an SMS the day before arrival, the first mix report. We add a channel manager when overbooking is real, not “just in case”.
- Photos better than on Booking — otherwise the guest books where they trust the picture.
- Deposit and cancellation window next to the button, not in a footer PDF.
- Google Business linking to the engine, not to “email us”.
- Manual OTA closes for two weeks until availability is sacred.
- A returner code before you buy Preferred Plus (~23% in industry round-ups).
- A breakfast + restaurant table package the OTA does not sell.
SaaS widget vs your own engine — 24 months and Booking commission
A widget at 150–400 PLN plus sometimes a cut of direct bookings over two years is 3,600–9,600 PLN of subscription, and you may still pay a “middleman for recovering the middleman”. Your own hotel booking system has an implementation cost and zero percent on a Google guest. On 12 rooms at 450 PLN ADR, moving 10 points of share from the OTA (18%) onto direct in one 180-day season at 60% occupancy is on the order of 10–12 thousand left in the till. Two seasons cover phase one if the button actually works on a phone.
SaaS is enough when you have 6 identical rooms and one season. A mix of apartments, spa, a restaurant and Polish holiday weekends usually outgrows a template. Also count Genius: a 10–20% discount from your pocket plus 15% on the discounted amount. That is not a line on the Booking invoice, but an ADR leak. Direct with a regulars’ code skips that leak.
- Booking standard ~15%, Preferred ~18%, Preferred Plus ~23% — your rate is in the contract.
- 24 months of OTA at a high Google-brand share is a tax on your own name.
- A widget with commission on direct counts as a second middleman.
- A small property, two channels: calendar + a hand. Channel manager later.
Housekeeping, overbooking and occupancy that lies
A full OTA calendar with thin housekeeping is overbooking in costume. The engine must know the gap between departure and arrival. 90% occupancy with 70% from Booking and 20% cancellations with no deposit is worse than 75% with a deposit and a rising direct share. Measure net after commission, not only occupancy. A handful of long-weekend no-shows without a deposit eat what you “saved” by not having your own button.
We use the same DNA as restaurant table booking: availability, payment, reminder, your data. Describe room count, seasonality and which OTAs you use. We will say whether a site engine is enough or you need a reception panel straight away. If the numbers say a subscription widget is enough for this season, we will say so.
Frequently asked questions
- Will the system replace Booking.com?
- It does not have to. The goal is a higher direct share. OTAs stay as a shop window for new guests. You close them on purpose on chosen dates once direct already pulls.
- Must the guest create an account?
- No. Name, email, phone, dates, deposit. An account is optional for returners and regulars’ codes. Forcing a login before the calendar cuts conversion.
- Can you handle apartments and rooms together?
- Yes — different resource types, different minimum-stay and housekeeping rules, one reception calendar.
- How fast is the payback?
- A handful of weekend stays that skip the OTA often cover phase one in a single season. The higher the ADR and the Google-brand share, the faster.
- What is Booking.com’s commission really?
- In 2025–2026 round-ups the standard is usually about 15%, Preferred about 18%, Preferred Plus often ~23%, plus possible processing. Your rate is in the contract. Genius is a discount from your pocket, not a higher line on the invoice.
- Do I need a channel manager on day one?
- No. On two channels your own calendar and manual closes often suffice. We add sync when overbooking or the number of portals starts to cost nerves.
- What about hotel no-shows?
- A deposit or a card, a clear cancellation window, an SMS the day before. Without that a long weekend likes to leave empty rooms “just in case”.
- Can we sell a restaurant table with the room?
- Yes — a package and a bridge to table booking. The guest does not call separately; the kitchen sees the diary.
Related service:
Custom software for companies
Describe your project