Window Cleaning Price Increase Letter: Text and Leaflet Versions With AI

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Window Cleaning Price Increase Letter: Text and Leaflet Versions With AI.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Window Cleaning Price Increase Letter: Text and Leaflet Versions With AI.

Give at least four weeks' notice and one more clean at the old price, put the new price and start date in the first two lines, add one honest reason, and say thank you. ChatGPT or Claude can draft the letter, a short text and a leaflet in minutes; you decide the figures, the date and who gets which version.

Four weeks is a working minimum, not a rule. Your written terms, a direct-debit or card-on-file arrangement, or local consumer rules can require longer, so check those before you fix the date. And a single letter for everyone, which is where most templates stop, is not enough for a round of 300 homes: regulars should hear it from you first, occasional customers will only ever see a text, shops are on different terms, and someone will write back "why?".

Follow me on Instagram@sagnikteaches

Fix the new prices before you open ChatGPT

The letter is the last job, not the first. Every sentence the AI writes depends on figures you give it, so settle them on paper (or in a spreadsheet) before you type a prompt.

Connect on LinkedInSagnik Bhattacharya

Here is a round to work from, with invented figures: 312 homes on four-weekly cleans, in three price bands. The owner wants roughly 10 per cent more, rounded to whole dollars so the new prices are easy to say out loud and easy to pay in cash.

Subscribe on YouTube@sagnikteaches
BandHomesOld priceNew priceRiseExtra per four-week cycle
Small (flats, terraces)100$15$1713.3%$200
Typical (semis)150$20$2210.0%$300
Large (detached)62$30$3310.0%$186
Whole round312$6,360 a cycle$7,046 a cycle10.8%$686

Over 13 cycles a year the round moves from $82,680 to $91,598, which is $8,918 more if nobody leaves. Nobody ever quite achieves that, so the useful number is the break-even: the share of customers you can lose before the round earns less than it does today. Here it is 9.7 per cent, about 30 of the 312 homes. Treat that as a ceiling, not a target. If your costs are mostly fixed (the van, the insurance, your own time), a lost customer takes most of their price straight off your income.

The small band shows why rounding needs a look. Going from $15 to $17 is a 13.3 per cent rise, bigger than the rest and the easiest to resent. My rule of thumb is to keep any one customer's rise near 10 to 15 per cent in a single step; if the small band needs more, take it to $16 now and the rest next year. For the wider method, including how to test a rise against your own sales history, see finding the break-even churn point, and for the general announcement routine see planning and announcing a price increase.

Use the AI as a checker here, not a calculator. Chat assistants can slip on multi-step arithmetic, so ask for the working and compare it with your own figures.

I'm a window cleaner with 312 homes on four-weekly rounds.
Bands: 100 homes at $15 going to $17; 150 at $20 going to $22; 62 at $30 going to $33.
Show your working step by step and tell me:
1. Revenue per four-week cycle before and after.
2. The overall percentage rise.
3. The share of customers I could lose before revenue falls below today's.
Do not round until the last step.
The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Tiered letters: who hears what, and when

One letter to 312 homes treats a customer of six years the same as someone who had two cleans last spring. Splitting the list into three or four groups takes ten minutes and changes the tone of every message that follows. Give the AI the shape of your list, not the list itself: counts and a description of each group are enough, and your customers' names and numbers stay in your own sheet.

I'm a window cleaner raising prices by about 10% for cleans from 28 April.
My 312 home customers: 154 have been with me 3+ years and always pay on time;
104 joined in the last 3 years and are regular; 54 are irregular (they skip or rebook ad hoc).
I also have 22 shops and offices on separate terms (not in the 312).
Suggest a letter plan: for each group, which channel (letter, leaflet, text), what to say
differently, and one thing to avoid. Keep it to a table. Do not invent customer data.

A typical (illustrative) answer comes back like this, and it is worth editing rather than accepting.

GroupHomesChannelWhat changes in the wording
Regulars, 3+ years154Letter by hand, then textOpens with thanks and the years together; offers one more clean at the old price
Newer regulars104Letter or leaflet, then textStandard letter; no loyalty line
Irregular54Text plus leafletGives the new price per visit and the date it starts
Shops and offices22Separate letterRefers to the agreed terms and review date

Two edits matter. First, the AI will often suggest a loyalty discount, and that is a pricing decision, not a drafting one. If you want a goodwill gesture, put a number on it: holding the old price for one extra clean for the 154 long-standing regulars costs about $340 once (the average rise is $2.20 a home), which is cheap insurance against your best customers leaving. Second, shops and offices usually have their own terms, so they need a separate letter that refers to them. Link the letter to whatever you signed, and do not assume the home-customer notice period applies.

The notice wording: seven things the letter must say

A price-rise letter has one job: nobody should be surprised at the next payment. These seven items do it, in roughly this order.

  1. The new price and the start date, in the first two lines. Customers who read only that far still know everything that affects them.
  2. The old price and how many cleans stay at it. "Your next two cleans stay at $20" is a promise they can check.
  3. One reason, in one sentence. Pick a cost you can stand behind, such as fuel, insurance or supplies. A list of five reasons reads like an apology.
  4. What they need to do. For most customers the answer is nothing; say so.
  5. How to pay, if that is changing. If it is not, skip it.
  6. A way to ask questions that you will actually answer, with a name and number.
  7. A specific thank-you ("six years of Friday mornings"), not a generic one.

Here is a typical AI first draft for the opening, followed by the fix. Notice what is missing from the draft: the number.

Illustrative AI first draft: We hope this letter finds you well. Due to rising costs across the industry, we regret to inform you that we will be adjusting our pricing in the coming months. We value your continued custom and appreciate your understanding.

After editing: Dear [first name], for cleans from 28 April the price will be $22 instead of $20. Your next two cleans stay at $20. Fuel and insurance have both gone up this year, and this is the first change in two years.

The edit swaps a vague "adjusting our pricing" for the figures, removes the pleasantry and puts the dates where a skim reader will find them. "First change in two years" only goes in if it is true, so check your own records before you let the AI write it. The same goes for any claim about your costs: the AI cannot know them.

The finished letter for a long-standing regular

Put the seven items together and the whole letter fits on half a page. This is the version for the 154 regulars, with the extra clean at the old price. Fill in the years and the day from your sheet, or drop that line: a wrong number of years is worse than none.

Dear [first name],

For cleans from 28 April, your window clean will be $22 instead of $20. Your next two cleans, on 3 March and 31 March, stay at $20.

Fuel and insurance have both gone up this year, and this is the first change since [month and year]. I have kept it as small as I can.

There is nothing you need to do: payment works exactly as it does now. If you would like to talk it over, ring or text me on [number].

Thank you for six years of Friday mornings. It is a pleasure to look after your windows.

[Your name], [Business]

A separate letter for shops and offices

Commercial customers usually have terms that say how and when prices can change, so the letter has to follow those terms rather than the home-customer routine. Find the review date or notice clause in each agreement, then send something short and formal that cites it.

Illustrative: Dear [first name], under clause [number] of our agreement dated [date], prices are reviewed each [month]. From [date], the monthly charge for [premises] will be $[new] instead of $[old], a change of [x] per cent. This reflects increases in [one real cost]. Your service days, access arrangements and invoice dates stay the same. If you would like to discuss the review before it takes effect, please contact me by [date] on [number].

If an agreement has no price-review clause, do not rely on a letter alone; get advice on how to vary it. And give a date by which they can respond, so a query does not drift into the next invoice.

Timing, terms and local rules

Lay the dates out as a timeline before you write them in. On a four-weekly street: the letter goes in with the 3 February clean, the cleans on 3 March and 31 March stay at the old price, and the new price starts with the clean on 28 April. That is more than four weeks, and every customer has two cleans at the old price after reading it.

Check three things before you fix that date. Your own terms: if you gave customers written terms or a signed agreement, find the clause on price changes and follow it. Payment method: if customers pay by direct debit or a card on file, your payment provider has its own rules about warning people before the amount changes, and they may be longer than yours. Local consumer rules: they differ from place to place, so if you are unsure, ask a trade association or a local adviser. This tutorial cannot tell you what applies where you work.

The text version: one segment, no curly quotes

A text should point to the letter, not replace it. It reaches the customer who never opens leaflets, and it fits in a pocket. Keep it to the price change: no offers, no sales pitch.

Length matters more than you would expect. A plain text message holds 160 characters; anything longer is split into segments of 153, and sending services bill per segment. One smart (curly) apostrophe, or an emoji, switches the whole message to Unicode, where a segment holds only 70 characters, or 67 once the message is split. Twilio's documentation on UCS-2 encoding explains the mechanism and notes that writing editors can add curly quotes automatically. Pasted AI text can carry them too.

Text A (141 characters with the placeholders, one segment):
[Business]: from 28 April your window clean is $22 (now $20). Two cleans at $20 first. A letter is in your door today. Reply STOP to opt out.

Text B (267 characters, two segments):
Hi [first name], it's [your name] from [Business]. From 28 April your four-weekly window clean goes from $20 to $22. Your next two cleans stay at $20. Nothing to do on your side, payment is unchanged. Any questions, call or text me on [number]. Reply STOP to opt out.

Count the characters after you replace the placeholders; real names change the total. Text B goes from two segments to four if "it's" carries a curly apostrophe, so it costs twice as much and arrives in more pieces. A prompt that prevents this:

Write three versions of a text message telling a window-cleaning customer the price goes from $20 to $22 for cleans from 28 April.
Maximum 160 characters each. Plain keyboard characters only: straight apostrophes, no emoji, no long dashes.
Include the business name placeholder [Business] and "Reply STOP to opt out." Tone: friendly, brief.

Check the output by pasting it into a character counter and scanning for curly marks. If the service you use offers an option that swaps curly quotes for plain ones, switch it on, but do not rely on it.

A typical first draft opens with a greeting and an emoji, says "we're updating our prices" with a curly apostrophe, gives the new price without the old one, and ends with an upsell for gutter cleaning. Fix all four: lead with the business name, give both prices, drop the emoji and the curly apostrophe, and cut the upsell. The corrected text should read like Text A above.

Consent and the opt-out line

Only text the number a customer gave you for their window cleaning, and keep the message to the job. Services that send texts for you set their own conditions. Twilio's messaging policy, for example, expects consent from the recipient even for informational messages, says every message should identify the sender, and wants the first message to include an opt-out instruction such as "Reply STOP". If someone replies STOP, remove them from texts straight away; they still get the letter. Rules on texting differ by place, so if you plan to send anything beyond the price change, ask an adviser first.

The leaflet: one side, a price table and a tick box

A leaflet through the door suits irregular customers, anyone with no number on file, and people who are never in. Keep it to one side. The structure that works is a headline with the date, a small old-versus-new table, one sentence of reason, how to reach you, and a thank-you.

Write the text for a half-page leaflet from a window cleaner to home customers.
Facts: new prices for cleans from 28 April; small homes $15 to $17, typical $20 to $22, large $30 to $33.
Next two cleans stay at the old price. Reason: fuel and insurance costs. Contact: [name], [number].
Maximum 90 words. Headline first. Warm and plain, no jargon, no exclamation marks.
Put a tick-box next to each price band so I can tick the right one by hand.

Illustrative output, lightly edited: A change to your window cleaning price from 28 April. Fuel and insurance have gone up, so for cleans from 28 April prices will be: small homes $17 (now $15), typical homes $22 (now $20), large homes $33 (now $30). Your next two cleans stay at the old price. Nothing for you to do. Your price band is ticked below. Questions? Ring or text [name] on [number]. Thank you for having me on your street.

The tick-box is the practical detail. Print one design, 300 copies, and tick the band by hand while you walk the round. A ticked box and a handwritten first name take five seconds per house and tell the customer this leaflet is for them. If you also win new customers by leaflet, the same print run and delivery routine is covered in getting window cleaning customers with leaflets and local search.

Keep a delivery log as you go: the date and the street, written in your sheet at the end of each round day. A customer who says the leaflet never arrived then gets a straight answer, and if a house was missed you can hand it over at the next clean and start that customer's notice from that day.

Replies to the awkward questions

Expect a trickle of replies: a few questions, one or two complaints, and the odd customer who just stops answering the door. Drafting replies in advance is where AI saves the most time, but only after you have decided your exceptions. Write the rule down first, for example "I hold the old price for one extra clean if someone tells me they are on a fixed income, and no longer", then apply it to everyone the same way.

What they sayA short reply that worksWhat not to do
"Why has it gone up?""Fuel and insurance have both risen, and this is the first change in two years. The new price is $22 from 28 April."Do not list five reasons or apologise twice
"I'll find someone cheaper.""Fair enough, and thank you for the years. If you change your mind the door is open at the new price."Do not cut the price on the doorstep
"Can I stay on the old price?""I can hold it for one extra clean. After that it is $22 for everyone on the street."Do not promise an open-ended exception
"That's more than 10%!" (small band)"You're right, it's $2 on $15. I've kept it to whole dollars so it's easy to pay."Do not argue with the percentage
No reply, then a skipped cleanA text a week later: "Missed you on Friday. Shall I put you down for the next one at $22?"Do not assume they have cancelled

To draft more of these, paste your rule, your price table and two real messages you have written to customers, so the AI matches your voice rather than a corporate one.

You are replying as me, a window cleaner, to a customer message. My exception rule: [paste it].
New prices: [paste table]. Here are two messages I've written before, for tone: [paste].
Customer message: "I've been with you for six years and I think this is a bit much. Can you do it for the old price?"
Write a reply of at most 60 words. Warm, direct, no apology. Do not offer anything outside my exception rule.

A typical first output offers a permanent discount "as a thank-you for your loyalty", which breaks the rule you just set. Delete it. The usual fixes are the same each time: remove invented offers, cut anything longer than the customer's own message, and make sure the new price and date are stated once, plainly. For more worked replies in a related trade, see replying to push-back on a salon price rise.

Send it, then watch three cleans

Run the rollout in a fixed order so nothing arrives out of sequence. Deliver the letters and leaflets on the round; send the text a day or two later; then answer replies the same day while the letter is fresh.

  • Day 0: letter or leaflet delivered. Tick each customer in your sheet.
  • Day 2: text to customers with numbers on file. Skip anyone who has already replied.
  • Each clean until the new price starts: mention it at the door only if they raise it.
  • First clean at the new price: mark each customer as paid at the new price, queried, or gone.

Keep one tracking sheet with five columns: customer, band, letter sent, reply (none, query, complaint, cancelled), and paid at the new price. After three cleans the numbers tell you whether the rise worked. In the illustration, suppose nine homes cancel (four small, four typical, one large) and seventeen ask a question. The nine cost $189 per cycle ($17 times four, plus $22 times four, plus $33), the round still brings in $497 more per cycle than before, and over a year that is $6,461 ahead. If cancellations had reached 30, the round would simply be treading water, and you would pause before any further rise.

When the sheet shows a pattern, act on it: if cancellations cluster in one band or one street, the problem is that band's price or your service there, not the letter. If you run the round from software, round software that can plan and rebook can send the texts and flag the cancellations for you. And if you also quote extras such as conservatories or gutters, update those prices in the same letter, using the method in pricing window cleaning per window.

A short routine to reuse next year

Save the three prompts, the table of replies and the dated timeline in one document called "price rise kit". Next time the job is: update the figures, ask the AI to check the sums, regenerate the letter, text and leaflet from the same facts, and read each aloud before it goes out. Done once and kept tidy, the whole routine takes an hour. The harder part is the decision to charge what the work is worth, and that is yours.

Questions window cleaners ask about a price rise

How much notice should a window cleaner give for a price rise?

There is no single right answer, because it depends on your terms and any local consumer rules. As a working rule, give at least four weeks and make sure every customer has one more clean at the old price after they read the letter. Fixed-term contracts and direct debits may need longer, so check them first.

Should I text or post the price increase?

Do both, in a set order. The letter or leaflet carries the full detail and goes first. A short text a day or two later points to it, which catches customers who never read the door leaflet. Text only the numbers customers gave you for their cleans, and keep the message to the price change.

Will customers leave if I put my prices up?

Some will, usually fewer than owners fear, but the only reliable answer is your own round. Work out how many cancellations the new prices can absorb before you earn less, then count cancellations over the next three cleans. A rise of about 10 per cent breaks even when roughly 9 per cent of customers leave, about one in eleven.

Can ChatGPT write the letter so it doesn't sound robotic?

Yes, if you give it your figures, your dates and two or three short messages you have written to customers before, and ask it to match that voice. Then cut every stock phrase it adds, such as 'we regret to inform you', and read the letter aloud. If you wouldn't say a sentence to a customer on the doorstep, delete it.

Further reads

Sources: Twilio's documentation on UCS-2 encoding and message segments and its messaging policy (checked 1 November 2026). All round sizes, prices and cancellation figures are illustrative.

Want your price rise planned properly?

On a 1:1 call we'll look at your round, decide which customers get which version, and set up the letter, text and leaflet drafts so the next price change takes an hour, not a weekend.

Book a 1:1 call with me