Farah and Daniel run a small cleaning service around Kuala Lumpur. Their calendar is often full. On busy days they move from one condominium to another, carrying supplies, finding parking and rushing to finish every booking on time.
At the end of the week, however, the money left is smaller than expected. They recorded the price of each job, but not the time and costs between jobs.
A RM160 booking is not all profit
For one three-hour apartment cleaning priced at RM160, they listed the real costs:
- Two cleaners for three hours: RM72
- Cleaning liquids, cloths and gloves: RM12
- Fuel and tolls: RM14
- Parking: RM6
- Equipment and administration allowance: RM10
The total cost was RM114, leaving RM46 before tax and unexpected expenses. If the customer added an oven or balcony without an extra charge, the job could take another hour and reduce the profit further.
Travel time is still working time
Farah used to measure only the hours spent inside a customer’s home. She later realised that a 45-minute drive, security registration and waiting for a lift also used part of the team’s day.
They began recording the start time, arrival time, cleaning time and departure time for every booking. A four-hour gap in the calendar did not always mean four billable hours.
Small extras need a clear price
Customers sometimes asked for windows, heavy grease, pet hair or inside cabinets after the team arrived. Farah and Daniel wanted to help, so they often accepted these tasks for free.
They created a simple checklist showing what the standard package included. Extra work received a separate price based on time and materials. Customers understood the scope more easily, and the team could protect the schedule for the next booking.
Group jobs by area
The records also showed that two modest jobs in the same neighbourhood could earn more per hour than two higher-priced jobs on opposite sides of the city. They started grouping bookings by area and day to reduce travel, toll and parking costs.
Five details to record for every job
- Package price and extras requested.
- Number of cleaners and hours worked.
- Travel, toll and parking costs.
- Supplies used during the job.
- Profit after every cost and hour.
Try this for seven days
For every booking this week, record the time your team leaves, arrives and finishes. Add travel, parking, supplies and unpaid extras. Then divide the profit by the total hours used. Compare the result across locations and packages before planning next week’s calendar.
A full calendar matters when every hour produces clear profit
KiraLaris helps you record sales, job costs and time so your service business can make better decisions.





