Skip to content
GPLWP Guides

How to accept cleaning service bookings on WordPress

Booking & Events Time About 45–90 minutes 7 steps Updated 10 Sep 2026

BOOKING & EVENTS
The short answer

WordPress does not include service availability, appointment slots or booking payments by default. You can collect requests with a form and confirm them manually, but a booking plugin is needed for automatic scheduling, confirmations and payment collection.

The route
  1. 01Define your booking rules
  2. 02Choose the booking route
  3. 03Install a booking plugin
  4. 04Set availability and payments
  5. 05Build and publish the booking page
  6. 06Test the customer journey
  7. 07Use a combined cleaning theme

What you need

  • A WordPress website with admin access
  • Your cleaning services, prices and service durations
  • Your working hours, service area and cancellation policy
  • A payment account if you will take deposits online

Define your booking rules

List each service separately, such as standard cleaning, deep cleaning, end-of-tenancy cleaning and recurring visits. Record the price, expected duration, travel area, number of cleaners and any extras such as ovens, windows or laundry.

Decide how far ahead customers can book, how much notice you need, whether bookings are confirmed instantly or approved by you, and whether you require a deposit. Include travel and buffer time so one appointment does not run into the next.

Choose the booking route

For a small operation with an irregular diary, the manual route can be enough: create a booking-request page with a form for the customer’s name, contact details, address, preferred date, preferred time and cleaning requirements. Review each request, check your calendar, then confirm the appointment by email or phone.

This is not automatic booking. Customers can request the same slot at the same time, and you must keep the calendar, confirmations and cancellations up to date yourself. WordPress themes control the site’s presentation; they do not, by themselves, provide appointment availability or slot management.

Install a booking plugin

For instant online bookings, install an appointment or service-booking plugin from the WordPress admin area. Choose one that supports service durations, working hours, blackout dates, buffer time, customer notifications and either manual approval or automatic confirmation.

Activate the plugin, then create the services and staff or resource calendars it requires. Do not publish the form before checking whether the plugin treats a pending booking as unavailable; otherwise two customers may be offered the same slot.

Set availability and payments

Enter your normal working hours, days off, holidays, minimum notice period and maximum booking window. Add travel or preparation buffers between jobs, and assign each service to the correct cleaner or team. If several cleaners work at once, configure each person as a separate resource where the plugin supports it.

Connect a supported payment gateway only after deciding whether customers pay in full, pay a deposit or pay after approval. Confirm that the booking status changes correctly after payment and that failed or abandoned payments do not permanently block a time slot. Payment and calendar features vary between booking plugins.

Build and publish the booking page

Create a page called Book a cleaning and add the plugin’s booking form or shortcode block. Show the service name, duration, price, available dates, arrival window, address fields, access instructions and any important terms before the customer submits the booking.

Add links to your privacy notice, cancellation policy and contact page. Put the booking page in the main menu and add a clear button on the home page and each service page.

Test the customer journey

Submit test bookings from a desktop and a phone. Check that the correct services, durations, prices, time zone, confirmation page and emails appear. Test a blocked day, a fully booked period, a cancellation and a failed payment if online payment is enabled.

Also check the notification recipient and reply-to address. A common failure is that bookings reach the customer but not the cleaner because the site’s mail delivery or notification setting is wrong. Make one real-world test booking before advertising the page.

Use a combined cleaning theme

If you want the service catalogue and appointment flow packaged together, ClanyEco is a practical shortcut. It is a cleaning-business theme with service listings and appointment booking, so you can install it, activate it, add your services and configure the booking settings instead of assembling the presentation layer separately.

Install the theme ZIP from Appearance > Themes > Add New > Upload Theme, then activate it. WordPress documents this upload-and-activate process for ZIP themes.

The fast route

Let ClanyEco do it

Cleaning-business theme with built-in service listings and appointment booking, suited to agencies that want both in one site.

Get ClanyEco

Sources

  1. wordpress.org /documentation/article/work-with-themes/?utm_source=openai
  2. wordpress.org /plugins/latepoint/?utm_source=openai
  3. wordpress.org /documentation/article/appearance-themes-screen/?utm_source=…

Questions

Can I accept cleaning bookings without a plugin?
You can accept booking requests without a booking plugin by using a form and confirming each request manually. WordPress will not automatically manage cleaning-service availability, prevent overlapping appointments, calculate booking durations or collect appointment payments. This route is suitable for a small schedule, but it becomes error-prone when several cleaners or services share the same calendar.
What information should a cleaning booking form collect?
A cleaning booking form should collect the customer’s name, email address, phone number, property address, service type, preferred date and time, property size and relevant access instructions. Add fields for pets, parking, special requests and extras. Ask only for information you need, and explain how you will use the submitted details in your privacy notice.
How do I prevent double bookings?
Prevent double bookings by giving each cleaner or team a separate availability calendar, adding service duration and travel buffers, and blocking holidays and existing commitments. Test two simultaneous booking attempts before launch. If the plugin supports pending bookings, confirm whether a pending appointment temporarily reserves the slot or leaves it available to other customers.
Should cleaning customers pay when they book?
Customers can pay in full, pay a deposit or pay after you approve the request. A deposit can reduce no-shows, but it requires clear cancellation and refund rules. Before launch, test successful payments, failed payments, refunds and abandoned checkouts so a failed transaction does not leave a time slot incorrectly marked as booked.
Can customers book recurring cleaning visits?
Recurring cleaning visits require a booking system that supports repeat appointments or a manual process for creating several future bookings. If recurring bookings are important, check how the system handles holidays, skipped visits, price changes and cleaner availability before enabling the option. Do not assume that a normal one-off appointment form supports recurring schedules.