Start your free 14-day trial
Product Job Scheduling & RotasInvoicing & BACSHealth & SafetyStaff Mobile AppAnalytics & Reporting
Solutions Commercial CleaningDomestic CleaningEnd of TenancyFacilities ManagementWindow Cleaning
Free tools Cleaning Quote CalculatorPrice Per m² CalculatorUK VAT CalculatorProfit Margin CalculatorTrue Cost of a CleanerHoliday Entitlement CalculatorContract Tender CalculatorClient Lifetime Value All 14 free tools →
Learn How to start a cleaning businessHow to price cleaning jobsHow to win cleaning contractsHealth & safety for cleaners CleanFlo vs JobberCleanFlo vs ZenMaid
Browse all guides

Using the calendar

Schedule is the screen you will have open most of the day. It is the same set of jobs drawn four different ways, and the view you pick decides how much of the week you can see at once.

In the app: Schedule Open CleanFlo
On this page

Every job in CleanFlo lives on this one calendar. There is no separate diary for domestic rounds and contract work, and no second list for jobs nobody has been put on yet. The filters are the views: pick the span of time you want to look at and the grid redraws around it.

Open it from Schedule in the sidebar. What loads first depends on the screen you are on: agenda on a phone, week on a desktop. That is read once when the page opens, so switching away from it deliberately is not undone by the next render or by turning the phone sideways.

The four views

The view switcher sits in the top right of the page header, next to Add Job. Four tabs, always in the same order.

Agenda
The week as a list, one section per day. The default on a phone, and the only view that is readable on one. Days with nothing on them collapse to a single line.
Day
One column of hours. Use it when a day is busy enough that seven columns squeeze the job titles into nothing.
Week
Monday to Sunday across the top, hours down the side. The default on a desktop and the one most owners live in.
Month
Whole month, no times. Coloured dots per day rather than job titles, so it answers "how busy is the back half of August" rather than "what is on at two".
app.cleanflo.io/schedule
Search everything… ⌘K Schedule
Schedule
Select Templates 3 Send Schedule Add Job
10 – 16 Aug 2026 Today
AgendaDayWeekMonth
11 Jobs this week 5 Completed 1 In Progress 4 Upcoming 1 Cancelled
Mon 10 2 jobs
Tue 11 1 job
Wed 12 2 jobs
Thu 13 3 jobs
Fri 14 2 jobs
Sat 15 1 job
Sun 16
7am8am9am10am11am12pm1pm2pm3pm4pm5pm
Riverside Homes · Flat 4B Aisha Nowak Bay View Offices Joanne Reid
St Marks Medical Centre Marek Kowalski
Harbour Lettings · 12 Quay St Tomas Silva Bay View Offices Joanne Reid
Riverside Homes · Flat 4B Aisha Nowak St Marks Medical Centre Marek Kowalski Bay View Offices · 2nd floor Joanne Reid
Harbour Lettings · 12 Quay St Tomas Silva Deep clean · 14 Fore St No cleaner
Riverside Homes · Flat 9 Priya Nair
Scroll sideways for the rest of the week
The Schedule in week view. Page header and its four actions across the top, the week navigation under the title, the summary strip, then the grid with today highlighted and the red now line running through it.

Moving around the calendar

Under the page title there are four controls in a row: a left caret, the label for whatever you are looking at, a right caret, and a Today button. The carets move by whatever unit the current view uses, so the same arrow steps a day in Day view, a week in Week and Agenda, and a month in Month.

The label between them is written differently for each view.

ViewLabel readsExample
DayWeekday, day, full month, yearThursday 13 August 2026
Week and AgendaThe Monday and the Sunday of that week10 – 16 Aug 2026
MonthFull month and yearAugust 2026

A week that runs across a month boundary spells both months out, so the last week of August reads 31 Aug – 6 Sep 2026 rather than hiding the join. Today jumps straight back to the current date in whatever view you are in, which is the quickest way out of having clicked forward eleven weeks looking for something.

The summary strip

The strip under the view tabs counts whatever is currently loaded, which means it recounts every time you move the calendar. The first number is the total, and its label changes with the view: Jobs today in Day view, Jobs this week in Week and Agenda, Jobs this month in Month.

After it come four counts with a coloured dot each: Completed in green, In Progress in amber, Upcoming in sky blue and Cancelled in red. A fifth appears in teal only when there are client portal requests waiting: Requests, and clicking it opens the Client Requests panel rather than filtering anything.

Over on the right of the same strip is the legend: four dots labelled Scheduled, In Progress, Done and Cancelled. It is a key to the colours on the grid, not a filter. Nothing on the summary strip is clickable except Requests.

Reading the week grid

Down the left is a 56px time gutter set in Courier, one label per hour, written as 7am through 12pm and on to 7pm. Across the top, each day carries its short name, its date number, and a count reading 3 jobs. A day with nothing on it shows no count at all rather than a zero.

Today's column is tinted so it stands out from the rest of the week, and a thin red line with a dot on it sits at the current time and moves as the day goes on. Two jobs booked over each other split the column between them rather than one hiding the other.

Each job is a chip coloured by status, with a dot, the job title, and the cleaner's name underneath when the chip is tall enough to hold it. A chip with nobody on it says No cleaner next to a warning triangle instead.

Hours outside the working day

The grid does not draw all twenty-four hours by default. It measures the earliest start and the latest finish in the range you are looking at, adds an hour of headroom either side, and draws that window. A week of nine-to-fives is therefore about ten rows tall rather than twenty-four, and the day fits on screen without scrolling.

When there is more clock above or below the window, a button appears in its place: Show earlier hours above the grid, Show later hours below it. Either one opens the full day. Once you are looking at the full day a third button appears, Back to working hours, which puts the window back. The choice resets whenever you move to another week, so one week that needed a 5am start does not leave every following week showing empty small hours.

Show earlier hours Show later hours Back to working hours
The three reveal buttons. Only one or two are ever on screen at once: the first two appear when the grid has clipped part of the clock, the third only once the whole day is showing.

Booking straight off the grid

You do not have to open Add Job to book something. Click any empty slot in the week or day grid and the Add Job drawer opens with that date and that hour already filled in. It is the fastest way to book, and it is why the grid is worth keeping in front of you while you are on the phone to a client.

Right-clicking gives you a short menu. What is in it depends on what is under the pointer.

Add Job at 10:15am
Go to Today
Right-clicking empty grid. In week and day view the first item names the exact time you clicked, snapped to the nearest quarter hour; in month view it names the date instead.

On empty grid the menu offers Add Job at 10:15am, a divider, then Go to Today. The time is worked out from where in the hour row you clicked and snapped to fifteen minutes. In month view there are no hours to read, so the first item becomes Add Job on 14 Aug and the job defaults to 09:00.

View Details
Edit Job
Delete Job
Right-clicking a job chip. Delete Job is set in red and asks for confirmation before anything happens.

On a job chip the menu is View Details, Edit Job, a divider, then Delete Job in red. View Details opens the read-only Job Details drawer; Edit Job goes straight into the form. Left-clicking a chip does the same as View Details.

Month and agenda

Month view draws Mon to Sun across the top and a cell per day, greying out the days that belong to the months either side. Each cell carries its date number and, underneath, up to four coloured dots, one per job, in that job's status colour. A fifth job and beyond collapse into a small counter, so a day with seven jobs shows four dots and +3.

Clicking a cell drops you into Day view for that date. Right-clicking one gives you the same context menu as the grid, with Add Job on 14 Aug at the top.

Mon
Tue
Wed
Thu
Fri
Sat
Sun
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 +2
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
August 2026 in month view. Today is ringed, the surrounding month's days are greyed, and the 17th has more jobs than it has room for dots.

Agenda view drops the grid entirely and lists the week. Each day with work on it gets a heading of the day name, the date number, a count reading 3 jobs and a plus button that books onto that day. Under the heading, one row per job: the time as a range, the job title, the location underneath, then the cleaner's name and the status pill along the bottom. A job with nobody on it says Unassigned in that footer.

A day with nothing booked does not get a heading and a blank space. It gets one ruled line reading Nothing booked with a plus on the end, so a quiet week costs a few lines rather than several screens and the shape of the week is still legible.

THU 13 3 jobs
8:00am – 10:00am
Weekly communal clean
Riverside Homes · Flat 4B
Aisha Nowak Done
10:30am – 1:00pm
Surgery clean
St Marks Medical Centre
Marek Kowalski In Progress
2:00pm – 4:00pm
Office clean
Bay View Offices · 2nd floor
Joanne Reid Scheduled
FRI 14 2 jobs
9:00am – 11:00am
Changeover clean
Harbour Lettings · 12 Quay Street
Tomas Silva Scheduled
1:00pm – 4:00pm
Deep clean
14 Fore Street
Unassigned Scheduled
SAT 15 1 job
8:00am – 10:00am
Weekly communal clean
Riverside Homes · Flat 9
Priya Nair Scheduled
SUN 16
Nothing booked
Agenda view, the default on a phone. Thursday is the busy day; Sunday collapses to a single line you can still tap to book on.

What an empty calendar says

There are three different empty states and they are worth knowing apart, because they are telling you different things.

A whole grid with nothing on it puts a card over the middle of it. The title follows the view, so it reads Nothing booked today, Nothing booked this week or Nothing booked this month, and underneath: Click any time slot to book a job, or add one from here. Right-click the grid for more options. with an Add Job button.

Nothing booked this week Click any time slot to book a job, or add one from here. Right-click the grid for more options. Add Job
The whole-grid empty state, which is also the only place in the app that tells you the grid responds to a right-click.

Agenda view has its own, because there is no grid to click on: Nothing booked this week over Add a job, or use the arrows above to look at another week. and a button reading Add a job. Day view, when the day is empty but the grid is drawn, simply prints No jobs scheduled for this day down the column.

Common questions

Can I filter the calendar to one cleaner or one client?
Not on this screen. The Schedule shows every job for the range you are looking at. To see one cleaner's work in isolation, open their record under Staff; to see one site's history, open the location under Clients. If you want a cleaner to have their own list, use Send Schedule to email each of them their next fortnight.
Why does the grid start at 7am and not midnight?
It measures the jobs in the range and windows itself to them, plus an hour either side. Nothing is hidden: Show earlier hours and Show later hours open the full twenty-four, and Back to working hours puts it back. The window resets when you move to another week.
Can I drag a job to a different day or time?
No. Jobs are moved by opening them and changing the date or start time, either from Edit Job in the right-click menu or from the Job Details drawer. Dragging would change a booking with no confirmation step, and a cleaner has usually already been told about it.
What are the coloured dots in month view?
One dot per job, in that job's status colour: sky for Scheduled, amber for In Progress, green for Done, red for Cancelled. A cell shows at most four, then a counter such as +3 for the rest. Click the cell to drop into Day view and see them properly.