

The whole booking page on a phone, top to bottom, where most of your bookings come from.
Let customers book appointments on your website, 24/7, without paying a monthly subscription or a fee on every booking.
Easy!Appointments gives your visitors a proper booking experience: they pick a service, pick a staff member, see the real free slots from your calendar, choose a time, and confirm. You and your customer both get an email. The appointment lands in your calendar. That’s it.
It runs on your own hosting, so there is no subscription, no per-booking cut, no cap on how many appointments you take, and no third-party company sitting on your customers’ names, phone numbers, and appointment history.
Try the real booking form and the real admin calendar, right now, no signup:
https://demo.easyappointments.org
That takes about 60 seconds and will tell you more than this page can.
This is the part most people ask about, so here it is up front and in plain language.
Easy!Appointments is made of two things:
So yes, you need Easy!Appointments installed somewhere before this plugin does anything. We would rather tell you that in the first 30 seconds than have you find out after installing.
Why it is built that way: keeping the booking engine separate is exactly what lets it be free, unlimited and fully yours. Nobody can raise your price, change the terms, or lock your customer list behind an upgrade, because nobody else is holding it.
Get the engine here: https://easyappointments.org
Nothing. There is no paid tier, no trial that runs out, and no feature held back for an upgrade.
What it does cost is the hosting you are already paying for, plus the time to install the booking engine once. Because you own that installation, nobody can raise your price, change the terms, or put your customer list behind an upgrade later.
Once your Easy!Appointments engine is running, the WordPress side takes about three minutes:
Your booking form is live on that page. Bookings appear in your Easy!Appointments calendar as they come in.
Block editor (Gutenberg). Click +, search “Easy!Appointments”, drop it in. Size and options are in the settings panel on the right. No code.
Elementor. Search “Easy!Appointments” in the widget panel and drag it onto the canvas. Everything is configured with normal Elementor controls.
Anything else. Classic editor, WPBakery, Divi, a theme widget area: the [easyappointments] shortcode works wherever shortcodes work.
You can also point a specific page at a specific service or staff member, so “Book a haircut with Maria” is its own page.
It was built first for appointment-based local businesses: salons, barbershops, spas, nail studios, tattoo studios, physiotherapists, dentists and clinics. Anywhere customers book a named person for a fixed-length slot.
It also gets used well beyond that: consultants and coaches, tutors, driving schools, workshops and repair shops, vets, law and accountancy practices, and university and government departments.
Easy!Appointments has been developed in the open since 2014.
Easy!Appointments is built and maintained by Alex Tselegidis. If you are weighing it up, stuck on an installation, wondering whether it fits an unusual booking workflow, or you need custom work or a commercial arrangement around it, write to me directly:
[email protected] and https://alextselegidis.com
Feature ideas and bug reports are just as welcome. Tell me what you were trying to do and where it got in the way.
Documentation: https://easyappointments.org/documentation
More about the WordPress integration: https://easyappointments.org/wordpress
Minimum requirements: WordPress 5.0 and PHP 5.6.