Open-source hotel booking systems: the room is free, check the minibar

Search for an open-source hotel booking system and the first page is a GitHub topic listing, a SourceForge project, a 2018 roundup and a run of directory pages that copy each other. None of them tells you the thing you actually need before installing anything: in every project I looked at, the software that runs the rooms is free, and the parts that bring in the guests and the money are where the bill starts.
I checked the four projects a small hotel, B&B or guesthouse can realistically run today, read their changelogs and add-on stores, and wrote down what's free and what isn't. I build Opencals, which is a hosted booking engine and not open source, so I'll say where it fits at the end and where it doesn't.
Four open-source options are worth a hotel's time in 2026 (checked 31 October 2026). QloApps (OSL-3.0, PHP, built on PrestaShop 1.6) is the only full hotel website plus back office, at version 1.7.0; its front-desk and channel-manager modules are paid add-ons. HotelDruid (AGPL, PHP, 3.0.8 from 4 December 2025) is a front-desk program whose guest booking engine is a proprietary module on its hosting. OCA pms is a hotel PMS for Odoo 16, released 17 October 2026. MotoPress Hotel Booking Lite is a free WordPress plugin that takes PayPal only. If your own website is the product and you'd rather not run servers, a hosted engine with an MIT template, such as Opencals with the Bali Villas template, is the other route.
The four that still ship code a hotel can run
I started from the projects that come up again and again in those listings, then dropped anything that looked unmaintained, the student projects on GitHub, and anything that's a desk-hoteling tool for offices (that's a different problem, and we cover it in the open-source desk booking guide). Four were left.
| Project | What it is | Licence | Latest release (checked 31 Oct 2026) | Guests book on your site | Online card payments |
|---|---|---|---|---|---|
| QloApps | Hotel website, booking engine and back office | OSL-3.0 core, AFL-3.0 modules | 1.7.0 on GitHub | Yes, built in | PayPal installed by default; other gateways are modules |
| HotelDruid | Front-desk and reservations program | AGPL | 3.0.8, 4 December 2025 | Availability pages free; booking engine is a proprietary module on their hosting | Not mentioned on its site |
| OCA pms | Hotel PMS modules for Odoo | AGPL-3.0 (check each module) | 16.0.4.26.0, 17 October 2026 | Depends on the Odoo website modules you add | Through Odoo's payment providers |
| MotoPress Hotel Booking Lite | WordPress plugin | GPL-compatible (WordPress.org) | 6.4.0 | Yes | PayPal; Stripe needs Pro |
If you know a maintained project I've missed, tell me and I'll check it for the next update.
QloApps is the only full hotel stack, and it's a shop underneath
QloApps is the project these searches are usually looking for. Its README calls it "an open source and free platform to launch your own hotel booking website", and that's accurate: you install it on a PHP host (or pull webkul/qloapps_docker), and you get a public hotel site with a room search, a booking flow, customer accounts and a back office for hotels, room types, prices and orders.
It's built by Webkul on PrestaShop, the e-commerce platform, and you can see it in the changelog: an earlier release notes "almost all updates added to QloApps till the prestashop version 1.6.1.23", and the APIs are "Prestashop APIs … modified as per hotel QloApps changes". That's not a criticism. A room night sold like a product in a cart is a sensible model, and it's the same idea Opencals is built on. It does mean you're running and patching a PrestaShop 1.6-era codebase, with its module system and its admin.
Version 1.7.0, the current release on GitHub, is a real update rather than a maintenance bump:
- PHP 8.1 to 8.4 and MySQL 8 support (the README on the development branch already lists PHP 8.2 to 8.5)
- bed types per room type
- advanced price rules applied to several room types at once, with multiple restrictions per rule
- adding several rooms at once, and service products added or repriced while creating an order in the back office
Where it costs money is the add-on store, which is paginated across 13 pages. When I checked it on 31 October 2026, the front-desk module for multi-hotel setups (QloApps Marketplace Front Desk) was $149.99 and Front Desk Reports $49. A channel manager is sold as a separate product, and its page didn't show a price. The payment module the store lists is PayPal Checkout; I didn't find a Stripe module on its first page. The licence matters too: OSL-3.0 is a copyleft licence that also covers software you offer over a network, so read it before you build a commercial fork.
If you want a free, complete hotel website you can host on ordinary PHP hosting, and PayPal at checkout is acceptable, QloApps is the honest first answer.
HotelDruid runs the desk, and rents you the booking engine
HotelDruid has been around since the php-residence days and is still maintained: version 3.0.8 came out on 4 December 2025, and it's packaged for Debian. Its home page says it's "Released under the AGPL free software license". It runs on a web server with PHP and any of MySQL, PostgreSQL or SQLite, or through a Windows installer.
Read its site carefully, though. The free software includes "creation of pages to check availability from a website". Taking reservations from the internet is the Booking Engine, which the site describes as a proprietary add-on module available on its hosting service. So the open-source part is the front desk: the reservation table, rates, guests, invoices. The part that turns your website into a booking channel isn't in the download.
That's a reasonable product for a small property that mostly takes bookings by phone, email and through the travel agencies, and wants a free tool to keep the room plan straight. It isn't an open-source booking website.
Odoo's hotel PMS only makes sense if Odoo already runs the business
The Odoo Community Association maintains a property management system for hotels in its OCA/pms repository, written by Commit [Sun], the team behind Roomdoo. The hotel modules are published on PyPI as odoo-addon-pms for Odoo 16, and they're active: 16.0.4.26.0 was released on 17 October 2026, with a newer build already listed. The module description covers room inventory, reservations, check-in, daily reports, board services, and rate and availability plans across several properties. The 19.0 branch I looked at carries a different, more general set of property modules, so check which branch you're installing.
This is the strongest option on the list for a group that already keeps its accounting, staff and purchasing in Odoo: the reservations land in the same database as the invoices. For an independent B&B starting from nothing, installing and running Odoo to get a hotel calendar is a lot of system for the job.
Most small B&Bs end up on a WordPress plugin
The free option the most small properties actually run isn't on the GitHub lists at all. It's a WordPress plugin. MotoPress Hotel Booking Lite has 10,000+ active installations on WordPress.org and was at version 6.4.0 when I checked. The free version takes bookings on your own WordPress site and accepts PayPal, pay on arrival and bank transfer.
MotoPress's own Pro-vs-Lite page and the plugin listing say what you pay for: Stripe and the other card gateways, syncing bookings with Airbnb and Booking.com, prices by number of guests and by length of stay, and adding or editing bookings from the admin. If your rates never change with the guest count and PayPal is fine, Lite does the job. If you take cards and list on the travel agencies, you're buying Pro.
The parts a download can't give you
Every project above stops at the same three places, and they're worth knowing before you choose by feature list.
The travel agencies. Booking.com and Expedia work with approved connectivity partners rather than any software that asks. A self-hosted system reaches them through a channel manager that holds that connection, and that's a paid service in every case I found, QloApps' own included. If more than a few of your nights come from the agencies, budget for one whatever you install.
Taking cards. Each project hands payments to a gateway module, and the free versions mostly offer PayPal. Card payments with deposits and refunds mean a paid module, a plugin upgrade or your own integration, and you own the PCI questions for whatever touches card data on your server.
Keeping it patched. A hotel website handles guest names, phone numbers and payment links. A PHP application on shared hosting needs updates, backups and someone watching security notices, and that someone is you or whoever built the site. Projects do their part: LibreBooking, the room-booking project, shipped two critical security fixes in October 2026 with no backports for older versions (we wrote that up in the Booked Scheduler alternatives guide). Nobody tells you when your own install has fallen behind.
None of that is a reason to avoid open source. It's the real price of the free download, and it's the line to compare against a hosted service.
Where Opencals fits, and what it doesn't do
Opencals isn't open source, so it doesn't belong in the table. I'm including it because the question behind most of these searches is "how do I take bookings on my own hotel website without paying commission", and there's a second way to answer it: keep the website as code you own, and rent the booking engine behind it.
That's the setup we built. The Bali Villas template is an MIT-licensed Next.js site for a ten-villa resort, on GitHub. Stays are priced by the night with a fixed 15:00 check-in and 11:00 check-out that the API enforces, the calendar knows which nights are taken, guests add extras such as an airport transfer or breakfast (charged per stay or per night), pay through Stripe into the hotel's own account, and manage their trip from a passwordless account with date changes and cancellations inside your policy window. Rate options, seasonal pricing, promo codes and checkout questions are all set in the store. The availability, checkout and payments run on Opencals, so there's no server or card data on your side.
What it doesn't do, plainly:
- The engine isn't open source. Only the templates, the TypeScript SDK and the Agent Skills are MIT. If your requirement is source code for the whole system, QloApps is the answer, not us.
- No front-desk board, housekeeping view or channel manager of our own. Those connect through our admin API, which isn't public yet; for a hotel or agency planning one, we open it up per project and work through the integration. Our hotel booking system guide covers that side and what the hotel suites charge.
- The free tier is a development store. It runs in test mode with every feature, and it can't take real payments until you switch to a paid plan.
Pricing, from opencals.com/pricing on 31 October 2026: Elastic is $0.99 per booking with no monthly fee. The monthly plan is $14.98 including 300 bookings, then $0.20 each; multi-night stays need the Flexible duration add-on ($9.98) and guest self-service is $14.99, so a hotel setup on the monthly plan is $39.95 a month. There's no percentage of the stay, so a €900 week costs the same per booking as one night.
How I'd choose, in order
- You want a free hotel website and back office on PHP hosting, and PayPal at checkout is fine. Install QloApps. Budget for its channel manager if the agencies matter to you.
- You mostly need a room plan for the front desk, and bookings come by phone and the agencies. HotelDruid, self-hosted, is free for that.
- The business already runs on Odoo. OCA pms on Odoo 16, so reservations sit next to the invoices.
- You have a WordPress site and a handful of rooms. MotoPress Hotel Booking Lite, and Pro the day you need Stripe or agency sync.
- Your website is the product: custom stays, extras sold with the room, guest accounts, card payments, no servers. Start from the Bali Villas template on a free Opencals development store, and move to a paid plan when the first real guest books.
If I were a ten-room guesthouse with a developer on hand, I'd pick between the first and the last: QloApps if owning every line of code is the point, a hosted engine if the time goes into the booking flow instead of the server. The others are good at narrower jobs.
Online booking system for hotels
Booking engine, channel manager or PMS, and what the hotel suites charge.
Bali Villas template
A free Next.js resort site with nightly stays, extras and guest trips.
Open-source booking systems in 2026
What's still open source after Cal.com closed its code.
Booked Scheduler alternatives
LibreBooking's October security fixes and where the code went.
Easy!Appointments alternatives
Two products share one name; pick by the job you need done.
Headless booking system
Your own front end on a booking API.
Open-source salon software
OpenSalon, the free WordPress salon plugin and Easy!Appointments: who books clients and who takes a deposit.
Open-source gym management software
GYM One, Openfront Gym and wger: who books classes, who bills memberships, and the licence catch.
Frequently Asked Questions
Get started
Ready to transform your service business?
Join 150+ businesses already using Opencals. Start on a free development store with every feature unlocked, and only pay once you go live.







