Best WooCommerce bookings and appointments plugins (with tutorial)

As a business owner, you might offer bookable events or appointments which customers need to book ahead of time. While WooCommerce doesn't support bookings straight out of the box, you can easily achieve this with the right plugin. Keep reading to discover the best WooCommerce booking and WooCommerce appointment plugins, and how to use them.

As online booking and appointment scheduling becomes increasingly popular, WooCommerce has emerged as a go-to platform for selling bookable products. A wide range of WooCommerce booking plugins are available, and it can be difficult to choose the right one.

To fully leverage the power of WooCommerce for bookings and appointments, it's essential to install a suitable booking calendar plugin that meets your specific needs. With so many options available, choosing the right one can be a daunting task. That's why we've compiled a list of the best WooCommerce bookings and appointments plugins to help you make an informed decision.

In this article, we'll provide an overview of the top WooCommerce bookings and appointments plugins and a step-by-step tutorial on how to set up and use the best ones. Whether you're a small business owner, a freelancer, or a large enterprise, this guide will help you find the perfect WooCommerce bookings plugin. You'll discover plugins for:

Displaying WooCommerce Bookings in a WooCommerce Product Table

But first, let’s quickly take a look at some of the different types of businesses that can benefit from a WooCommerce booking plugin.

Does WooCommerce have a booking system?

While WooCommerce is a powerful e-commerce platform with numerous features, it does not have a built-in booking system. This means that if you want to offer appointments, reservations, or rentals on your site, you'll need to use a plugin that provides this functionality.

Fortunately, there are many great booking plugins available for WooCommerce, such as YITH WooCommerce Bookings and the others featured in this article. They allow you to create bookable products with different pricing options and availability settings. Booking and appointment plugins like these are perfect for businesses that need to manage appointments, tour bookings, or other time-based services.

By using the right plugin, you can easily add bookable products to your site and provide your customers with a seamless booking experience.

What is a WooCommerce bookings plugin?

Before we start, it's important to think about what a WooCommerce bookings plugin actually is. This may seem obvious, but it's really not. That's because there are so many different types of events which you might want to take bookings for.

Put simply, a WooCommerce bookings plugin is any plugin which lets your customers book some sort of event online. This can be broken down further into two main categories:

  • WooCommerce appointment booking plugins.
  • Event booking plugins.

While both WordPress appointments booking plugins and events booking plugins are designed to enable users to schedule and book activities, there are some key differences.

WooCommerce appointment bookings

A WooCommerce appointments booking plugin is typically designed for businesses or individuals who offer services that require pre-booking. This might include consultations, meetings, or sessions with clients.

A WooCommerce bookings and appointments plugin allows customers to select a specific date and time for the appointment. This might be based on live availability, or the service provider can then confirm or reject the booking manually.

The bookable WooCommerce appointments plugin may also include features like calendar integration, email notifications, and payment processing.

Event bookings

On the other hand, an events booking plugin is designed for businesses or individuals who host events for multiple people. Common examples include training courses, conferences, workshops, or concerts.

The WooCommerce event tickets plugin allows customers to register for the event, select a ticket type, and make payment. The plugin may also include features like event calendars, customizable registration forms, and ticket management tools. It can help manage complex ticketing structures, track ticket sales, and ensure the smooth operation of events by managing capacity and seating arrangements.

Should I use an appointments or an events plugin?

As you can see, the decision of whether to use a WooCommerce appointment bookings plugin or an events plugin depends on the type of activity you're offering. The above definitions might help you to choose the best type of WooCommerce bookings plugin for your WordPress site. However, it's often difficult to apply general definitions to your exact situation.

To help you even more, here are some guidelines to help you choose which type of plugin is best suited for your needs:

Use a WooCommerce bookings and appointments plugin for:

  • Services that require one-on-one interaction: If you offer services that require a one-on-one consultation, such as legal or medical consultations, coaching, or personal training, a WooCommerce appointments plugin would be more suitable.
  • Activities that require a specific time and date: If you offer activities that require booking at a specific time and date, such as hair appointments or massages, an appointments plugin would be a good fit. This also applies to hotel booking websites and sites like Airbnb that rent out a particular space.
  • Businesses with limited capacity: If you have a limited number of staff or time available to offer your services, a WooCommerce appointments plugin can help you manage your schedule more efficiently.

Use an events booking plugin for:

  • Events with multiple attendees: If you're hosting an event that requires ticket sales for multiple attendees, such as a conference or a music festival, an events plugin would be the better option.
  • Activities with multiple sessions: If you're hosting an activity that has multiple sessions, such as a course or a workshop, an events plugin would be more appropriate.
  • Activities with different ticket types: If you're offering different ticket types for your activity, such as VIP tickets or group discounts, an events plugin would be a better choice.

In summary, a WooCommerce bookings and appointments plugin is best for one-on-one services or activities that require a specific time and date. In contrast, an events booking plugin is better suited for events with multiple attendees, sessions, or ticket types.

The rest of this article will cover both types of "WooCommerce bookings plugin". Each time, I will make it clear whether the plugin is suitable for taking bookings for appointments or events. That way, you can choose the right plugin for your needs.

What type of events can I use a WooCommerce bookings plugin for?

In the previous section, we established that there are different types of WooCommerce bookings plugins for appointments and larger events. To help to explain this, let's look at some popular use cases for each type of plugin.

Any business that requires bookings, appointments, or reservations of any sort can use a WooCommerce bookings plugin. Here’s a look at some of them, divided into the two categories.

Popular use cases for WooCommerce appointment bookings plugins

I recommend a WooCommerce bookings and appointments plugin to sell the following examples of bookable product. These all focus on selling individual bookable products and time slots, rather than events for larger numbers of people.

Selling rental products

If you run a business that rents out products such as cars, boats, Christmas trees, or rooms and apartments then you’ll need a WordPress booking plugin. This will help you to better manage booking products, customer bookings, and reservations.

This way, you won’t have to maintain a manual, paper-based booking system or collect payments in person. Instead, customers will be able to use an automated reservation platform to learn about your products and the available time slots. They can use your website to book their desired product, and pay online.

Selling appointments and booking slots

A WooCommerce bookings plugin can help doctors better manage their patients’ appointments, and track any cancellations in time to squeeze in more patients. In addition, customers will no longer have to respond to emails or phone calls to book appointments in WooCommerce.

Similarly, personal service professionals such as wedding photographers, gardeners, and birthday decorators will also be able to fulfil client needs and requirements more efficiently.

Various types of product that may require a date picker

Online teaching businesses can also benefit from using an online booking system to complement their online learning website. You’ll be able to hire teachers who could each set up their available hours to teach students.

A WooCommerce bookings plugin lets you create all sorts of bookable products including university courses, cooking classes, guitar lessons, or even dance instructions. Either set a price and charge your clients a flat rate or by the hour.

You can also use a WooCommerce bookings plugin to let customers choose a date and time for any other purpose. For example, if you sell gifts direct to the recipient then it makes sense to let customers choose the desired delivery date.

Popular use cases for WooCommerce event bookings plugins

A WooCommerce event tickets plugin is a useful tool for businesses and organizations that sell tickets to events. This includes concerts, sports games, theater productions, and other live events. Here are three examples of popular use cases for a WooCommerce event tickets plugin.

Music festivals and conferences

Music festivals and conferences often have a complex ticketing structure that includes different ticket types for general admission, VIP access, and other premium services. A WooCommerce event tickets plugin can help manage these complex ticketing options and make it easy for customers to purchase and receive tickets. The plugin can also help manage the capacity of the venue, preventing overselling or underselling of tickets.

Sporting events

Sporting events can have a similar ticketing structure to music festivals and conferences, with various ticket types available for different seating areas and access levels. With a WooCommerce event tickets plugin, customers can easily purchase and receive their tickets online. At the same time, venue managers can track ticket sales and manage the availability of seats.

Theater productions

For theater productions, a WooCommerce event tickets plugin can help manage the sale of tickets for multiple showings or performances. The plugin can also help manage the capacity of the venue, prevent overbooking or double-booking. It also makes it easy for customers to select their preferred seating arrangement.

Online events

And of course, not all events take place face-to-face these days! You can also use a WooCommerce events plugin to take bookings for online events such as webinars. Or perhaps online appointments such as Zoom consultations.

What are the top WooCommerce booking plugins for appointments?

Ok, so now we've looked at the different types of WooCommerce bookings plugins. We've divided them into two categories based on whether you're selling places for appointments or events.

Now it's time to find the best plugins for each type of booking! Here, we’ll step through the most popular WooCommerce bookings plugins and highlight their key features. I'll also provide a full step-by-step setup tutorial for the best plugins on the list. That way, you'll have everything you need to get started with WooCommerce bookings and appointments.

1. WooCommerce Product Options

woocommerce product options

Before we get into the fully featured WooCommerce bookings plugins, I'm going to give you a simpler option. That's because in WordPress (and life in general!), it's generally best to go for the most user-friendly solution that meets your needs. This keeps your website lightweight and makes your life easier 😌

The simplest way to add WooCommerce bookings and appointments to your site is to use the Product Options plugin. This easy-to-use plugin lets you quickly convert any WooCommerce product into a bookable product. You simply need to add a date field to the product. This can be either a calendar with date picker, or a date and time picker.

Key Features:

Here are some features of the date field in the WooCommerce Product Options plugin. Together, these can enhance your online store for bookings and appointments:

  • Add a calendar field to any WooCommerce product or variation, so customers can select a date and time for their booking.
  • Disable past dates or future dates in the calendar to only allow bookings for available dates.
  • Prevent same-day bookings by marking the current day as unavailable.
  • Disable specific weekdays, such as weekends, if you don't offer bookings on those days.
  • Set the field as required to ensure customers select a date before adding the product to their cart.
  • Change the date format to match your preferences or your customers' needs.
  • Enter minimum and maximum date limits, manually or dynamically, to control the earliest or latest available dates for bookings.
  • Mark specific dates as unavailable, such as when you have other bookings or are on holiday.
  • Use conditional logic to dynamically show or hide the date field based on other options the customer selects.
  • Add an extra fee to the product when the customer selects a date, with multiple date picker fields available to charge different fees depending on the date.

By using the WooCommerce Product Options plugin's date field, you can create a more streamlined and customizable booking experience for your customers. And even better, you can do this without the need for a full WooCommerce bookings plugin.

WooCommerce Product Options comes with a full money-back guarantee. This lets you try it risk-free before committing to a more complex WordPress appointment plugin.


I started this section by saying that WooCommerce Product Options offers a simple way of selling bookings and appointments. If you simply need a way to add a date calendar to a product, then that's all you need. Why over-complicate things?

However, while the WooCommerce Product Options plugin provides a lot of flexibility and customization for adding booking options to your online store, there are some features that might require a full bookings plugin to achieve. It's worth considering whether you need these extra features. For example: 

One such feature is the ability to set different pricing options based on the date or time of the booking. While the WooCommerce Product Options plugin allows you to add an extra fee for a selected date, it doesn't provide the ability to create complex pricing structures based on a combination of dates, times, and other criteria. You can achieve this by adding multiple date fields to a problem (e.g. one for weekdays and one for weekends), each with different pricing. However, that may not meet your needs.

You may need centralized booking features such as a central page in the WordPress Dashboard listing all bookings. You don't get this with WooCommerce Product Options, which just adds the booking information to the usual 'Orders' page in WooCommerce.

Lastly, a full bookings plugin may be necessary if you need to manage your bookings and availability across multiple channels. Similarly, you may need a plugin that integrates with third-party booking platforms like Outlook Calendar.

While the WooCommerce Product Options plugin provides a great solution for adding booking options to your WooCommerce store, it may not be enough if you have more complex booking needs. If that applies to you, then skip to plugin #2 on our list.

How to add a simple booking calendar to any product

Next, I'll explain how to use WooCommerce Product Options to add a date field to any simple or variable product.

  1. First, get the plugin and install it on your WordPress site.
  2. The setup wizard will open, prompting you to activate your license key.
  3. At the end of the setup wizard, click the button to start creating product options.
  4. In Products → Product Options, either create a new options group or edit the default one. Click 'Add Option'.
  5. Select the 'Date' option type and fill in the information about it.
WooCommerce product add-ons date picker field

2. Amelia

Amelia WordPress booking plugin

Amelia is a robust WordPress booking plugin designed to create a flexible booking environment tailored to your specific business needs. With its intuitive and user-friendly interface, Amelia integrates seamlessly with WordPress-powered business websites, as well as e-commerce websites built on Woo (WooCommerce). It enhances efficiency, customization, and overall booking experience, as it helps track and manage various types of appointments and events.

What sets Amelia apart is its extensive feature set, including appointment reminders, two-way calendar sync, online payment processing, packages of services, the cart feature for booking multiple services, and support for recurring appointments.

Key features

Centralized appointment management directly from your WordPress website, from the admin area for you, and from the employee/user front-end cabinets for others (so they don't ever have to log in to your WP Admin).

  • Seamless integration with Woo (WooCommerce).
  • User-friendly booking form for clients.
  • Flexible appointment scheduling, available 24/7.
  • Online payment processing in case you decide to use it without WooCommerce.
  • Appointment reminders to reduce no-shows.
  • Two-way calendar sync with the calendar of your choice for accurate scheduling.
  • Support for packages of services to offer bundled options.
  • "Shopping cart" option that allows your clients to book multiple services before checking out.
  • Ability to schedule recurring appointments.
  • Customization options to match your brand identity.
  • Extensive integrations include Google Calendar, Google Meet, Zoom, Elementor, Divi, WooCommerce, and more.
  • Dashboard for business owners and managers to track key performance indicators (KPIs).

3. YITH Booking and Appointment for WooCommerce

YITH Booking and Appointment for WooCommerce plugin

YITH WooCommerce Bookings and Appointments helps you create a simple and easy-to-use booking system for your WordPress business website. This WooCommerce booking plugin supports all sorts of e-commerce sites built on WooCommerce and lets you create various types of bookable products with different pricing options.

Key features:
  • It enables you to easily manage bookings for apartments, rooms, and other living facilities by setting their daily or hourly booking rates.
  • You’ll be able to set the minimum and the maximum number of days available for booking by individual visitors.
  • You can set to approve reservations as soon as the customer confirms it or require approval from the admins.
  • You can set the maximum period until when customers will be allowed to cancel their bookings.
  • It enables you to manage appointments and bookings for services such as nail salon, physiotherapy sessions, or beauty parlors and sync your booking dates with Google Calendar.

4. BookingPress

BookingPress Plugin

BookingPress is a useful appointment booking plugin for Woocommerce. It simplifies the whole process for service-based businesses. With BookingPress, you can create booking forms, set up availability and prices, and handle payments on your website.

BookingPress has a major benefit - its flexible and customizable booking system. You can access premium add-ons at no cost, and it works with over 17 payment gateways, such as PayPal, Stripe, Square, Mollie, WooCommerce, Razorpay, and more.

While a free version of BookingPress is accessible on the platform, it is advisable to opt for the premium version of BookingPress. This unlocks its full capabilities and comprehensive feature set.

Key features
  • Award-winning responsive design.
  • 40+ premium add-ons which are free to use.
  • Fully customizable to meet the needs of individual businesses.
  • The Advanced staff dashboard is available for staff members to manage their schedules and appointments.
  • Custom booking fields with conditional hide/show options.
  • Advanced reports and analysis for better business management.
  • WhatsApp, Email & SMS notifications.
  • Invoice feature with PDF support.
  • Fully customizable booking forms and customer panels.
  • Cart facility for multi-booking.
  • 24/7 customer support.

5. Sales Igniter WooCommerce Bookings

Sales Igniter WooCommerce Bookings Plugin

Most WooCommerce Bookings plugins merely add a calendar to your product page, and then a backend page where you can see a table of your bookings. But what about all the other needs of your rental business store? For example, you need a way to edit your orders and rental dates, a way to see day by day visually for a month what your inventory is, a way to track what has been checked out and checked in.

Sales Igniter WooCommerce Bookings & Tours designed to solve these problems and more. It comes with many exclusive features not found anywhere else.

  • Admin POS Calendar integration
  • Multiple calendar types
  • Check-out and check-in inventory tracking with RFID / barcode scanning
  • Support for booking composite products / variable / bundled products
  • Rental security deposits

6. WooCommerce Bookings

WooCommerce Bookings plugin

The official WooCommerce Bookings extension enables your visitors to book appointments and reservations online – without making any phone calls. This way, you don’t have to mark dates on your calendar or maintain a paper-based booking system. Instead, your website will manage your bookings and online payments automatically.

Key features:
  • You can define set options like fixed time slots for a guided tour or an appointment or let your customers choose a time that suits them best.
  • It lets you set the minimum and the maximum number of participants allowed in a session. So, for example, you can choose to hold one-one-one appointments or allow multiple visitors to reserve a class.
  • You’ll be able to control how appointments are confirmed and cancelled on your WordPress website.
  • It allows you to send reminder emails to your customers when they make a reservation when it is confirmed, and the day before the booking date.
  • You can use a calendar to keep track of all your bookings and automatically sync all your booking dates with Google Calendar to view them on the go. This will work in your timezone.
  • WooCommerce Bookings also integrates with WooCommerce Product Table - ideal for listing bookable products in a searchable, filterable table view. More on this later.
  • Use WooCommerce to add payment gateways such as PayPal, Stripe, credit card, and so on.
  • Integrates with multilingual plugins like WPML for multi-language sites.

Tutorial: How to get started with the WooCommerce Bookings plugin

Want to know "How do I set up appointments in WooCommerce?" In this section, we'll walk through step-by-step instructions to help you get started with WooCommerce Bookings.

Installing WooCommerce Bookings

The WooCommerce Bookings plugin works seamlessly alongside WooCommerce allowing you to create bookable products. Assuming you already have WooCommerce installed on your WordPress website, here are the steps you need to follow to install WooCommerce Bookings:

Get the YITH WooCommerce Bookings plugin's zip file. Next, log in to your WordPress website and head over to PluginsAdd New and click the Upload Plugin button.

Install the WooCommerce Bookings plugin

Upload the plugin's zipped file and click Install Now to proceed. Activate the plugin to your website.

You'll notice that a new menu item in the side menu bar, Bookings. This is where you'll be able to create new bookable products and configure different settings related to accepting bookings. Next, we'll show you how you can begin creating a bookable product using WooCommerce Bookings.

Creating a bookable product

One of the reasons why WooCommerce Bookings is an incredibly popular booking solution in the WordPress space is because it's incredibly intuitive. The plugin lets you create bookable products in the same way you'd add new products in WooCommerce. The only difference is in the product's configuration settings. Here's what you need to do to get started:

Head over to Products -> Add New from the WordPress admin panel. Add in product details (such as the product name, description, and featured image) and set categories and tags as you normally would.

Add new product screen in WooCommerce

Next, scroll down to the Product data section. From here, use the dropdown menu next to where it says Product data to set the product as a Bookable product. If you're selling a virtual bookable product (such as an online course, training program, classes, or services), click the checkboxes next to the Virtual and Downloadable boxes, as necessary.

Virtual product checkbox in product data section

At this stage, you'll notice that the Product data section has been updated to reflect configuration settings for bookable products. Next, let's quickly step through these settings.

Booking duration

The Booking duration option lets you decide between a fixed block of or customer-defined blocks of:

  • Fixed block of. With this option, you'll be able to restrict customers and clients from booking outside of fixed slots. For instance, if you're setting up a website for a salon, you might need to set a fixed duration of 30 minutes to 2 hours, depending on the services you offer. You can set fixed blocks of minutes, hours, days, and months.
Fixed block of option
  • Customer defined blocks of. If you need to let customers set their own blocks, select this option. This way, you'll be able to set the duration and let customers select the number of blocks they'd like to book with you. With this option, you'll also be able to specify the minimum and maximum duration (in terms of days and hours) for bookings.
Customer defined blocks of option

Note: If you set the Booking duration in Day(s) for Customer defined blocks of, you'll also be able to enable calendar date range picker to make it easy for customers to select a start date and end date on the calendar.

Calendar display mode

You can use this option to set the calendar to always be visible or to be displayed when customers click.

Required confirmation

If you check this option, the booking request will be sent but the payment will not be processed until the admin confirms the appointment. Once the admin reviews and approves it, the booking request will be confirmed and the payment will be processed.

Can be cancelled

This option enables you to choose whether you’d want to enable customers to cancel their bookings after they are confirmed. Disabling this option will no longer let them cancel bookings after confirmation. If you select the option to allow booking cancellation, you can determine the period before it can be cancelled. For example, if you want to let customers cancel bookings up to two hours before their appointment, you'd configure the Booking can be cancelled until option as follows:

Option for cancelling booking

Setting up the costs

With WooCommerce Bookings, you can also set up pricing for each block you create by heading over to the Costs tab under the Product data section. You can choose to display prices on the sales page of your website or in a front-end table layout -- more on this later. Here's a look at the different options available to you for setting up costs for bookable products:

Base cost

This is a one-off cost for the booking as a whole. You can set this as the booking fee or the signup charges. This cost will be charged on every booking made regardless of the block cost. It's important to keep in mind that the base cost doesn’t depend on the block cost. In other words, even if a customer books more than one block, the base cost will remain the same for that booking.

Block cost

Here you’ll be able to set the price of a single block. The price per block multiplied by the number of blocks booked is the total cost of the booking.

Display cost

This is the price that’ll be shown to the users on the front-end regardless of the block cost and the base cost. This is great for when you'd like to display costs as, say, Starting from $9.95! Leave this option blank to have the cost automatically calculated for you.


These fields will enable you to add more customizations to your booking costs. This is especially useful for when you are looking to offer customers a special discount for a limited time. For instance, if you offer a discount from August 5th to August 7th, you might configure the range as follows:

Option for setting costs based on a range

This will set the block cost for services at $9.95 from August 5th to August 7th.

Configuring available booking slots

WooCommerce Bookings also lets you set up availability rules for each block you create by heading over to the Availability tab under the Product data section. Let's step through the different setting options available to you. I'll focus on the most important, and you can also do other things like add a buffer time between each booking time slot.

WooCommerce Bookings availability settings tab
Max bookings per block

Max booking per block denotes the maximum number of bookings that are available for the same block. Let’s look at an example to better understand this. Let’s say you employee three nail experts who can offer manicure services at the same time i.e. in a bookable block.  For this, you'd enter 3 as the Max bookings per block value.

Minimum block bookable

In this field, you can enter the minimum amount of time in the future for which the appointment can be booked. For example, if you set this to 2 weeks, customers will be able to book appointments with you up to 2 weeks before the day of the appointment.

Maximum block bookable

This option lets you specify the maximum period in the future for which customers will be allowed to make bookings. This is especially useful because you don’t want to let them book a few months or a few years in advance!

All dates are

This option lets you specify all the dates that are available by default. You can choose to set all the dates as not-available by default, as well.

Check rules against

You’ll be able to set the bookings system to check the rules for all the blocks that are booked or only the first block of the range of blocks being booked.

If you choose All the blocks being booked, the rule will be checked against every single block that the customer books. If a customer books 3 blocks simultaneously, all the blocks will be checked for availability individually and booking will be confirmed only if all three are available. However, if you specify the starting block only, the rule will check only for the availability of the first block.


You can use this option to specify the range for availability according to your requirements. Just click Add Range and set custom availability. For instance, if your salon will remain closed over the first week of September, then you can create a range for the unavailability of those days. This is also useful if you want to make weekends un-bookable.

Option for setting availability based on a range

Of course, there are many other settings you can configure with WooCommerce Bookings such as sending custom email notifications or SMS notifications. You can even use the Follow-Ups plugin to send custom emails for each bookable product. This is handy if you want to send directions or 'what to bring' instructions to people before their appointment.

7. WooCommerce Bookings And Appointments

WooCommerce Bookings And Appointments lets you convert any type of  WooCommerce product into a bookable product. It's great for taking bookings for time, accommodation, or events.

Key Features:

  • Sell bookings by the minute, hour, day or month.
  • Choose how many bookings to allow per time slot.
  • Set minimum and maximum booking durations.
  • Allow users to edit and cancel bookings, within a minimum period before the appointment.
  • Allow all bookings or enable admin approval.
  • Built-in email notifications and reminders.
  • Create more advanced booking forms with additional fields for customer information.
  • Syncs with Google Calendar.
  • Built-in staff management.
  • Advanced pricing rules and options.

8. Bookly

Bookly plugin

Bookly is a useful WooCommerce booking plugin that offers seamless integration with WooCommerce. It lets your customers book appointments for all types of businesses including spas and massage, law consultancy, car repair, beauty, and private clinics.

Key Features:
  • It helps you save time by eliminating your manual scheduling system. It automates the entire booking process. This enables your customers to quickly book their appointments even on weekends.
  • Bookly is easy to set up and lets you start receiving booking requests almost instantly.
  • You’ll be able to include several employees in the booking schedule, enabling them to charge different rates and show their available time slots.
  • You’ll be able to add an unlimited number of business services to your booking page and categorize them for easier management.
  • It offers integration with Google Calendar which lets you organize multiple calendars of all of your employees or staff members.

9. WooCommerce Appointments

WooCommerce Appointments plugin

WooCommerce Appointments is a popular WooCommerce booking plugin that enables you to easily schedule and reserve bookings on your WordPress business site. It’s an ideal solution for companies that want to focus on their core business activities and leave the appointment scheduling tasks to the software.

Key Features:
  • It is easy-to-use, fast to install, and doesn’t require any coding skills or staff training.
  • Its two-way Google Calendar sync feature lets you automatically synchronize bookings from your website with the Google Calendar and vice versa.
  • You’ll be able to assign multiple employees to appointments, manage their calendars individually, and enable them to log in and display their available times.
  • You can schedule appointments for multiple days for your customers or offer extended durations using add-on fields. Similarly, you’ll be able to extend duration by minutes or hours.
  • This WooCommerce bookings and appointments plugin lets you determine the number of times visitors can schedule an appointment in advance. This way they won’t be able to book an appointment a few months (or a year!) in advance.

Best WooCommerce bookings plugin for events

The six plugins featured above are perfect for taking bookings for individual appointments and time slots. However, they're less useful for selling tickets to larger events. For example, they don't have the features that you need to sell event tickets, such as a central calendar for viewing multiple event dates at once. They're also quite limited in terms of selling different ticket types and options.

We have just one top pick for using WooCommerce to sell tickets to multi-person events - The Events Calendar. This is easily the best WordPress events plugin. I'll tell you all about it next.

Introducing the Events Calendar

The Events Calendar is really a whole suite of popular WooCommerce bookings plugins for taking bookings for events. It offers a range of tools for managing and promoting events on a website. The suite includes several plugins, such as the core Events Calendar plugin, the Events Calendar Pro add-on, and other useful extensions. The Events Calendar is an ideal choice for businesses and organizations that host events and need a reliable and customizable platform to manage and promote them.

One of the key features of the Events Calendar suite is its ability to take bookings for events. You need the Event Tickets add-on for this. Whether you're hosting a small workshop or a large-scale conference, the Events Calendar makes it easy for customers to book and purchase tickets for your event. They can choose the number of people and place group bookings.

Backend management

Events Calendar plugin integrates with WooCommerce, which means that it can handle complex payment processing and booking scenarios. This includes recurring events and multi-day events.

In addition to its booking capabilities, the Events Calendar also offers a range of other features, including a customizable calendar view, event listings, location management, and support for various event types. It has a sidebar widget for listing events and displaying the calendar throughout your site. The plugin is also fully responsive and optimized for mobile devices, ensuring that customers can access and book events on the go. It has several built-in design templates to choose from.

The Events Calendar plugin suite is an excellent choice for businesses and organizations that need a comprehensive tool for managing and promoting events on their website. Its booking capabilities, combined with its other useful features, make it an ideal solution for a wide range of event types and sizes.

Is the Events Calendar a free plugin?

There is a free version of the Events Calendar on This lets you display events on your WordPress site. However, the free version doesn't come with booking functionality.

To take bookings online, you need paid add-ons such as Event Tickets. This adds full booking management features to your site, plus WooCommerce integration for selling tickets.

Showcase bookings in a table layout

With the default WooCommerce shop page layout, customers will have to click through to single product pages to be able to book products or appointments. This doesn't make for an intuitive shopping experience.

Instead, you can display all bookable products (along with real-time booking availability, pricing, and other product information) in a quick one-page order form. The front-end table will also display a booking calendar against each product in a column. You can do this by combining two plugins as follows:

Here's what you need to do to get started:

Step 1: Install and activate WooCommerce Product Table

Get the WooCommerce Product Table plugin. You'll find your license key in the confirmation email.

Next, head over to Plugins → Add New from the WordPress dashboard and upload the plugin’s zipped file to your site. Click the Activate button.

Activate your license key in the plugin setup wizard. You can also use the wizard to configure the product table settings.

You can modify the bookings table to make it look the way you want it to appear on your site's front-end. At the bare minimum, you'll want to set Columns. This will let you decide which columns to display in the table layout. For example, you can add columns for the bookable product image, name, description, plus a buy column which will contain the booking calendar and add to cart buttons.

Here's a complete list of available columns for WooCommerce Product Table and a detailed explanation of the different options available.

Important! Make sure you do not tick the 'lazy load' option in the WooCommerce Product Table setup wizard. WooCommerce Bookings only works with non-lazy loaded tables.

Step 2: Create your bookings and appointments page

By now, you've installed and activated the WooCommerce Product Table plugin to your WordPress website and configured its settings. Next, we'll create a bookings and appointments page for customers to book products and appointments.

Navigate to PagesAdd New from the WordPress admin panel and create a new page for accepting bookings and appointments. Your customers and clients will be able to use this page to select view bookable products, see pricing and special prices, book slots, and add bookable products to the cart.

Once that's done, simply add the shortcode [product_table] to the text editor. This will create a single bookings table on your site's front-end. If you offer different types of services, you might consider creating a separate table for each type of service. You can do this by using the shortcode [product_table category="category-slug"]. (This also works for different product types.) This will display all bookable products from the relevant category.

Click the Publish button and preview the page on your site's front-end. It might look something like this:

Preview of WooCommerce Bookings integration with WooCommerce Product Table

Is WooCommerce booking plugin free?

You may be wondering, "What is the best free booking app for WordPress?" While WooCommerce is a free plugin, none of the booking extensions featured in these articles are. Instead, they are paid add-ons that you need to buy separately to add booking functionality to your WooCommerce store. Unfortunately, we're not aware of any free plugins with the features and quality that you need to take bookings on your website in a robust, reliable way.

As with most things in life, you get what you pay for. Investing in a premium booking plugin like YITH WooCommerce Bookings or WooCommerce Product Options is a smart move. They're the best way to take bookings on your website in a way that is both reliable and easy to use.

Bonus tip: Sell extras with your bookable products

Add date picker to WooCommerce product for training course product

A WooCommerce bookings and appointments plugin makes it easy to sell appointments or other bookable time slots in WordPress. You can increase your average income per booking by selling extras at the same time.

For example:

  • If you're selling massage appointments then you may want to offer optional extras, such as skincare products or massage oils.
  • Similarly, if you're selling training courses then you could sell a training handbook and lunch.
  • Even if you don't want to sell extras, you may wish to collect extra information from customers such as any special health needs or dietary requirements.

You can do all this by adding the WooCommerce Product Options plugin. As we saw earlier, WooCommerce Product Options comes with a date field which you can use to convert any product into a bookable product. However, you can use it to add extras to your bookable products even if you're using a different bookings plugin such as WooCommerce Bookings.

WooCommerce Product Options also has compatibility with with WooCommerce Product Table, so the extras for each bookable product will appear in the Buy column of your product tables. That way, customers can select a date from the booking calendar, choose extras and enter extra information directly from the list of products.

Related: The best WooCommerce Product Add-Ons plugins (and how to use them).

Which is the best WooCommerce bookings plugin?

Having a robust WooCommerce bookings plugin allows you to easily accept, manage, and track customer and client bookings directly through your WordPress website. You can create bookable products the same way as you would in WooCommerce. Once you've created bookable products, you can set costs and availability and start accepting bookings right away!

These are our top recommendations for WooCommerce bookings and appointments plugins:

  • WooCommerce Product Options - Use this if you want a very simple way to add a date picker to any product, without the added complexity of a full bookings plugin.
  • YITH WooCommerce Bookings - Use this if you want a fully featured bookings plugin complete with online availability and more.
  • Events Calendar - Alternatively, use this if you want to sell events rather than bookings.

And remember, whichever bookings plugin you choose, you can use WooCommerce Product Options to add extra options to your bookable products. That way, you can collect extra information from clients as well as earn more money by selling upgrades and extras.

What are some of the features you look for in a WooCommerce booking plugin? We'd love to hear from you so let us know in the comments section below!


  1. Hi Maria,

    Thanks for your detailed article.
    Those are good plugins you've listed!
    I just wanted to extend that list with a new free booking plugin I've been working on: Wappointment

    The idea behind it is for it to work for 90% of the users out of the box with the most vital booking features. (Frontend Booking Form, Email reminders, Backend Calendar, Calendar Sync) And then extend away with addons based on needs. We're only at the start of our journey, but I hope you'll check it out!

    • Hi, Ben. Thanks for the info about Wappointment. Please may I know if you've tested it with WooCommerce? I checked out the site and fail to find any mention of it working with WooCommerce and so may have missed it somewhere. Thanks!

        • Hi, Ben. Thanks for your reply and the link to your plugin's add-on for using it with WooCommerce. I appreciate it and users can try/test our WooCommerce Product Table plugin together with yours on their sites.

          If you guys would like to do the same yourselves, to test for compatibility, please let us know by getting in touch via our Support Center. I look forward to hearing from you.

Please share your thoughts...

Your email address will not be published. Required fields are marked *