Booking & Scheduling

How to Add a Booking Calendar to WordPress (Step by Step)

Install a booking plugin, set your hours, add questions and reminders, then put the calendar on any page. A step-by-step guide with screenshots.

Add a booking calendar to WordPress: From install to first booking in about 15 minutes.

Quick answer

Install a booking plugin such as Quill Booking (free on WordPress.org), create a host, add an event with its length and location, set your working hours, then put the booking calendar on a page with the Invalid ID shortcode or share the event’s booking link. The whole setup takes about 15 minutes, and clients can book, reschedule and cancel without emailing you.

A booking calendar turns “when are you free?” emails into a page where clients pick a time that suits both of you. It is one of the most useful things you can add to a service business website: you stop playing email tennis, bookings come in while you sleep, and every appointment lands in one place.

This guide walks you through the whole setup in WordPress, from installing the plugin to testing your first booking. We use Quill Booking for the screenshots, but the same steps apply to most booking plugins.

Disclosure: We make Quill Booking, so we use it for the screenshots and examples. The advice works with most booking plugins and scheduling tools.

Key takeaways

  • A booking plugin keeps appointments, client details and your design on your own WordPress site. Calendly-style tools host them elsewhere.
  • Set availability, buffers and minimum notice before you share the page; they prevent most scheduling headaches.
  • Keep the booking form short: name, email and one or two questions convert best.
  • Always test the full journey as a client, including the confirmation email, rescheduling and cancelling.

What you need before you start

  • A WordPress site where you can install plugins (an administrator account).
  • Your services and their lengths, for example a 30-minute discovery call and a 60-minute strategy session.
  • Your working hours and any days you never take bookings.
  • Where you will meet: in person, by phone, or on Zoom, Google Meet or Microsoft Teams.
  • Whether clients pay up front. If they do, have a Stripe or PayPal account ready (see our payments guide).

Booking plugin or embedded Calendly?

You can also paste a hosted scheduler such as Calendly into a WordPress page. It works, but the booking data, emails and branding stay with the hosted service. Here is how the two approaches compare:

WordPress booking pluginEmbedded hosted scheduler
Where bookings are storedYour WordPress databaseThe vendor’s servers
DesignMatches your themeVendor styling, limited branding on free plans
PricingPer site, often with a lifetime optionPer user, per month
PaymentsStripe, PayPal or WooCommerce on your siteThrough the vendor’s integrations
MaintenanceYou keep the plugin updatedNone

Calendly, for example, lists its Standard plan at $10 per seat a month and Teams at $16 per seat a month, billed yearly (Calendly pricing, checked November 5, 2026). A plugin is usually cheaper for a team because you pay per site, not per person. If you want to compare plugins first, see our guide to the best WordPress appointment booking plugins.

Step 1: Install a booking plugin

In your WordPress dashboard, go to Plugins → Add New Plugin, search for “Quill Booking”, then click Install Now and Activate. The free version from WordPress.org covers one-to-one appointments, availability, booking limits, booking questions and email notifications. A new Quill Booking menu appears in your sidebar.

Step 2: Create a host

A host is the person clients book time with. Go to Quill Booking → Calendars and click Add Host. Choose the WordPress user, their time zone and their weekly hours. Every event belongs to a host, so you need at least one before you can create events. If several people take bookings, add a host for each of them.

Step 3: Create your first event

An event is one thing clients can book, such as “Free discovery call”. In Calendars, click Add New Event (or the Create Event card under the host) and choose the format:

  • One-to-one: one client books one slot with one host. This is the right choice for most services.
  • Group: several people book the same slot, for example a class or workshop (Quill Booking Pro).

Then add the event name, a short description, the duration and a colour. The name and description appear on the booking page, so write them for your client: say what they get and how long it takes.

Quill Booking › Event Setup
Quill Booking event setup screen with event name, description and color
The Event Details tab. The live preview on the right shows what clients will see.

Next, choose where the meeting happens. You can pick a video platform, an in-person address or a phone call, and you can tick more than one so the client chooses. Video links are created automatically once you connect your account; our Zoom, Google Meet and Teams guide covers that setup.

Quill Booking › Event Setup › Location
Quill Booking event location settings with Google Meet, Zoom and Microsoft Teams options
Pick one or more meeting locations. Clients choose between them when they book.

Step 4: Set your availability and limits

Open the Availability & Limits tab. Under Availability, either use an existing schedule or set custom hours just for this event. Switch each day on or off and set the hours you take bookings. Use Date-specific hours for one-off changes, such as a holiday or a late opening, and the availability range to control how far ahead people can book (for example, the next 60 days).

Quill Booking › Availability & Limits
Quill Booking availability settings with weekly working hours for each day
Weekly hours for the event. Turn days off with the toggle on the left.

The Limits panel is where you protect your calendar:

  • Before and after event buffers add breathing room between appointments, for travel, notes or a coffee.
  • Minimum notice stops last-minute surprises. A 4-hour notice means nobody can book a slot that starts in the next 4 hours.
  • Time slot intervals control which start times appear. A 30-minute interval shows 2:00, 2:30, 3:00 and so on.
  • Limit booking frequency caps bookings per day, week or month, and limit booking duration caps the total booked time.
  • Lock time zone shows times in one fixed zone, which is useful for in-person appointments.
Quill Booking › Availability & Limits › Limits
Quill Booking limits settings with buffer times, minimum notice and time slot intervals
Buffers, minimum notice and slot intervals keep your days realistic.

Step 5: Add booking questions

On the Questions tab you decide what clients fill in. Name and email are required and cannot be removed. Add only what you need to prepare, such as “What would you like to cover?” or a phone number for text reminders. Each extra field lowers the number of people who finish the form, so keep it short.

You can also ask why someone cancels or reschedules, which is useful feedback. If you need a longer intake form with conditional logic, connect a form builder such as Quill Forms.

Quill Booking › Event Setup › Questions
Quill Booking booking questions editor with name, email and custom questions
Booking questions. Name and email are system fields; add your own below them.

Step 6: Turn on confirmations and reminders

The Email Notification tab lists every automatic email: the attendee confirmation, the organizer notification, reminders for both sides, and cancellation and reschedule messages. Click one to edit its subject and body, and use the <> button to insert booking details such as the guest’s name, start time and meeting link.

Quill Booking › Event Setup › Email Notification
Quill Booking email notification list with confirmation and reminder emails
Each notification can be switched on or off and edited.

Switch on the Attendee Reminder. Reminders are the single most effective way to cut missed appointments (see how to reduce no-shows), and you can borrow wording from our appointment reminder templates. Text and WhatsApp reminders through Twilio are available in Quill Booking Pro.

Step 7: Add the booking calendar to your site

You have four ways to publish the calendar:

  • Shortcode. Edit a page, add a Shortcode block and paste the event’s shortcode. Page builders such as Elementor have a shortcode widget that works the same way.
  • Booking link. Every host has a landing page, and every event has its own link. Use Copy Link on the event card to share it in emails, social bios or your email signature.
  • Embed code. An iframe lets you show the calendar on a site that is not WordPress.
  • QR code. Handy for flyers, business cards and your front desk.
Event not found

Replace 7 with your event’s ID. Here is what your clients see:

yoursite.com/book
Quill Booking booking page on a WordPress site with a month calendar and available time slots
The booking page: event details on the left, available days in the middle and time slots on the right. Times show in the visitor’s time zone.

Step 8: Test it like a client

Before you announce the page, book a real appointment yourself, ideally from your phone:

  • The booking page loads quickly and looks right on mobile.
  • Available times match your hours, buffers and minimum notice.
  • The time zone is correct, so try it from a different time zone if you can.
  • You receive the confirmation email, and the organizer email reaches you.
  • The reschedule and cancel links in the email work.
  • If you take payments, a test payment goes through in test mode.

Optional upgrades

Once the basics work, these features save the most time. They are part of Quill Booking Pro, which starts at $39 a year or $109 for a lifetime licence:

Tips for a booking page that converts

  • Lead with the outcome. “Get a 30-minute plan for your launch” beats “Meeting”.
  • Offer fewer, clearer options. Two or three events are easier to choose from than ten.
  • Show the essentials: duration, location or video platform, and price if any.
  • Ask fewer questions. Collect the rest after the booking is confirmed.
  • Link to the page everywhere: your menu, contact page, email signature and social bios.

Frequently asked questions

Can I add a booking calendar to WordPress for free?

Yes. Quill Booking’s free version on WordPress.org lets you create one-to-one events with availability, booking limits, booking questions and email notifications, and add them to any page with a shortcode. Paid features such as payments, calendar sync and SMS reminders are in Quill Booking Pro.

How do I add a booking calendar to Elementor?

Copy your event’s shortcode, then add Elementor’s Shortcode widget to the page and paste it in. The calendar renders inside your Elementor layout.

How do I stop double bookings?

Connect your Google, Outlook or Apple calendar and tick the calendars to check for conflicts, so busy times are hidden. Buffers between appointments and booking frequency limits also help.

Can clients reschedule or cancel by themselves?

Yes. Confirmation emails include reschedule and cancel links by default. You can turn either option off for an event in its Advanced Settings tab if you prefer clients to contact you.

Can I embed Calendly in WordPress instead?

Yes, by pasting Calendly’s embed code into a Custom HTML block. Bookings, client details and branding then stay with Calendly, and pricing is per user. A WordPress plugin keeps everything on your own site.

Start taking bookings todayQuill Booking is free on WordPress.org. Pro adds payments, calendar sync, video links and SMS reminders.

Get it free

Written by

Mohamed Magdy Founder, Quill Booking

Mohamed Magdy is the founder of Quill Booking, Quill Forms and DoubleScale. He builds the plugins himself and writes about scheduling, forms and CRM for small businesses that run on WordPress. Every price and feature in his guides is checked on the vendor's own pages.

How we write: every product fact in this article was checked against the vendor's own pricing page, documentation or WordPress.org listing on the date shown above.

Quill Booking

Turn your WordPress site into a booking machine

Booking pages, calendar sync, video links, reminders and payments in one plugin that lives on your own site.