Browse all guides
Adding a cleaner
Adding a cleaner does two things at once: it creates their record on your team, and it creates the login they use on their phone. Which of the two routes you take decides who ever sees the password.
On this page
Everyone you add gets access to the cleaner app, not to the screens you are reading these guides about. They see their own jobs, their own hours and their own messages. There is no separate admin role to grant and nothing to configure: a cleaner is a cleaner.
The Staff screen
Open Staff in the sidebar. The page is titled Staff with the sub-line "Manage your cleaning team", and four figures across the header count your Total Staff, Active, Inactive and Invited.
Manage your cleaning team
| Name | Phone | Last Active | ||
|---|---|---|---|---|
| AN Aisha Nowak Cleaning Pro | aisha@brennanclean.co.uk | +44 7700 900118 | Just now | |
| MK Marek Kowalski Cleaner | marek@brennanclean.co.uk | +44 7700 900204 | 4h ago | |
| JR Joanne Reid Team Lead | joanne@brennanclean.co.uk | +44 7700 900371 | 2d ago | |
| TS Tomas Silva Cleaner | tomas@brennanclean.co.uk | — | Inactive |
The table has four columns and a row of actions. Name is the initials avatar, the name as a link and the job title underneath, defaulting to "Cleaner" when you have not set one. Email and Phone are as typed, with a dash where there is nothing. Last Active is the interesting one.
- Under an hour is green, under a day is sky blue, under three days is amber, and anything older goes grey.
- The wording steps down through Just now, minutes, hours, days and weeks, and after a month it becomes a short date such as 12 Aug.
- Somebody who has never signed in reads Never. That is the flag to look for after adding someone: it means the welcome email has not been acted on.
- A deactivated person shows plain text reading Inactive instead of a pill, and the whole row is washed back.
The footer holds the pager and an Export CSV button. It writes staff.csv with the columns Name, Job Title, Email, Phone, Status and Last Active, and confirms with a toast reading "Exported 7 staff member(s)". Before you have added anybody the table reads No staff yet with "Add your first team member to get started."
The two ways in
Press Add Staff Member and the first thing the sheet asks is a question, not a field. The legend reads How should they get in? and there are two cards. This choice changes what the rest of the form does, so it is worth understanding before you pick one out of habit.
Either way the four fields are the same: Full Name * placeholdered "e.g. Sarah Mills", Email Address * placeholdered "sarah@example.com", then a two-up row of Phone and Job Title, both marked optional, placeholdered "+44 7700 900000" and "e.g. Cleaning Pro". A blank job title becomes "Cleaner" everywhere it is shown.
The password shown once
In password mode a bordered block appears at the foot of the sheet with a padlock, headed "Shown once — copy or send it now". Inside it is a Login Password * field holding a generated password, with three icon buttons: show or hide it, copy it, and generate a different one. Underneath, the hint reads "Share these credentials with the staff member so they can log in."
The heading is literal. Once you press Create Account the password is gone from your side of the app: it exists in the cleaner's email and nowhere you can look it up. Copying it puts a toast on screen reading Password copied, and a copy that fails says "Could not copy — select the password and copy it manually."
The form stops you at the obvious mistakes with inline errors rather than a toast: "Full name is required.", "Email is required.", "That email address does not look valid." and, if you replace the generated password with something too short, "Password must be at least 8 characters." An email already registered comes back from the server as "Could not create the account — the email may already be registered."
Sending an invite instead
Choose Send an invite and the vault is replaced by a line of explanation: "We will email marek@brennanclean.co.uk a link that expires in 14 days. You will get a copy of the link to share by WhatsApp or text, and they show as pending on your team until they accept it." The submit button becomes Send Invite.
app.cleanflo.io/join?token=8f3c1d24b90a47e6
The panel is titled Invitation sent. It shows the full join link as a click-to-copy row, buttons for WhatsApp and Text, and, on a device that supports it, Share another way. The message it forwards is written for you: "Hi Marek, we use CleanFlo at Brennan Cleaning Ltd for your schedule and jobs." then "Set yourself up in about a minute" with the link, then "You choose your own password — nobody else sees it."
| Name | Status | ||
|---|---|---|---|
| Marek KowalskiCleaner | marek@brennanclean.co.uk | Pending | Resend |
| Priya NairCleaning Pro | priya@brennanclean.co.uk | Accepted | Share link |
| Dan WhitcombeCleaner | dan@brennanclean.co.uk | Expired | Resend |
| Kelly OsborneCleaner | kelly@brennanclean.co.uk | Revoked | — |
Row actions are Share link, Resend and, on pending rows only, Revoke. Revoking asks "Revoke the invite for Marek Kowalski?" and explains that the link stops working immediately, "including any copy of it they have already been sent". The buttons are Keep it and Revoke Invite. With nothing outstanding the tab reads No invitations and "Invite someone and they set their own password — nothing to read out over the phone."
What lands on their phone
A cleaner added with a password gets a welcome email from you, carrying their email address, the temporary password and your company name. They open the app in their phone browser, sign in with those two things, and they are in. There is nothing to install: they can add it to the home screen and it behaves like any other app.
A cleaner who was invited gets a link to app.cleanflo.io/join instead. That page greets them with "Joining Brennan Cleaning Ltd as Marek Kowalski", asks them to Choose your password with the reassurance "This is yours alone — nobody at Brennan Cleaning Ltd can see it.", and asks for at least eight characters. Pressing Set up my account signs them straight into the cleaner app.
The first time they open it they get a short overlay explaining that job locations are recorded at two moments, when a job is started and when it is completed, and offering to turn on notifications. They can decline both and the app still works. Whichever route you took, their record now appears on your Staff screen and they can be assigned to a job.
Common questions
How many cleaners can I add?
Do cleaners need their own email address?
A cleaner says they never got the email. What now?
Can I stop a cleaner seeing prices and client details?
What if I add somebody by mistake?
Still stuck?
Open Support in the app and send us a ticket, or email the team. A real person reads every one.