Start your free 14-day trial Open the demo account Search the whole site
Product DomesticCommercialEnd of tenancyHoliday letsAirbnbWindowsCarpets and upholsteryOne-off and specialistFacilities managementCleaner appRAMSYour websiteInvoicing Everything CleanFlo does → See it running →
Compare Cleaning software comparedCleanFlo vs JobberCleanFlo vs ZenMaidCleanFlo vs GetCleanFlowCleanFlo vs ConnecteamCleanFlo vs SweptCleanFlo vs BigChangevs a spreadsheet and WhatsAppCleanFlo vs SqueegeeCleanFlo vs ServiceM8CleanFlo vs Cleenie
Free tools Cleaning Quote CalculatorPrice Per m² CalculatorUK VAT CalculatorProfit Margin CalculatorTrue Cost of a CleanerHoliday Entitlement CalculatorPer-Seat Cost CalculatorContract Tender Calculator All 17 free tools → 16 printable templates →

How to edit or remove a client

Opening a client gives you everything about that account on one page: who they are, how many sites they have, what those sites are worth, who owns the relationship, and a rail of notes, follow-ups and extra contacts alongside it.

In the app: Clients 9 min read Last updated
On this page
  1. What the client page shows
  2. Locations, Activity, Invoices, Complaints and Messages
  3. Notes, attachments and the Activity timeline
  4. Follow-ups
  5. Client health
  6. Extra contacts
  7. Edit a client's details
  8. Selecting several at once
  9. Deleting, and what it takes with it
  10. When the record is not there

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

Open a client from Clients and you land on their record page. The header says who they are and how to reach them; the money and the sites sit underneath.

app.cleanflo.io/clients
Clients Search everything… ⌘K New
Quay Street Studios

Active · Healthy · Owen Trelease · owen@example.com

Send portal link Waste pack Add location
Invoiced
£6,240
Paid this year
£5,380
Balance
£860
Avg days to pay
18
LocationsActivityInvoicesComplaints
Quay Street Studios, 2nd floor Office Clean
Quay Street Studios, ground floor Retail Awaiting clean
  1. Who they are: name, status and health badges, contact name, email and phone.
  2. Add location, the portal and the waste pack are on the header. Delete client is in the menu beside them.
  3. Money: invoiced, paid this year, balance and average days to pay.
  4. Tabs: Locations, Activity, Invoices, Complaints, and Property issues if that module is on.
A client's record page.

Edit details opens the client's details for editing. On the right of the page sit the account owner, contract and payment terms, tags, extra contacts and follow-ups.

Locations, Activity, Invoices, Complaints and Messages

Up to five tabs run across the top of the main column. Locations is the default, and it is the table covered in the locations guide: Location, Type, Address, Details, Status and a Remove action. Activity is this client's own timeline and the place you log a follow-up or a note by hand. Invoices is every invoice raised for this client, whichever clean it came from. Complaints carries a red badge counting unresolved ones, and logs whether a complaint was raised by a staff member directly or came in through the client portal. Messages only appears once messaging is switched on for your company, or a conversation with this client already exists, and carries its own unread badge.

LocationsActivityInvoicesComplaints
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 Nothing invoiced yet and a New invoice button.

Notes, attachments and the Activity timeline

The Activity tab is a composer over a merged timeline: your own notes on this client, woven together with their complaints, invoices and completed cleans into one chronological record. Nothing here duplicates data held elsewhere, a complaint logged under the Complaints tab or an invoice raised for this client simply appears on the timeline too, so there is one place to see everything that has ever happened with an account, not several to check separately.

The composer at the top is a plain text box, placeholdered "Anything worth remembering about {client name}…", with one-tap presets above it, Logged a call and Sent an email, which drop a starting phrase into the box for you to finish rather than submitting anything on their own. A saved note can be edited or deleted afterwards, and carries a paperclip button to attach a file, a contract, a photo, anything worth keeping against the record. Pinned notes float to the top of the timeline regardless of when they were written.

Each entry on the timeline carries its own icon by type: a note, a complaint, an invoice, a completed clean, or a follow-up. With nothing logged yet, no notes, no complaints, no invoices and no clean history, the tab reads an empty state rather than several separate ones.

Follow-ups

A follow-up is a short note with a due date, created from an Add follow-up action inside the Activity composer. Anything still open shows as its own row at the top of the rail on the right of the client page, so a reminder to call back about the extra bin does not get lost in a scrolling timeline.

Each row in the rail carries the due date, the note itself, and a Done button that marks it complete without leaving the page. The panel only appears at all while at least one follow-up is open: there is nothing to see once you are caught up. An overdue, uncompleted follow-up also counts toward this client's health reading, covered next.

Client health

Beside the Active/Inactive status badge in the rail sits a second badge answering a different question: not whether the account is active, but whether it currently needs attention. It reads one of three ways.

Healthy
No open complaint, no overdue follow-up, and the client is booking at their usual rhythm.
Attention
One or more open complaints, or one or more overdue follow-ups. Either on its own is enough to move the badge.
At Risk
The client has gone quiet against their own booking pattern and nobody has dismissed the flag. This outranks the other two: an at-risk client reads At Risk even with no open complaint and nothing overdue.

It is a single reading built from signals CleanFlo already tracks elsewhere for their own purposes, the same at-risk flag the Clients list filters by, the same open-complaint count the Complaints tab badges, the same overdue-follow-up count the rail counts. There is no separate score to disagree with any of them, and the badge is never shown for an inactive client: an account you have already archived is a decision, not something that still needs flagging.

Extra contacts

The client's main contact, the one set under Edit Details, and the one every portal link and invoice email actually uses, stays exactly as it was. The Contacts panel in the rail is purely additive: a place for the other people at that account, a site manager who is not who you invoice, a separate billing contact, anyone else worth having a number for.

Each contact carries a name, an optional role label, an optional email and phone, and a Show first in this list toggle for whichever of them you reach for most. Add, edit and remove all happen inline in the panel itself, there is no separate drawer. With none added yet, the panel reads "No extra contacts yet, the client's main contact is set under Edit Details."

Edit a client's details

Edit details opens a drawer titled with the client's name, subtitled "Edit the details on this client's record". 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@example.com
Phone +44 7700 900000
Send overdue payment reminders
Tags Key HolderPet On SiteAlarm CodeParking AvailableAccess InstructionsFragile ItemsEco Products Only
Account Owner Unassigned

Optional. Leave blank for ad-hoc or domestic clients: nothing here is required.

Contract start date
Term (months) e.g. 12
Notice period (days) e.g. 30
Contract Value (£) 0.00
Enable client portal
Copy Link Regenerate token Email Portal Link to Client
CancelSave changes
The edit 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".
  • Send overdue payment reminders, on by default. Switch it off for a client you have agreed to chase differently, without touching the automatic reminders every other client still gets.
  • Tags, the same seven presets and the same "Add custom tag..." field as when you created the client.
  • Account Owner, a select of your owner and supervisor staff. Unset reads Unassigned everywhere it appears rather than a blank cell, on this client's own rail, and as a column on the Clients list, where a My Clients filter tab shows only the ones assigned to you.
  • A Contract section, folded until it holds a value: start date, term in months, notice period in days, and contract value. Entirely optional, a domestic or ad-hoc client needs none of it, but once a start date and a term are both set, the rail shows a renewal date worked out from them.
  • The Client Portal block shown above no longer lives in this drawer: the link, the PIN, the visibility level, clean requests and self-service permissions are all set from the record’s own Client portal sheet instead.

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.

One thing you might expect to find in this drawer is not in it: the Active and Inactive status is not a field here. 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. Extra contacts beyond the one above, and this client's own notes, live in the rail and the Activity tab respectively rather than in this drawer, see the next section.

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@example.co.uk Owen Trelease 9 sites Active
BV Bay View Offices facilities@example.co.uk Marta Quinn 2 sites Inactive
RH Riverside Homes jane@example.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. Press Client portal on the Client Portal row, 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 in the rail's identity block 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 cleans booked, invoices raised and a working portal.
My client shows At Risk but I know everything is fine. What do I do?
Dismiss the flag from the Clients list, the same place the Dashboard's at-risk row and this client's health badge both read from. A dismissal is not permanent, the moment a new clean is booked for them with a later date, it stops suppressing the flag on its own.
What is the difference between Account Owner and the client's own contacts?
Account Owner is internal: which member of your own team owns this relationship, set from a select of your owner and supervisor staff, and used for the My Clients filter on the Clients list. Contacts, in the rail, are the client's own people, a site manager, a billing contact, separate from the one primary contact your portal links and invoice emails actually use.
Can I set a follow-up without writing a note?
A follow-up is created from the Add follow-up action inside the Activity tab's composer, so writing something is part of creating one. Once it exists it shows as its own row in the rail with a due date and a one-tap Done button, separate from the note timeline underneath it.
What’s next How to give clients portal access Give a client a link and a PIN and they can see their own cleans without ringing you. Three visibility levels decide how much, and they can ask for a clean through it if you let them.

Did this answer your question?