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

Editing and removing clients

Opening a client gives you everything about that account on one page: who they are, how many sites they have and what condition those sites are in, plus every invoice you have raised for them.

In the app: Clients Open CleanFlo
On this page

Get to a client by clicking any row in the Client Database table, or by typing their name into the search bar at the top of the app. The page that opens is the same one whichever route you take.

What the client page shows

The header carries a breadcrumb back to Clients, the client name as the page title, and the sub-line "Client profile & locations". To the right sit the four buttons that do everything on this page.

Send Portal Link
Emails the client their portal address. It only appears when the portal is switched on for that client, and it needs an email address on the record. A toast confirms with Portal link sent.
Edit Details
Opens the Edit Client drawer: name, contact, tags and the whole portal block.
Add Location
Opens the Add Location drawer. The same button appears on the Locations tab and in its empty state.
Delete Client
Removes the client and every location under them. Read the warning at the foot of this guide before pressing it.
app.cleanflo.io/clients/riverside-homes
Search everything… ⌘K Clients
Riverside Homes

Client profile & locations

Send Portal Link Edit Details Add Location Delete Client
Jane Lawson · jane@riverside.com · +44 7700 900000
Keys collected from the office, never posted back through the door.
Key HolderParking Available
3 Total Sites 1 Clean 1 Awaiting Clean 0 In Progress 1 Needs Inspection
LocationsInvoices
LocationTypeAddressDetailsStatus
Flat 4B Home 12 Quay Street, Falmouth 2 bed, 1 bath Clean Remove
Flat 9 Home 12 Quay Street, Falmouth 1 bed, top floor Awaiting Clean Remove
Communal stairwell Other 12 Quay Street, Falmouth Ground to third floor Needs Inspection Remove
A client page. The hero repeats the contact details as chips, the tags sit underneath them, and the five figures across the middle count the locations by cleaning status rather than counting jobs.

The hero card underneath the header is a summary you do not have to open anything to read: large initials in the client colour, then meta chips for the contact name, the email address as a mailto link and the phone number, then the tag pills, then the internal notes on their own line with an info icon. The status pill on the right reads Active or Inactive.

It is worth knowing what is not on this page, because people go looking. There is no activity feed and no note history, so a record of a phone call has to go in the internal notes on the record itself. There is no per-client revenue figure either: the money view of a client lives on the Clients tab in Reports, which separates what you have been paid from the value of the work booked. And there is no jobs tab here, because jobs belong to a location rather than to the account. To see what is booked, open the site.

Locations and Invoices

There are two tabs. Locations is the default, and it is the table covered in the locations guide: Location, Type, Address, Details, Status and a Remove action. Invoices is every invoice raised for this client, whichever job it came from.

LocationsInvoices
InvoiceIssuedDueAmountStatus
INV-2026-016 14 Aug 2026 28 Aug 2026 £95.00 Sent Open
INV-2026-014 14 Aug 2026 28 Aug 2026 £408.00 Open
INV-2026-009 17 Jul 2026 31 Jul 2026 £340.00 Overdue Open
INV-2026-017 14 Aug 2026 £210.00 Draft Open
1–4 of 4
The Invoices tab. Overdue is worked out live rather than stored, so an invoice sent and then left past its due date changes pill without anybody touching it. Open takes you to the Invoicing screen.
Invoice
The invoice number, in the ledger face. Sortable.
Issued
The issue date, as "14 Aug 2026". A missing date shows a dash.
Due
The due date, printed in red once it is in the past and the invoice is not paid.
Amount
The invoice total including VAT.
Status
A pill: Draft grey, Sent sky, Paid green, Overdue red, Cancelled muted. Overdue is not a status you set; it is a sent invoice past its due date.
Open
Takes you to the Invoicing screen. You cannot edit an invoice from here: this tab is a read-only ledger for the account.

A client you have never billed shows No invoices yet with "Invoices raised for Riverside Homes will appear here." and a Go to Invoicing button.

The Edit Client drawer

Edit Details opens a drawer titled Edit Client. The fields are slightly different from the ones you filled in when you created the record, which catches people out: the labels are shorter and the placeholders are generic rather than worked examples.

Edit Client
Client Name * Riverside Homes
Contact Name Jane Lawson
Email jane@riverside.com
Phone +44 7700 900000
Tags Key HolderPet On SiteAlarm CodeParking AvailableAccess InstructionsFragile ItemsEco Products Only
Enable Client Portal
Copy Link Regenerate Token Email Portal Link to Client
CancelSave Changes
The Edit Client drawer. Everything above the portal heading is the client record. Everything below it is covered in the portal guide, including the link, the PIN and the regenerate button.
  • Client Name *, placeholder "Business or personal name". The only required field, and the name that goes on the invoice.
  • Contact Name, placeholder "e.g. John Smith".
  • Email, placeholder "contact@example.com". This is where the portal link and any invoice email goes.
  • Phone, placeholder "+44 7700 900000".
  • Tags, the same seven presets and the same "Add custom tag..." field as when you created the client.
  • A Client Portal section with a globe icon, holding the toggle and everything it reveals.

Press Save Changes and a toast reads Client details updated. Nothing is saved until you do: closing the drawer with the X or with Cancel throws the edit away without asking.

Two things you might expect to find in this drawer are not in it. The Active and Inactive status is not a field here, and neither are the internal notes you wrote when you created the record. The notes still show on the hero card, so they are not lost, but the place to change them is not this drawer. Everything about locations is also elsewhere: the drawer edits the account, and the sites under it are managed from the Locations tab one row at a time.

Selecting several at once

The Client Database table has a checkbox column, plus a select-all box in the header labelled "Select all clients on this page". Ticking anything makes a ghost button appear in the page header reading Delete ({n}) with the count in it. It is the only bulk action on this screen: there is no bulk edit, no bulk tag and no bulk status change.

Clients & Locations

Manage relationships and service sites

Delete (2) Add Client
ClientContactSitesStatus
HL Harbour Lettings lettings@harbour.co.uk Owen Trelease 9 sites Active
BV Bay View Offices facilities@bayview.co.uk Marta Quinn 2 sites Inactive
RH Riverside Homes jane@riverside.com Jane Lawson 3 sites Active
Two rows ticked. The header button counts what you have selected, and select-all only covers the page you are on, not all 14 clients.

Deleting, and what it takes with it

There are two deletes and they ask different questions. From the client page, Delete Client asks 'Delete "Riverside Homes" and all their locations? This cannot be undone.' and the confirm button reads Delete Client. From the table, Delete ({n}) asks "Delete 2 clients? This cannot be undone." and the confirm button reads Delete All.

If you want toDo thisWhat happens to the invoices
Stop working for someone but keep the paperworkLeave the record in place and set it inactiveAll still there, on the Invoices tab
Remove one site but keep the clientUse Remove on that row of the Locations tableUntouched: invoices belong to the client, not the site
Get rid of a duplicate you created by mistakeDelete Client on the client pageGone with the client
Clear out several test records at onceTick them and use Delete ({n})Gone with the clients

When the record is not there

Following an old link, or opening a client somebody else deleted while you had the tab open, gives you a plain not-found page rather than an error. The client version reads We could not find this client with "It may have been deleted, or the link you followed is out of date." and a Back to clients button. The location version reads We could not find this location with "It may have been removed, or the link you followed is out of date." and Back to client.

We could not find this client It may have been deleted, or the link you followed is out of date. Back to clients
We could not find this location It may have been removed, or the link you followed is out of date. Back to client
The two not-found states. A genuine failure to load looks different: it says "Could not load your clients" and offers a retry, which means the record probably still exists.

The distinction is worth knowing. A not-found state means the row is gone. A red error state with a Try again button means CleanFlo could not reach the database, and the record is almost certainly fine.

Common questions

Can I merge two clients I created twice by mistake?
Not automatically. Move any locations you want to keep by adding them again under the client you are keeping, then delete the duplicate. Invoices cannot be moved between clients, so if both records have been invoiced, keep the one with the billing history and mark the other inactive rather than deleting it.
Does deleting a client delete their invoices?
The invoices are no longer reachable from a client that does not exist. Export what you need first: the Client Database footer has an Export CSV, and Reports has an invoice ledger export that covers the money side. For anything you are required to keep, export before you delete rather than after.
Why can I not see the Send Portal Link button?
It only appears when the client portal is switched on for that client. Open Edit Details, turn on Enable Client Portal, set a PIN and save. The button appears in the header on the next load.
Where do I change a client from Active to Inactive?
The status is on the client record and shows as a pill on the hero card and in the Status column of the table. It changes how the client is counted and filtered, and nothing else: an inactive client can still have jobs booked, invoices raised and a working portal.