Don’t miss our Special Offer!

Up to 50% off
Grab Amelia
Grab Amelia

Custom Service Duration in the Amelia WordPress Booking Plugin

The custom duration gives you the ability to offer a single Service with multiple durations your customers can choose from, define different prices for these durations, and define different prices for those durations per employee.

Configuring the Custom Duration of Services

When creating a new service, or editing an existing one, navigate to the “Duration & Pricing” tab in the top menu of the service. In there, you can define the default duration and price of the service. In order to enable the Custom Duration, you need to enable the “Custom Duration and Pricing” slider below the “Capacity” fields:


Once this is enabled, you’ll be able to configure the custom duration and the custom prices for the Service. Like all time periods in Amelia (service duration, employee work hours, breaks, buffer times), the offered duration depends on the Default Time Slot step, configured in Amelia’s General Settings.

In the example below, the Default Time Slot step is set to “30 minutes”.


Depending on the Default Time Slot step, you have the freedom to configure Custom Duration anywhere between 1 minute and 8 hours.

Once you configure this, the price of the Service and the Custom Duration periods will apply to all employees assigned to this service. However, just like before, you can configure the price of Custom Duration per employee.

Configuring the Price per Employee

As mentioned above, the price of all Custom Duration periods will be applied to all employees, but you can navigate to the Employee’s section in Amelia, select an employee and change the price this employee will provide the custom duration (or the Service) for.

In the “Assigned Services” tab, in the Employee’s profile, you’ll see the list of all services the employee is assigned. The services that have at least one Custom Duration period will appear with a pencil symbol on the right:


Clicking that pencil symbol expands all available Custom Duration periods below.

Please note: You will not be able to change the duration of these periods, as they apply to the Service, but you will be able to configure different prices for the selected employee, as shown in the screenshot below.


Please note: Make sure that the Work Hours of your employee are long enough to fit all Custom Duration periods + any possible Buffer Times.

Example #1: If one of the Custom Duration periods lasts 3 hours, and your employee’s work hours are from 09:00 – 11:00, the employee will not be able to offer a 3-hour-long appointment;

Example #2: If your service has Buffer Times before and/or after the appointment, you need to take those into account when creating the Work Hours of an employee. If the Service (or one of the Custom Duration periods) lasts 2 hours, and there’s a buffer time of 1 hour, while your employee works from 09:00 – 11:00, the total for the service (duration + buffer time) will be 3 hours, so the employee will not be able to offer a 3-hour-long appointment.

The solution here is to extend your employee’s Work Hours.

Booking a Custom Duration Service on the Front-end

Custom Duration is implemented in all Amelia’s Service-booking forms (Step-by-Step, Catalog, Search, and the old Step-by-Step). We’ll show you what it looks like in the new Step-by-Step booking form, but it is similar to all appointment-booking forms.

Choose the form you want to use, and add it to the front-end page using either one of the shortcodes or one of the builders (Elementor, Divi, Gutenberg). There are no additional settings for Custom Duration services – if the service has multiple duration periods configured, they will be displayed on the front, above the calendar.


This is a drop-down menu, so in order for customers to select a different duration of a Service, they need to click on the menu:


Depending on the employee’s availability, their Work Hours, and other services appointments, the offered time slots will vary.

For example, if the default duration of 2 services is 1 hour, and there’s a 1-hour service booked at 12:00, the customer won’t be able to book a service with Custom Duration (a 2-hour long service) at 11:00. So, Amelia will allow your customers to choose the duration they want, but it will display the available time slots based on the employee’s availability.

Group appointments can be used with different duration periods of a single service.


Default Duration: 1 hour;
Custom Duration: 2 hours;
Maximum Capacity: 3 people.

If the 1st customer books the extended appointment at 10:00, upcoming customers won’t see the 11:00 slot (because the customer can’t jump in, in the middle of an appointment), but they would be able to book a 1-hour appointment at 10:00. So, you could have a group appointment where some customers booked shorter appointments, and other customers booked longer appointments, but they all need to start at the same time.

Booking a Custom Duration Service in the Back-end

When adding the appointment in the back-end, the only thing that changes for Services that include Custom Duration periods is that all those periods are offered next to each customer when creating/editing the service.

Just like in the front-end booking form, this is a drop-down menu that automatically selects the default duration and that can be changed to any of the Custom Duration periods added in the Service.

Please note that the same limitations apply – if the employee has another service after the selected time slot, and you want to select a different (longer) duration, you will not be able to since the appointments cannot overlap.