Calendar & Scheduling
View and manage appointments, assign jobs, and track your team's schedule.
Open Bookings / Calendar to see upcoming jobs and availability across your team. It is the working view for what is booked, who is assigned, and what still needs confirmation.
Plan the day
Use the day view to see every route in one clear snapshot. Check the start time, address or property, duration, team members, and status of each job before the day begins. Fill gaps where a crew member has availability and consider drive time when you assign back-to-back visits.
Approve booking requests
Booking requests from the AI or online form appear here for your approval before they become confirmed jobs. Review the service type, property address, preferred time, and notes. Approve requests that fit your capacity and decline or ask for more detail when the scope is unclear.
Assign crew and update statuses
Create or edit appointments, assign cleaners, and update status as work progresses. Keep assignments accurate so notifications and reminders match the real schedule. If a cleaner calls in sick, reassign the job or move it before the customer arrives.
Watch for conflicts
Use filters and week views to spot overlapping assignments and recurring visits that collide. Pay extra attention to holidays, travel time, and jobs with longer scope than the calendar block allows.
Set a clear daily workflow
A reliable team meeting can be simple: check today's jobs, confirm any unconfirmed booking requests, assign any open crew time, and decide who handles urgent changes. Use the same workflow every day so nothing hides between scattered messages.
Note: Calendar and jobs features are part of your operations plan bundle; confirm they are enabled on your subscription.
Route jobs with drive time in mind
When assigning jobs, group by area for the same day and add drive time between visits. A short booking window may need a later start even when the crew is free, because travel is part of the promise you make to the customer. Keep apartment buildings, gated communities, and downtown parking notes visible so the route plan does not fall apart in the field.
Confirm bookings before the customer expects it
Build a confirmation habit for every approved request: confirm the service, date, arrival window, address, access instructions, and who is coming. Send the confirmation early enough for the customer to change plans, and update the job status after their reply.
Run a weekly cleanup
At the end of each week, close completed jobs, move unconfirmed requests to a clear next action, and review next week's capacity. Look for recurring clients whose schedule changed, holiday gaps, and jobs where the estimated duration no longer matches the actual cleanup time. Those small corrections prevent double bookings and last-minute surprises.
Plan a realistic daily route
A route with four jobs may look complete in a list, but it only works when the address order and drive time are realistic. For each crew, arrange visits by area, block enough travel between staggered arrival windows, and mark the job notes that affect timing, such as parking, elevator access, or a gate code. When a customer asks for a narrow window, add the travel buffer before accepting it.
Handle common scheduling exceptions
Create a short process for the exceptions that break a normal day: a cleaner calls in sick, a customer is not home, a job runs longer than the block, or a recurring client asks to pause a week. For each exception, name who updates the schedule, who contacts the affected customers, and what status should be used. Without a process, the calendar can show a job as scheduled even after everyone knows the plan changed.
Use capacity before booking more work
Before accepting a new customer, look at the week's open crew hours, not just whether a date is free. A date without an assignment is not real capacity. Keep a rough budget of hours per crew and close booking for a period when the remaining work would push visits too late or too close together.
Create a start-of-day cover sheet
Make a simple daily list for each crew: client name, service, address, arrival window, duration, access notes, and anything needed to execute the job. Print it, keep it in the team message, or open it on the same dashboard view used in the morning. The sheet should answer the questions the crew asks most often without needing to call the office.
Protect recurring clients when capacity is tight
When a day is nearly full, protect recurring clients before accepting new one-time work. Check whether the existing customer can move to a different time, then decide whether the new request fits without breaking that relationship. A recurring visit is easier to protect when the calendar note includes the agreed frequency, preferred arrival window, and arrangement made with the customer.
Keep a weekly capacity decision record
At the end of each week, write down which dates were closed, which requests were declined, and why. The record helps you see whether the team is regularly short on a particular day or hour. Adjust booking windows, add a crew member, or change the service duration before the same conflict repeats.
Build a buffer for first visits
Add extra time to a first visit when the customer describes an unusual property, accumulated cleaning, or access details you cannot confirm remotely. Ask the crew to note the actual time after the job, then use that number to update the service duration or booking window. The first visit is the best source of truth for future estimates.
Worked example: plan a mixed residential day
Imagine one two-person crew with four jobs on Tuesday. The first visit is a weekly kitchen-and-bath clean from 8:00 to 9:30, the second is a one-time deep clean from 10:00 to 12:30, the third is a move-out turnover from 2:00 to 5:00, and the fourth is a short apartment refresh from 5:30 to 6:30. Before confirming those times, check that the drive from the first home to the second fits between 9:30 and 10:00, that the turnover has the expected supplies already loaded, and that the final arrival leaves enough time for parking and building access. If any link is too tight, move the job or add a buffer instead of assuming the crew can catch up.
Use a simple capacity worksheet
For each crew, keep a one-line worksheet with the available start time, available end time, unpaid drive time, booked hours, and the last appointment that must be protected. When a new request arrives, add it to the worksheet and ask whether the adjusted route still gives every customer a realistic arrival window. The worksheet does not replace the calendar; it prevents a date that looks free from being sold twice.
Fix common scheduling mistakes
- Accepting a narrow window without checking travel, parking, or elevator access first.
- Treating a date with no crew assignment as available capacity.
- Letting a status stay as scheduled after a customer or cleaner has already changed the plan.
- Duplicating a recurring visit because the original job was copied instead of extended.
- Forgetting to update the service duration after the first actual visit reveals the true time.
Run a daily scheduling decision check
Before the day starts, answer four questions: Is every job assigned to a crew? Does the route order match the real geography and access notes? Are all booking requests either approved, declined, or waiting on a clear customer reply? Can the team see the final schedule without asking the office? When all four answers are yes, the morning starts from one source of truth instead of a group chat.
Review one scheduling metric weekly
Pick one number to review after the week closes, such as jobs that started late, requests declined because capacity was full, or recurring clients whose schedule changed. Read the jobs behind that number and choose one fix for the next week, such as a later buffer, a shorter booking window, or a cleaner service duration. A single weekly number keeps scheduling tight without turning the calendar into a full-time reporting project.