The bottom line on recurring pricing
Most cleaning businesses leave money on the table on recurring pricing in three places. They under-discount the first visit, they over-discount the recurring rate, and they skip annual price increases because the conversation feels awkward. Fix those three and the recurring book becomes the most profitable line in the business.
I have run this in my own cleaning company for more than a decade. The pricing model we landed on is boring, which is the point: a flat per-visit rate, a 7 percent recurring discount applied at visit 2 (not visit 1), an annual 4 percent increase with 75 days notice. Boring beats clever on recurring pricing every time, because boring is the only pricing that survives 14 months of the customer reading the invoice every two weeks.
The 4 pricing models cleaning businesses use
Four pricing models cover roughly 100 percent of residential cleaning. Each one has a right use case and several wrong use cases. Pick the one that matches the work, not the one that sounds most defensible.
Flat-rate per visit
Pros: Predictable for the customer, easy to communicate, easy to dispatch. The default choice for residential recurring cleaning.
Cons: Requires accurate first-visit estimation. A bad estimate locks in a margin loss for the life of the contract.
Best for: Standard 1 to 5 bedroom residential recurring cleaning.
Per-square-foot
Pros: Scales with home size, defensible math, easy to publish on the website.
Cons: Customers do not know their square footage; the conversation slows down. Penalizes well-kept large homes; rewards messy small homes.
Best for: Larger residential homes (3,000 plus square feet) and small commercial accounts.
Per-hour
Pros: Simple to explain, no estimation risk, transparent.
Cons: Penalizes crew efficiency: the better your crew gets, the less you earn per visit. Creates an adversarial dynamic on quality vs speed.
Best for: Deep cleans, one-time jobs, and unusual scopes where the work is genuinely uncertain.
Custom quote per home
Pros: Captures every nuance of the home; allows premium pricing on complex jobs.
Cons: Does not scale. Each quote takes an hour of office time; customers wait days; conversion drops.
Best for: Estate cleaning, post-construction, post-event, biohazard, and high-end commercial accounts.
Per-visit vs per-square-foot vs per-hour vs flat-rate
The four-model menu collapses for most residential recurring cleaning into the simple choice between flat-rate per visit and per-hour. Per-square-foot is useful for the published-rate calculator on the website; custom-quote is reserved for unusual jobs.
Per-hour pricing has a hidden cost most owners do not see until year two. If your crew gets 15 percent faster (which a good crew does inside the first six months of working together) and you are charging per hour, you have just given the customer a 15 percent price cut and your crew a 15 percent income cut at the same time. Flat-rate captures the efficiency win for the business and the crew, which is exactly where it should go.
Per-square-foot pricing reads better on a website than it works in practice. Customers do not know their square footage; the booking form has to walk them through measurement; conversion drops 9 percentage points compared to a flat-rate published range. Use square-footage internally to estimate the flat rate, but quote the flat rate to the customer.
How to discount recurring vs one-time (5 to 10 percent typical)
The recurring discount is one of the most over-thought parts of pricing. The right answer is almost always between 5 and 10 percent off the one-time rate. The reasoning:
- Below 5 percent. The customer does not feel a discount and the recurring offer does not differentiate from a one-time job. Conversion to recurring drops.
- 5 to 10 percent. The customer feels a clear deal; the business absorbs the margin loss against the predictability of recurring revenue. Sweet spot.
- Above 10 percent. The math stops working for the business. A 15 percent recurring discount across 26 visits per year is a meaningful margin loss that the predictability of recurring does not fully offset.
We apply our 7 percent discount at visit 2, not visit 1. Visit 1 of a new recurring contract is a deep clean priced at the one-time rate (it takes longer; the home needs catch-up work; the crew gets paid fairly). Visit 2 starts the recurring rhythm and the discount applies. Customers understand this when it is explained up front; it removes the ambiguity that sinks most pricing conversations.
When to raise prices on existing recurring customers
Once per year. Always. Even when the increase is small.
The single biggest mistake I see cleaning business owners make is skipping the annual price increase because the conversation feels awkward. Skipping the conversation for two or three years in a row means the eventual increase has to be 12 to 18 percent, which actually does spook the customer. A predictable 3 to 5 percent increase every year keeps margin ahead of inflation and the customer never feels surprised.
The trigger conditions for an out-of-cycle increase:
- Significant scope expansion. The home grew (renovation, addition, new pets, new family members) and the visit now takes longer. Raise the rate to match the new scope.
- Pay raise for the crew. Crew wage increases of 8 percent or more are a legitimate reason to pull the next annual increase forward.
- Material cost spike. Supplies cost shocks of 15 percent or more (like a national wholesale shortage) justify a mid-cycle micro-adjustment of 2 to 3 percent.
Communicating a price increase without losing the customer
The script that works in my own business is straightforward and honest. There is no clever marketing here.
The format:
- Written notice, 60 to 90 days out. Email is fine; a short letter feels more serious and lands better. Both work. Do not call to surprise the customer.
- Lead with the work, not the rate. One paragraph on what the team has been doing well, what investments the business has made (training, supplies, equipment) to keep quality high.
- State the new rate plainly, with the effective date. No qualifiers, no apologizing. The new rate is fair; treat it as fair.
- Offer an open door. "If the new rate does not work for you, please reach out and we will discuss." Most customers do not. The ones who do usually accept a slightly modified rate or a frequency change.
- Do not negotiate against yourself. A customer asking for a smaller increase is a customer who is staying. Hold the rate firm; they almost always agree.
Across roughly 800 price-increase notices we have sent over the years, the typical response is 92 percent silent acceptance, 6 percent acceptance after a brief conversation, and 2 percent cancellation. Those 2 percent were customers near the end of their natural lifetime anyway. The math overwhelmingly favors raising prices on schedule.
The pricing-calculator approach
A pricing calculator on the website is the single best lead-qualifier I have ever added to my business. Three to five inputs (bedrooms, bathrooms, square-footage range, recurring frequency, pets) produce a price range. The customer sees the range, decides if it fits their budget, and self-selects out before they reach a human.
We measured a 38 percent reduction in unqualified booking inquiries inside the first quarter of running a calculator, and a 22 percent lift in inquiry-to-booking conversion. The calculator is not a closing tool; it is a qualifying tool. By the time a customer clicks through to the booking form, they already know what the visit will cost.
The trick is to publish a range, not a fixed number. A range of "150 to 195 dollars for a bi-weekly 3-bedroom" sets the expectation without committing the business to a price before the home assessment.
Frequently asked questions
- Flat-rate per-visit pricing wins for most residential recurring cleaning. The customer knows exactly what they pay, the crew knows exactly what they earn, and the dispatch system can route around a predictable visit length. Per-hour pricing penalizes crew efficiency; per-square-foot is hard to communicate; custom-quote pricing is impossible to scale.
