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

Staff status and activity

Clicking a cleaner opens their own page: what they have done, how much of it they finished, where they spend their time and when they are available. It is the record you reach for when somebody asks you a question about one person.

In the app: Staff Open CleanFlo
On this page

Get there from the Team Directory table by clicking the row or the name. The breadcrumb runs Staff then their full name, and the sub-line under the title is their job title, or "Cleaner" when they have not got one. There is one action button in the header, a danger Delete: everything else on this page is for reading.

The top of the page

The hero card carries a rounded-square avatar in their own colour, their name, then meta chips for the job title, the email address as a mailto link, the phone number and Joined 14 Aug 2026. On the right sits the presence pill.

app.cleanflo.io/staff/aisha-nowak
Search everything… ⌘K Staff
Aisha Nowak

Cleaning Pro · aisha@brennanclean.co.uk · +44 7700 900118 · Joined 3 Feb 2026

Delete
184 Total Jobs 171 Completed 93% Completion £14,820 Revenue 88% On Time
OverviewJob HistoryTop LocationsAvailability
7 Days30 Days90 DaysAll Time
Completed
38
of 41 jobs
In Progress
1
active now
Scheduled
2
upcoming
Cancelled
0
0% rate
Avg Duration
2h 10m
per job
Active Days
19
with completed jobs
Monthly Activity
Completed jobs by month
Mar 2026 Apr 2026 May 2026 Jun 2026 Jul 2026 Aug 2026
A cleaner page on the Overview tab. The five figures under the hero cover all time; the six tiles beneath them cover whichever reporting period the pills are set to.

The five figures across the strip are Total Jobs, Completed, Completion as a percentage, Revenue as money, and On Time as a percentage or a dash where there is nothing to work it out from. Completion is colour-coded: green from 80 per cent, amber from 50, red below that.

The presence pill

The pill on the right of the hero is one of four words, each with its own dot. Active and On Site pulse; the other two sit still.

ActiveOn SiteOn BreakOfflineInactive
The four presence states and the fifth thing the pill can say. Inactive is not a presence: it is a deactivated account, and it overrides whatever the presence value happens to be.
Active
Sky blue, pulsing. Signed in and available.
On Site
Green, pulsing. At a property.
On Break
Amber. Stopped, but not finished for the day.
Offline
Grey. The default a new account starts on, and where everybody sits when nothing says otherwise.
Inactive
Amber, and not really a presence at all. A deactivated member always reads Inactive whatever their presence value says, because they cannot sign in.

The presence value is held on the cleaner's own record rather than being guessed from their phone, so it is a slower signal than it looks. For "is this person working right now", two other things on the same screens are more reliable: the Last Active pill in the directory, which is when they last signed in, and a job sitting in In Progress, which means a cleaner has actually started it in the app.

The four tabs

Under the stats sit four tabs: Overview, Job History, Top Locations and Availability. Beside Overview, and again inside Top Locations, is a group of reporting period pills: 7 Days, 30 Days, 90 Days and All Time. It opens on 30 Days.

Overview

Six tiles for the chosen period: Completed with "of 41 jobs" underneath, In Progress with "active now", Scheduled with "upcoming", Cancelled with the cancellation rate, Avg Duration with "per job", and Active Days with "with completed jobs". Then three cards: Completion Rate with a meter and a four-part legend, Monthly Activity as a bar chart, and Recent Jobs with a View all that jumps to Job History.

Job History

Every job with their name on it. Filter pills across the top read All, Completed, Scheduled, In Progress and Cancelled. Note that the filter says Completed while the status pill on the row says Done: they are the same thing.

AllCompletedScheduledIn ProgressCancelled
JobDateLocationDurationPriceStatus
Changeover cleanRiverside Homes Thu 13 Aug09:00 Flat 4B 2h 06m £95.00 Done
Weekly office cleanBay View Offices Wed 12 Aug17:30 2nd floor 1h 48m £85.00 Done
Surgery deep cleanSt Marks Medical Centre Thu 13 Aug14:00 Main building 3h 00m £240.00 In Progress
Changeover cleanHarbour Lettings Sat 15 Aug10:00 Seaview Cottage 2h 00m £95.00 Scheduled
1–10 of 41 12345
The Job History table. Duration is the time actually clocked when both a start and a finish exist, and falls back to the planned duration in muted text when they do not.
DoneIn ProgressScheduledCancelled
The job status pills as they appear on this page. Scheduled and Cancelled are deliberately colourless here so that the two states you can act on are the ones that carry a hue.

The columns are Job with the client beneath it, Date with the time beneath it, Location, Duration, Price and Status, ten to a page. With nothing to show it reads No jobs found and "No jobs have been assigned to this team member yet.", or "Try a different filter." when a filter is on.

Top Locations

A ranked list of where this cleaner actually goes, with the period pills on it. Each row is a rank number, the site name, a meta line of "14 jobs · 13 completed" and a proportional bar. It is the quickest way to see that a cleaner has effectively become the person for one client, which is useful information right up until they book a holiday.

Availability

Two cards. Weekly Availability is a seven-cell grid labelled Mon to Sun, each cell reading a time range or Off. The cleaner sets this themselves in the phone app, so an empty grid reads "No availability set by this team member yet." rather than meaning they are never free.

MonTueWedThuFriSatSun
09:00 – 17:00 09:00 – 17:00 09:00 – 13:00 09:00 – 17:00 09:00 – 17:00 Off Off
Time Off Requests
22 Aug 2026 — 29 Aug 2026 Family holiday, booked in March
Approve Decline
Weekly availability and the time off requests underneath it. Approve and Decline are the only two buttons on this whole page that change anything.

The second card is Time Off Requests. Each row shows the date or the date range, the reason if they gave one, and either Approve and Decline while it is pending or a settled word reading Approved or Declined. Answering one puts a toast on screen reading Time off request updated, sends the cleaner a message in their app, and pushes a notification to their phone titled "Time off approved" or "Time off declined". With nothing outstanding the card reads "No time off requests."

The same numbers across the team

One cleaner at a time is the wrong tool for comparing people. There are two places that do it for the whole team at once.

The Performance tab on the Staff screen is the quick one. It replaces the directory with a per-cleaner table over a fixed window of the last 30 days, with the columns Staff Member, Completed, In Progress, Scheduled, Cancelled, Total Jobs and Completion Rate. Whoever has the most completions gets a filled trophy beside their name. Future bookings are outside the window, so a full diary next week does not flatter anybody today.

NameStatusTotal JobsCompletedHoursCompletion Rate
Aisha Nowak Active 41 38 84.5h 93%
Marek Kowalski Active 36 31 71.0h 86%
Joanne Reid Active 22 14 33.5h 64%
Tomas Silva Inactive 0 0 0.0h 0%
The Staff Performance Table on the Reports screen. Everybody appears, including people with no jobs, which is the difference between this and the Performance tab.

Reports goes further. Its Staff tab runs on the date range chosen at the top of that screen, one of Last 7 days, Last 30 days, Last 90 days or Last 12 months. Four figures across the top read Active Staff, Avg Jobs / Staff, Total Hours Logged and Top Performer, then a bar chart of Jobs per Team Member, then the Staff Performance Table with the columns Name, Status, Total Jobs, Completed, Hours and Completion Rate. That table has an Export button, which is the route to getting any of this into a spreadsheet.

Common questions

Why does a cleaner show as Offline when I know they are working?
Presence sits on the account rather than being read from the phone, and Offline is the value everybody starts on. To see who is out right now, look at the Schedule for jobs in progress, or at the Last Active pill in the Team Directory, which tells you when they last signed in.
Can I edit a cleaner's availability for them?
No. The weekly grid is set by the cleaner in their own app and shown to you here read-only. If it is wrong, ask them to change it. The only thing you can act on from this page is a time off request.
Does approving time off block the schedule?
No. It records the decision and notifies them. Jobs already booked in that week keep their name on them, and CleanFlo will let you assign more. Move or reassign the work yourself on the Schedule, where the cleaner picker shows availability while you choose.
What counts as On Time?
The figure compares when a job was actually started against when it was scheduled to start. A cleaner with no jobs carrying both timestamps shows a dash rather than a percentage, which is why a new starter reads as blank rather than as zero.
Why do the numbers at the top not match the tiles?
They cover different windows. The five figures in the strip are all time and never change. The six tiles, the charts and Top Locations all follow the reporting period pills, which start on 30 Days.