
Text for Cleaning Services: 8 Texts and When to Send Each
A cleaning service needs about eight texts, and each one belongs to a moment in the clean: the reply to a quote request, the booking confirmation, a reminder before the visit, the "on my way" with an ETA, an access note when the client is out, the "all done" with photos, a review ask, and a rebooking nudge. The first six are about a job the client already asked for. The last two promote your business, so they get the most care: consent first, and a way out. The CASL section further down has my reading of where that line sits. Below is the wording for each, written so it still makes sense if the client never taps the link.
This is for the people doing the cleaning: a solo house cleaner with twenty recurring homes, a two-person crew doing move-outs between Collingwood and Wasaga Beach, a Blue Mountain chalet turnover crew, a small outfit with a few Thornbury office contracts. The templates are short on purpose. You'll send them from a driveway, with gloves in your other hand.
The eight texts, in the order a clean happens
| Moment | What the text does | Consent needed under CASL? |
|---|---|---|
| Someone asks for a price | Sends the quote they asked for | No (a requested quote) |
| They say yes | Confirms day, time and scope | No (confirms the deal) |
| Before the visit | Reminds them, asks about access | No (facilitates the deal) |
| You leave the last job | Gives an ETA | No |
| Client is out | Says you're in, and how you got in | No |
| You finish | Says what got done, with photos | No |
| The next day | Asks for a review | Treat it as yes |
| Weeks later | Offers another clean or a seasonal job | Yes |
Treat the CASL column as my judgment, not legal advice.

1. The reply to a quote request
What do you say when you offer your cleaning services? Say the price, say what it covers, and say what it doesn't. A vague quote ("starts at...") gets a vague client.
Hi [name], it's [your name] from [business]. For a [size] home, a standard clean is $[price]: kitchen, bathrooms, floors, dusting. Inside the oven and fridge is extra. I have [day] open. Want it?
If they found you through a missed call, reply the same day if you can. (I'd rather send this from the car at lunch than call back at night and get voicemail.)
No answer yet? Send one follow-up, then let it go:
Hi [name], still want the [day] slot? I can hold it until [time] tomorrow.
2. Booking confirmation
[Business]: You're booked for [day] at [time], [address]. [Crew name] will do the clean. Reply here if anything changes.
Put the address in. If you have two clients on the same street, the client will catch your mistake before you do.
3. The reminder, with the access question
A generic reminder confirms the time. A cleaning reminder also has to settle how you get in, because a locked door is a lost slot.
[Business]: Reminder, we clean tomorrow at [time]. Will you be home? If not, reply with how we get in (lockbox, garage, neighbour) and anything we should know about pets.
4. On my way
[Business]: [Name] is on the way, about [minutes] min out. Status and ETA: [link]
Send it when you actually leave the last job, not when you plan to. In my view a wrong ETA is worse than none. The client rearranges their afternoon around it.
5. The client-is-out text
This is the text that's specific to cleaning, and in my judgment it's the one a recurring client notices most. Someone is in their house while they're at work. Tell them you're in, and tell them how you got in.
[Business]: We're in. Used the lockbox, door is locked behind us. [Pet name] is fed and in the back room as you asked. We'll text when we leave.
One rule here: never ask a client to text you a door code or an alarm code. A text thread lives on a phone that can be lost, and it gets read by whoever borrows it. The federal guidance on texting clients asks businesses to think about whether personal information is in the message at all. Get codes once, in person or on your intake form, and keep them out of the thread. If nobody answers and you can't get in, the customer not home protocol for service calls covers what to send and what to charge.
6. All done, with photos
[Business]: All done at [address]. Kitchen, both bathrooms, floors, and the inside of the fridge as requested. Door locked, key back in the lockbox. Photos: [link]
List the rooms. A client who comes home at six to a clean house has no idea you did the baseboards unless you say so, and a photo of the stove top does more than any adjective.
If the client pays after the clean, the payment line belongs in the same text or straight after it, not in a separate reminder a week later:
[Business]: Total for today is $[amount]. E-transfer to [email] or pay here: [link]. Thanks!
7. The review ask
Thanks again, [name]. If the clean was what you hoped for, a Google review helps a small business like ours a lot: [review link]
Timing matters more than wording here. The post on when to ask for a Google review goes through the window in detail.
8. Rebooking or a seasonal offer
[Business]: Hi [name], we have spring cleaning spots open in [month]. Want your usual date? Reply STOP to opt out.
This one is marketing. It needs consent, your business name and a way out.
Will they even tap the link?
Often, no. The text has to work without it. The same federal page says it bluntly: "customers will likely hesitate to click on even the legitimate links in your texts." It suggests putting transaction details in the message itself so clients can refer back to it. That's why every template above says the useful part (the time, the rooms, the lockbox) in the text, and the link is extra. If the link is the only content, a careful client sees an unknown number sending an unknown URL. That's what a scam text looks like.
Two smaller things change how your text arrives:
- Length. I get it: a sparkle emoji makes a reminder feel friendlier. But SMS splits messages longer than 160 characters. Per Twilio's documentation, an emoji switches the message to UCS-2 encoding, which reduces the limit to 70 characters. A curly quote your phone slipped in does the same. Past 70, the message splits into two or more.
- Your name first. The client may not have your number saved. "[Business]:" at the start answers "who is this?" before they wonder.
Where CASL draws the line for a cleaning business
Section 6(6) of Canada's Anti-Spam Legislation lifts the consent requirement for a message that solely does one of a short list of things. In my judgment, two of them cover most of a cleaner's day: a message that "provides a quote or estimate" the person requested, and one that "facilitates, completes or confirms a commercial transaction" they already agreed to.
Note what the exemption lifts: paragraph (1)(a), the consent part, and nothing else. Paragraph (1)(b) still asks the message to comply with subsection (2). Subsection (2) says the message must identify the sender, give information to readily contact them, and set out an unsubscribe mechanism. My habit is to put the business name in every text and to honour a STOP reply on a confirmation the same way as on a promotion. The Act gives you no more than 10 business days to act on an unsubscribe. In practice, do it the same day.
The review ask is different. That one asks the client for a favour, so I handle it with more care. I treat it like marketing (only to real clients, name included, STOP honoured). For the consent side, express versus implied and how long implied consent lasts after a job, the full breakdown is in our post on CASL rules for text messages. If you're just starting out, add an opt-in checkbox, left blank by default, to the intake form you use from the first client.
Should you write these by hand or let software send them?
By hand works up to a point. With five recurring clients, texting from your personal phone is fine. Past that, the threads blur together, someone gets the wrong address in a confirmation, and you're typing ETAs at red lights. Where that line falls depends on how many cleans you fit in a day, so plan for it early. If you're still at the setup stage, the guide on how to start your own cleaning business in Ontario is where I'd begin.
FixyFlow doesn't reply to quote requests or missed calls for you, and it doesn't write texts 1 and 8. Those stay yours. What FixyFlow's cleaning service software does with the rest of the list:
- Texts 2, 4 and 6 go out when you move a job to its next stage. According to the FixyFlow help page on SMS, no SMS is sent when you first create the job, and the final stage sends only an email notification. If you want the "all done" by text, make it the second-to-last stage (with something like "Paid" after it). The automatic text is your business name, the new stage name and the tracking link. The room list, the lockbox note and the photos go in the stage's contextual message and on the tracking page, behind the link. That's the trade-off against the "works without the link" rule above, and I'd rather tell you than have you find out on the first job.
- Text 5 is a stage you name yourself ("We're in"), with a contextual message the client sees on the tracking page.
- Photos attach to the stage you take them in, and the tracking page groups them by stage. Add photos at both the first and the last stage and a Before & After comparison appears on its own.
- The payment line can live on the tracking page instead: add the invoice amount and your payment link, and the client sees a Pay Now button.
- Text 7 only goes to clients you ticked the marketing consent box for. That's the CASL line above, built in.
Clients can also reply from the tracking page ("can you do the inside of the fridge too?"), so the request sits on the job, not buried in your texts.
If you want to try it on next week's cleans, the free 14-day trial of the field service software needs no card. After the trial you drop to the Free plan, which covers 5 jobs and 20 SMS a month. The field service software pricing page lists the paid plans. If you're texting five clients from your own phone and nothing is slipping, keep doing that and copy the templates above.
— Lasse
Built FixyFlow in Collingwood