For operators · October 24, 20268 min read
Scheduling cleaners: how to know who is actually free, not who you think is free

A cleaner is only "free" at 2pm if nothing else already claims that slot: no approved leave, no earlier job that is likely to overrun, no travel time you forgot, and, for two-person jobs, a partner who is also free. Most scheduling mistakes in cleaning companies come from treating "nobody told me they are busy" as "they are free". This article lists what to check before you assign a job, how much buffer to leave, and a 10-minute test you can run on any scheduling tool, including ours.
Why do cleaning companies keep assigning someone who is not actually free?
Because the facts that decide availability live in different places. Who is on leave is in a WhatsApp message from last Tuesday. Which job is running late is in the supervisor's head. Who is already booked is on last week's spreadsheet. Whoever builds tomorrow's schedule is stitching those together from memory, usually at 10pm, and a gap in any one of them becomes a double booking at 8:30am.
Housecall Pro's guide to double booking in service businesses names the same causes: manual entries without checking existing bookings, calendars that do not update in real time, no single shared calendar, and unclear rules on who manages the schedule. The fix it recommends is boring and it works: one source of truth that everyone updates, blocked time for existing jobs, and a buffer of 15 to 30 minutes between appointments. That page is a general guide for field-service businesses, not specific to cleaning or to Malaysia, so treat the numbers as a starting point.
What do you need to know before you can call a cleaner "free"?
You need six facts, not one. "Not on my list for that day" only covers the first.
| Check | The question | What goes wrong if you skip it |
|---|---|---|
| Existing jobs | Is any job already assigned to this person in that window, including jobs a supervisor added by phone? | Classic double booking: two clients, one cleaner, one of them waiting |
| Leave and rest days | Is the cleaner on approved leave, medical leave or a rest day? | You assign the job, they do not turn up, and you find out at 8:35am |
| Overrun risk | Is the job before this one likely to run late (post-renovation, first-time deep clean, a large homestay)? | The next client waits an hour and you pay two cleaners to stand around |
| Travel time | How long does it take to get from the previous address to this one at that hour? | A back-to-back booking that is impossible on a school-run morning |
| Pairing | Does this job need two cleaners, and are both free, and do they work well together? | You schedule one half of a two-person job |
| Hours and overtime | Will this push the person past normal working hours this week? | A job that looks profitable but triggers overtime pay |
The overtime row is worth a closer look, because it quietly changes whether a job makes money.
How does overtime change the maths?
It raises the cost of the labour on the extra hours, and it is easy to trigger by accident when a late job runs into the evening. According to AJobThing's summary of Malaysia's Employment Act, the standard limit is 45 hours a week and 8 hours a day, and overtime is paid at 1.5 times the hourly rate on a normal working day, 2 times on a rest day and 3 times on a public holiday. The Act's coverage includes employees earning up to RM4,000 a month, and manual workers regardless of salary. That is a secondary summary, so confirm the current rules with the Ministry of Human Resources before you build payroll on them.
As an illustration only, take a cleaner paid the RM1,700 minimum wage. Using the common method of monthly wage divided by 26 days, then by 8 hours, the hourly rate is about RM8.17. One hour of overtime on a normal day is then about RM12.26, and one hour on a public holiday about RM24.52. Now compare that with what a cleaner-hour earns the company. Our standard home clean is RM150 for two cleaners for two hours, which works out to about RM37.50 of revenue per cleaner-hour. Overtime is only part of the damage: an hour of two people standing idle costs more than an hour of overtime, which is why a clash is more expensive than it looks.
| What goes wrong | Rough cost (illustration) |
|---|---|
| Two cleaners wait 1 hour for a client or a late team | About RM75 of paid time producing nothing (2 × RM37.50 of revenue-equivalent hours) |
| A job that should have been 2 hours finishes 1 hour late for 2 cleaners | Roughly RM24.50 of overtime for the two of them at the 1.5× rate, plus the knock-on delay to the next booking |
| A cleaner does not turn up and no backup is arranged | A cancelled or rescheduled job, which is the whole RM150 plus the client's trust |
Those are rough numbers meant to show the shape of the problem. Plug in your own wage rates.
How much buffer should you leave between jobs?
Leave at least 15 to 30 minutes between jobs as a general starting point, and more when the route crosses town or the previous job is the kind that overruns. That 15-to-30-minute range comes from the general double-booking guide above, not from cleaning-specific data, and we could not find a reliable published figure for travel time between Johor Bahru neighbourhoods, so treat the table below as our own suggestion to adjust with your real routes.
| Situation | Suggested buffer (our suggestion) |
|---|---|
| Same condo block or neighbouring building | 15 minutes |
| Different area, same side of town | 30 minutes |
| Opposite sides of town, during morning or evening traffic | 45 to 60 minutes, or avoid the pairing |
| After a job that often overruns (post-renovation, first deep clean, large homestay) | Add 30 to 60 minutes on top |
| Same-day homestay turnover with a fixed check-in time | Plan backwards from the check-in time, not forwards from the checkout |
Record the real start and finish times for a few weeks. After that you are scheduling from your own numbers, not our guess.
What do you do at 7am when a cleaner calls in sick?
Have the answer ready before it happens. A sensible order is:
- Check who is genuinely free in that window, using the six checks above, not who replied first on WhatsApp.
- Swap within the same area first, so travel time does not eat the saving.
- Call the client before they call you. Offer a short delay or a new slot, and keep the message short and specific.
- Protect the fixed-time jobs. A homestay turnover with a 3pm check-in comes before a regular weekly clean that can move to the afternoon.
- Record what happened, so the next time you know who is a reliable backup.
If you have no spare person at all, the honest answer is to reschedule early rather than send someone who is already booked. A client forgives a message at 7am. They do not forgive a no-show at 10am.
How do two-cleaner jobs change scheduling?
They make every other rule twice as strict, because both people must pass every check at once. A job priced as two cleaners for two hours blocks two diaries, not one, and if either person drops out the job does not become half a job, it becomes unworkable. When you pair people, keep stable pairs where you can: they finish faster, you spot problems earlier, and swapping one person becomes a single decision instead of a reshuffle. Also check that the software lets you set headcount and duration separately, as covered in the 30-minute software test.
What should you test in a scheduling tool in 10 minutes?
Run this on any system you are considering, in its free trial, with real names and a real day.
| Minute | Do this | It passes if |
|---|---|---|
| 0–2 | Create a job for 9am and try to assign the same cleaner to a second job at 10am that overlaps | The system warns you, or at least shows the clash clearly, before you save |
| 2–4 | Mark a cleaner as on leave for tomorrow, then try to assign them | They are blocked or flagged, instead of silently accepted |
| 4–6 | Create a two-cleaner job and make one of them unavailable | The system shows that the job cannot be fully staffed |
| 6–8 | Move a job to another day | The cleaner's phone and the client's confirmation both update, and nobody has to resend a message by hand |
| 8–10 | Look at one cleaner's week | You can see their booked hours and spot overtime coming, without opening a spreadsheet |
If the trial refuses to show conflicts until after you have saved, that tells you most of what you need to know. For the evidence side of a finished job, see photo proof for cleaning jobs.
When is WhatsApp and a shared sheet enough?
Under about five cleaners with fixed weekly routes, it usually is. If the same people visit the same clients on the same days, the schedule rarely changes, and one person owns the sheet, a group chat and a shared spreadsheet will do the job at no cost. The point where it stops working is usually one of these:
- You cannot say, without calling someone, which cleaner is free at 2pm tomorrow.
- Leave requests arrive after you have already built the schedule.
- Two people edit the sheet and one change overwrites the other.
- Clients keep asking where the team is, and the answer is "let me check".
If none of those happens yet, keep what you have, run the 10-minute test on a free trial anyway, and come back when one does.
What does this look like on our own system?
Scheduling is built into the Cleanlemons system that our own cleaners use every day in Johor Bahru, alongside clock-in with photos and location, invoicing from completed jobs and payroll with EPF and SOCSO. We would rather you test the clash and leave rows from the table above than take our word for them, so ask us to run them on a test cleaner during your trial.
The demo environment at demo.cleanlemons.com is open, and the plans are on /pricing. If you would like to run the 10 minutes with one of us on the phone, send a note through /enquiry and tell us how many cleaners you schedule.
Ready when you are
Book a cleaning, or ask us anything about the software.
More articles
November 4, 2026
Chinese New Year spring cleaning in Johor Bahru: what it costs and when to book for 2027
November 3, 2026
Airbnb cleaning checklist for Johor Bahru homestays: room by room, plus the 12 photos to ask for
November 2, 2026