The day plan and at-risk visits

The Schedule page in your owner cabinet is where you run the week. It shows the next seven days as a list, grouped under Today, Tomorrow, and then dated headings, with a job count for each day. Every visit row shows the client and city, the start time and service type, the price, and the current status — plus a Crew picker so you can set who's going, right on the row.

A toggle switches between List view and Calendar view. The calendar is a month overview — it counts the month's jobs and any that are still unassigned, and marks each day's jobs with dots; tapping a day opens its visits, where you can set the crew, reschedule, skip, or cancel a visit right there (the same actions as the list). This is what lets you act on a job further out than the rolling seven-day list — including assigning it, which matters because the calendar reaches months ahead while the list covers only the coming week.

The Crew picker offers the cleaners who are ready to receive work — that means anyone on your team who has set a start address in their own app, since routes and drive times are measured from it. If the picker is empty it tells you which of the two things is missing: you have no cleaners yet, or your cleaners haven't set a start address, and either message links you to your team page. See Invite your team.

At-risk flags

Some visits in the list carry a small At risk tag. It means the visit is running late in the plan — based on the day plan you've committed, the crew would arrive too late to fit the visit inside its window. Hovering the tag shows the plain version: "Running late — may miss the visit window."

The flag is a signal to you, not an action taken for you. Nothing is moved automatically. Your usual fixes are to reschedule the visit (below), change the crew on the row, or open the assign grid and re-plan the day. The tag is recalculated every time the page loads, so it clears on its own once the plan fits the window again. Customers never see this flag.

Reschedule a visit inline

Every visit that's still scheduled shows three buttons on its row: Reschedule, Skip, and Cancel.

Once a visit is in progress or finished, these buttons disappear and the crew becomes read-only — a running job belongs to the cleaner's surface.

What the customer sees

When you move a visit, customers who use the customer portal are told automatically. If they have notifications turned on for their device, they get a short alert saying their cleaning time changed; otherwise they get an email titled "Your cleaning has been rescheduled" that spells out the new date and time and invites them to reply if it doesn't work. Their portal updates to show the new time as well. Two exceptions: a customer can turn off Job updates in their portal settings, in which case no alert or email is sent — and a client who hasn't joined the portal gets no automatic message at all, so contact them yourself. See Invite clients to their customer portal.

Customers can also ask for a change from their own portal. Those requests come to you as decisions — nothing on your schedule changes until you approve. See Your Decisions Inbox.

Assignment suggestions

When jobs have no cleaner, you'll see it flagged on your Pulse (the Assign → link) and in your Inbox (Open assign grid). The Assign cleaners page is where the AI proposes a plan: a sequenced day for each cleaner, with a planned start time and an estimated drive time for each job, plus a one-line reason under each proposal ("AI suggests: …").

The proposal is exactly that — a proposal. Each row has a cleaner dropdown pre-filled with the suggestion; keep it or pick someone else, then tap Approve (or Approve all), and finish with Commit day plan. Jobs the AI can't place appear under Needs your attention with the reason. On a brand-new workspace the usual reason is that business hours haven't been set yet — with no open day, every visit falls outside the window, and the row links straight to Business hours. After that the common ones are a property with no cleaning duration set (that row links to the durations screen), a visit outside its booking window, and a visit that falls outside the working hours your cleaners set for themselves — someone could still take it, so that row keeps its Assign anyway button; the planner just won't propose it on its own. Cleaners set those hours on the Me page of their own app (they tap their name at the top of Today); see Availability, time off, and your start address. Route planning starts from each cleaner's start address, so if none are set yet, the page will point you to set those first.