Easy!Appointments
Free and open-source (GPL-3.0) appointment booking software to install on your own server: a booking page where the customer chooses the service, provider, date and time without creating an account, shared calendar, email notifications, roles, REST API, webhooks, LDAP login, Google Calendar link, WordPress, Joomla! and Drupal extensions. More than 40 languages. Free when self-hosted, with no limit on bookings; managed hosting at €20 a month (€240 a year) with installation, updates and daily backups. SMS reminders and online payments offered as custom developments.
A slot, a service, a provider, an email confirmation and a capacity limit: this is a very classic database schema, and Easy!Appointments is already a clean, free and open version of it. For a restaurant taking private-room bookings or a hotel selling treatments, it is a good starting point, to be adapted. What costs: SMS reminders, deposit payments and syncing external calendars, which the tool offers as options.
What you lose
- SMS reminders and online payments (paid custom developments).
- Managed hosting with daily backups.
- The WordPress, Joomla! and Drupal extensions.
- Synchronisation with Google Calendar.
Existing alternatives to Easy!Appointments
- LibreBookingOpen source
Open-source resource booking (GPL-3.0): rooms, tables or equipment, with quotas and schedules.
What a home-built tool costs once it exists
- Hosting and database: a server cost, and automatic backups you actually test.
- Security and GDPR: dependency updates, an HTTPS certificate, protection of your customers’ data.
- Upkeep time: who fixes the tool on a Saturday night in the middle of service if the server goes down?
The prompt to build it yourself
Build a small online appointment booking system for my business, replacing a reservation software. Context: a reception venue with 2 privatisable rooms and a spa with 3 treatment rooms. To do: - Services (duration, price, capacity) and resources (room, treatment room) with opening hours and closed days. - A public booking page: choice of service, date, free slot, contact details, no account needed. - Conflict detection and a capacity limit per resource. - A confirmation email and a reminder the day before, with a cancellation link. - An admin calendar per resource, with manual creation of a booking. Out of scope: SMS reminders, deposit payment, syncing external calendars. Stack: web app, PostgreSQL. README: how to run, backup, how long to keep contact details (GDPR).
Frequently asked questions
- How much does Easy!Appointments cost, and what do you really pay for?
- Listed price: free. What the subscription covers and is hard to maintain yourself: SMS reminders and online payments (paid custom developments).; Managed hosting with daily backups.; The WordPress, Joomla! and Drupal extensions.; Synchronisation with Google Calendar..
- What free or open-source alternatives to Easy!Appointments exist?
- LibreBooking (open source). Options to compare before committing to a custom build.
- Where do you start to build an equivalent of Easy!Appointments?
- Copy this page’s prompt into Claude, Codex or Cursor to get a first prototype. Then plan for hosting, data backups and GDPR compliance: that is what costs the most to maintain over time.
How are our verdicts established? Read our detailed methodology ↗
Community feedback
Readers tell what they built instead of this tool, or what broke along the way. Every entry is reviewed before publication.
No feedback published yet. Have you tried replacing this tool? Tell us about it.
Share your feedback
More like this
- CoverManager · on requestPartly replaceable
- Eat App · free (paid plans from €88.20/month, converted from $99, rate of Oct 2, 2026)Partly replaceable
- Guestonline · ReservationsPartly replaceable
Are you the publisher of Easy!Appointments? Badge for your site
Badge for your website
Display the casevibecode verdict on your website or documentation.
<a href="https://casevibecode.fr/en/logiciel/easy-appointments" target="_blank" rel="noopener noreferrer"><img src="https://casevibecode.fr/api/badge/easy-appointments?lang=en" alt="casevibecode verdict: Replaceable" /></a>