Calendly is a good product. But if your website runs on WordPress, sending clients off to a separate link has costs: a monthly fee once you need more than the basics, another brand in the middle of your client's experience, and your client data living on someone else's servers.
There are three ways to keep booking on your own site. None of them is right for everyone.
Option 1: Embed a scheduling service
Calendly, Cal.com, TidyCal and similar tools all offer an embed code or a WordPress plugin that shows their booking widget on your page.
Good fit if you already pay for one, you need deep calendar sync (Google, Outlook) across several calendars, or you take payments at booking.
Trade-offs: you still depend on (and usually pay for) the external service, the widget looks like their product rather than your site, and bookings live in their database.
Option 2: A full-featured booking plugin
Plugins like Bookly, Amelia and LatePoint run inside WordPress and are very capable: staff, services, locations, payments, packages, customer panels.
Good fit if you run a salon, clinic or studio with several staff members, or you need to take payments and deposits.
Trade-offs: many of the features most solo businesses want sit in paid add-ons or tiers, and the setup is built around businesses with several people and services. For one person taking calls, that can mean a lot of screens to get through.
Option 3: A simple 1-on-1 booking plugin
If you are a coach, consultant, tutor, therapist or freelancer, you usually need exactly this: a few kinds of meetings, your weekly hours, and a page where a client picks a time. That is what we built Bookira for.
- A three-step booking page: meeting type, date and time, name and email
- Only genuinely free slots are shown, based on your weekly availability
- Your clients don't need an account, and no third-party service is involved
- Confirmation emails with a calendar invite (.ics) and automatic reminders
- A dashboard calendar where you confirm, cancel or reschedule in one click
- It uses your theme's fonts, and you pick the colours
What Bookira does not do (yet): online payments, two-way Google Calendar sync, or multiple staff members. If you need any of those today, option 1 or 2 is the better choice, and that's fine.
Side by side
| Scheduling service embed | Full booking plugin | Bookira | |
|---|---|---|---|
| Runs on | Their servers | Your WordPress | Your WordPress |
| Client data | With the service | Your database | Your database |
| Cost | Free tier, then monthly | Free core, paid tiers/add-ons | Free |
| Payments | Usually, on paid plans | Yes | No |
| Multiple staff | Team plans | Yes | No |
| Setup time | Minutes | An hour or more | Minutes |
| Looks like | Their brand | The plugin's own style | Your theme and colours |
Setting up Bookira in five minutes
- In WordPress, go to Plugins → Add New, search for “Bookira” and activate it.
- Under Bookira → Meeting Types, create your first type, for example “30-minute intro call”.
- Check Bookira → Availability. Monday to Friday, 9:00 to 17:00 is set by default.
- Add the shortcode
[bookira_booking]to any page and publish it.
That's it. Send clients the page link instead of your Calendly link.
Tip: reminders use WP-Cron, which only runs when your site gets visits. On a quiet site, ask your host to set up a real cron job for wp-cron.php so reminders go out on time.
So which one should you pick?
If you take payments or manage a team, use a full booking plugin or a paid scheduling service. If you work one-on-one and just want people to stop emailing you “does Tuesday work?”, a small plugin on your own site is the simplest thing that works.
Get Bookira free on WordPress.org