A house cleaning estimate should show the property facts used, what is and is not included, a price built from visible lines, optional extras, a valid-until date and how to accept. AI can turn home size and condition into that price if you supply the rate card and check its sums: here a three-bed, two-bath home costs $380 first time.
Pricing by home size is really pricing by time. Bedrooms and bathrooms set the base hours, the condition of the home changes them on the first visit, a deep-clean line adds scope, and a minimum visit protects short jobs. Blank templates are everywhere. A filled-in one, with the formula behind each line, shows where every dollar comes from. All the figures are illustrative: replace the rates and times with your own. Building the calculator itself in a chat assistant is covered in pricing house cleaning jobs with a ChatGPT calculator; the estimate the customer sees is a separate document with its own job to do.
The estimate, filled in, line by line
Start with the finished document, then work backwards. The header carries the business name, an estimate number, the date and a valid-until date 14 days later. Under it come the property facts the price rests on: three bedrooms, two bathrooms, about 1,800 square feet, one dog, last cleaned about three months ago (the customer's answer), and four photos received. Then the price lines:
| Line | Hours and rate | Amount |
|---|---|---|
| Standard clean: 3 bedrooms, 2 bathrooms, about 1,800 sq ft | 4.5 h at $42 | $189.00 |
| Condition adjustment: three months since the last clean (x1.5 on standard hours) | 2.25 h at $42 | $94.50 |
| Deep-clean line: baseboards, door frames, inside oven and fridge, tile grout, light fittings | 1.8 h at $42 | $75.60 |
| Pet hair, one dog | 0.5 h at $42 | $21.00 |
| First visit total | 9.05 h | $380.10, quoted as $380 |
| Then every two weeks (standard clean plus pet hair) | 5.0 h at $42 | $210 a visit |
| Optional: interior windows, up to 12, at $4 each | about 1.1 h | +$48 |
Beneath the table sit the parts customers skim and then rely on when there is a disagreement. A scope list says what each visit includes (all floors, kitchen surfaces and appliance exteriors, bathrooms, dusting, bins). An exclusions list says what it does not (inside cabinets, laundry, wall washing, anything above a safe reach). Terms follow in a few short lines, shown here as sample wording.
This estimate is valid until [date]. The price assumes the information above. If the home differs on arrival by more than one bedroom or bathroom, or the condition is clearly worse than described, we will call you before starting to agree a revised price or a reduced scope. A [$50] deposit holds your date; the rest is charged after the visit. Our cancellation policy is at [link]. To accept, reply YES or press Accept.
That is the whole document: property facts, scope, price lines, recurring price, options, validity, terms and acceptance. The cancellation policy sits behind a link rather than inside the estimate; how to word it, and the reminder texts that go with it, is in the house cleaning cancellation policy tutorial.

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 nowSet the price per cleaner-hour that every line hangs from
Every line in the estimate multiplies hours by one rate, so that rate has to be right before anything else. Build it from your costs, not from what a rival charges. The illustrative company pays cleaners $18 an hour and adds 15 per cent employer on-costs, which makes $20.70. Supplies add $1.50 an hour, travel and drive time $3.00, and a share of overheads (software, insurance, admin, advertising) $4.30. That is $29.50 of cost for every cleaner-hour sold.
| Per cleaner-hour | Amount |
|---|---|
| Wage plus 15% on-costs | $20.70 |
| Supplies and equipment | $1.50 |
| Travel and drive time | $3.00 |
| Overhead share | $4.30 |
| Cost | $29.50 |
| Price at a 30% margin: $29.50 divided by 0.70 | $42.14, used as $42 |
The margin is a share of the price, so the rate is cost divided by 0.70, not cost times 1.30. At $42 the true margin is 29.8 per cent, which is close enough. Thirty per cent is the illustration; set yours to cover the owner's pay and a cushion. If you also price office contracts, the same cost-plus-margin logic applies, with longer contracts and different time allowances.
Bedrooms and bathrooms: a time formula instead of a price list
A price list by size ("2 bed, $140") hides its own assumptions. A time formula shows them, and it adjusts when a customer's home is slightly unusual. The illustrative formula is:
- 1.5 hours as a base for the kitchen, living areas, hall and entry;
- plus 0.5 hour for each bedroom;
- plus 0.75 hour for each full bathroom, and 0.4 hour for each half bathroom;
- plus 0.5 hour for each full 500 square feet above 2,000;
- then hours multiplied by $42, rounded to the nearest $5, with a minimum visit of $120.
Those time allowances are examples, not facts about cleaning. They come from timing jobs: have the team log the real hours on ten standard cleans, then adjust the base and per-room figures until the formula reproduces them. The questions to ask before an AI-assisted cleaning quote covers what to ask the customer so the inputs are right. For six sizes, the formula gives:
| Home | Hours | Calculated | Quoted |
|---|---|---|---|
| 1 bed, 1 bath, 650 sq ft | 2.75 | $115.50 | $120 (the minimum applies) |
| 2 bed, 1 bath, 900 sq ft | 3.25 | $136.50 | $135 |
| 2 bed, 2 bath, 1,100 sq ft | 4.0 | $168.00 | $170 |
| 3 bed, 2 bath, 1,800 sq ft | 4.5 | $189.00 | $190 |
| 4 bed, 2.5 bath, 2,600 sq ft | 5.9 | $247.80 | $250 |
| 5 bed, 4 bath, 3,400 sq ft | 8.0 | $336.00 | $335 |
Two rows are worth a second look. The one-bedroom flat comes out at $115.50, which is below the $120 minimum, so the minimum applies; a clean that short still costs a drive and a set-up. In the 4 bed, 2.5 bath row, the 600 square feet over the 2,000 threshold add one full 500-square-foot step, half an hour, and the extra 100 square feet add nothing. The size rule is a safeguard for large homes, not the main driver.
Condition multiplier: one question, three photos, three levels
Two homes of the same size can differ by hours, and the difference is build-up: grease on the hob, limescale on the shower, weeks of pet hair. A condition multiplier prices that difference in the open. Keep it simple, three levels, applied to the first visit only, because after one proper clean the home is back to a maintained standard, provided regular visits continue.
| Level | Customer's answer to "when was it last cleaned?" | What photos show | Multiplier on standard hours |
|---|---|---|---|
| Maintained | Within the last two to three weeks | Surfaces clear, light marks only | 1.0 |
| Lived-in | One to two months ago | Normal build-up in kitchen and bathrooms | 1.2 |
| Neglected | Three months or more, or heavy grease, limescale or pet hair | Visible film or deposits on hob, tiles, floors | 1.5 |
For the three-bed, two-bath home with 4.5 standard hours, the first visit costs $189 maintained, $226.80 lived-in and $283.50 neglected, a difference of $94.50 between the best and worst case. Those figures should come from your timed jobs too: log the actual hours on the first visit to homes in each group and adjust the multiplier when the averages disagree.
Ask the customer for the date, not for a rating. People call a home "fairly clean" when they mean three months of dust, but a date is a fact. Then ask for three photos: the kitchen, the main bathroom and a floor. Treat the photos as evidence a person reviews, not as something an assistant should score. Customers photograph their best corner, and grease, limescale and pet hair rarely show up on a phone picture, so a model that grades condition from images will mostly confirm what the customer already said.
The deep-clean line: extra scope, priced separately
A deep clean is not a dirtier home; it is a larger job. The deep-clean line adds tasks that a standard visit skips: baseboards, door frames, inside the oven and fridge, tile grout, light fittings. In the model it adds 40 per cent of the standard hours, 1.8 hours on a 4.5-hour home, so $75.60 at $42. Keep it as its own line, because customers accept a deep-clean charge more readily when they can see what it buys, and because it lets you offer the standard clean alone for a lower price.
The condition multiplier and the deep-clean line answer different questions. The multiplier asks how much longer the standard tasks take because of build-up; the deep-clean line asks what extra tasks are being done. Applying the multiplier to the deep-clean hours as well counts the build-up twice, and it is an easy arithmetic error to make in hand-built and AI-built estimates alike. The next sections show it, and how to catch it.
An empty home for a move-out clean follows the same logic with a different mix. For the same 3-bed, 2-bath home, take the 4.5 standard hours, add the 1.8-hour deep-clean line and 1.0 hour for inside cabinets and drawers: 7.3 hours, $306.60, quoted as $305. There is no condition multiplier, because an empty home is a known state, and no pet line. Move-out jobs have their own habits; AI for cleaning services: end-of-tenancy quotes and photo checklists goes into them.
Check the margin before you send: the regular-customer discount trap
An estimate is only good if the job still earns what you planned. For the main example, the first visit uses 9.05 cleaner-hours, which two cleaners will cover in about 4.5 hours each. At $29.50 of cost per hour, the visit costs $266.98 and sells for $380.10, a margin of 29.8 per cent. The regular visit of 5.0 hours sells for $210 against $147.50 of cost, the same 29.8 per cent. So far so good.
Now the usual request: "Can I have a discount if I book every two weeks?" Work it out before saying yes. A 5 per cent discount makes the visit $199.50 and cuts the margin to 26.1 per cent. A 10 per cent discount makes it $189 and cuts the margin to 22.0 per cent, well under the 30 per cent target. Regulars do cost less to serve, since there is no first-visit build-up, fewer surprises and lower marketing cost, so a small discount can be right. But decide it from the numbers: perhaps 5 per cent after the sixth visit, or a waived deep-clean line on the second year's anniversary clean, in place of a standing reduction on the visit price.
Let AI turn intake answers into the estimate
Once the rate card is fixed, an assistant can apply it the same way every time, which is where it saves effort: converting a customer's messy message into a priced estimate in seconds. The prompt carries the whole rate card and a few rules, and takes only the facts it needs. Do not paste the customer's name, address or door codes into a chat assistant; the price does not depend on them.
You price house cleans using ONLY this rate card. Do not invent prices.
Rate: $42 per cleaner-hour. Minimum visit $120. Round the final total to the
nearest $5.
Standard hours = 1.5 + 0.5 per bedroom + 0.75 per full bathroom + 0.4 per
half bathroom + 0.5 per full 500 sq ft above 2,000.
Condition multiplier on STANDARD hours only, first visit only: maintained 1.0,
lived-in 1.2, neglected 1.5.
Deep-clean line (only if requested): 40% of standard hours. Not multiplied.
Extras: pet hair 0.5 h; inside oven 0.5 h; inside fridge 0.4 h.
Intake: [bedrooms, bathrooms, sq ft, last cleaned, pets, extras wanted,
regular or one-off]
Return a table with one line per charge (hours, rate, amount), the first-visit
total, the recurring price if regular, and a list of any assumption you made
or any detail you needed but did not have.
Try it with the intake "3 bed, 2 bath, about 1,800 sq ft, a dog, last cleaned about three months ago, kitchen is greasy, wants a deep clean, then every two weeks". A good result reproduces the table in the first section, line for line, and lists one assumption: that "about three months" counts as neglected. The first time this prompt is run on a new assistant, check the working. A realistic first answer applied the 1.5 multiplier to the deep-clean hours as well, returning 9.95 hours and $417.90, which is $37.80 too high. The slip is hard to see in a table that looks tidy, which is why the next step exists.
Build a test set of six homes with answers worked out by hand: the five smallest rows of the size table plus the neglected main example. Run each through the prompt, and accept the prompt only if all six match to the dollar. Re-run the set every time you change a rate, a multiplier or the wording. This is the same discipline as testing a spreadsheet, and it takes about ten minutes. For a wider look at turning enquiries into booked jobs, quoting and booking cleaning jobs with AI covers the booking side.
Validity, deposit and the sentence that prevents arguments
The validity period does two jobs. It gives the customer a reason to decide, and it protects you from honouring a price long after your costs or your calendar have changed. Fourteen days is a sensible default, and the date should appear in the header and again next to the accept button. If a customer comes back on day 20, a short message ("our estimates last 14 days; I'll re-check the price and send you a fresh one today") keeps the relationship intact without committing you to an old rate.
The most useful single sentence in the estimate is the one that ties the price to the information given: "The price assumes the information above." It turns a later dispute about size or condition into a conversation about the assumptions, instead of an argument about whether you misquoted. Pair it with a process, a call before starting and a choice of revised price or reduced scope, and record the customer's answer in the booking.
A deposit works well with a short validity period, because accepting and paying happen together, and the date is held for the person who committed. State the amount, say what it covers, and link the cancellation policy so the customer sees how late changes are handled before they pay. Agreement at the point of acceptance, with a time-stamp in your records, is what you will rely on if there is a later disagreement about fees or scope.
Check estimates against real hours every month
The rate card is a model, and models drift. Have each team record start and finish times in your booking or timesheet software, and every month put estimate and actual side by side for jobs of the same size and condition. A sample of twelve jobs (illustrative) might read like this:
| Job type | Jobs | Estimated hours | Average actual | Difference |
|---|---|---|---|---|
| 3 bed, 2 bath, maintained | 5 | 4.5 | 4.9 | +8.9% |
| 3 bed, 2 bath, neglected, first visit | 3 | 6.75 plus deep clean 1.8 | 10.3 | +20.5% on 8.55 |
| 2 bed, 1 bath, lived-in, first visit | 4 | 3.9 | 3.8 | -2.6% |
Read it with a rule, not by instinct: change the model only when three jobs in a row of the same type run more than 15 per cent over (or under). Here, the maintained 3-bed homes are within tolerance and need no change. The neglected group averages 20.5 per cent over, so first check whether each of the three jobs ran more than 15 per cent over or one long job is pulling the average up. If all three did, look at why. If the extra time went into the standard tasks, raise the neglected multiplier. If it went into the extras, adjust the deep-clean line. Do not change both at once, or you will not know which fix worked.
An assistant can do the sorting if you export the sheet, and it is good at asking which line explains the gap. It is not good at deciding what the number should be, because it cannot see the cleaners' day. Use it to surface the pattern; make the change yourself, and update the test set at the same time. If you keep a log of changes with dates, you can also tell customers honestly why a price has moved.
Where the estimate lives: software or a sheet
A spreadsheet and a PDF template are enough for the first few dozen estimates. As volume grows, quoting software saves retyping. Jobber's pricing page lists quotes built from templates you can edit, signature approvals, optional add-ons, and an option to draft quotes automatically from new requests; which of those your plan includes is worth confirming on the page, because they sit on different plans. ZenMaid's pricing page lists booking forms for your website from its Pro plan upwards, which feeds an estimate with the intake answers you need. Compare them in the ZenMaid and Jobber comparison for cleaning businesses.
Whichever route you choose, keep one master rate card in a single place, and have every tool, spreadsheet, form or assistant read from it. A rate that lives in three places will be different in each within a month. Turning your own timed jobs into a rate card is work an AI implementation consultation can help with, if you would rather not do it alone.
Questions about pricing house cleans by home size
Should the estimate show my hourly rate and hours?
Show the line prices and the visit total, and keep hours internal unless a customer asks. Hours invite arguments about speed and let rivals copy your rate card. If you do show them, label them as estimated and keep the arithmetic visible, so any line can be explained in one sentence.
Do regular cleans need a separate estimate?
Put the recurring price on the first estimate, then confirm it in writing after the first visit, once you know the real hours. Review it after three visits. If the home settles faster than the model assumed, the price may drop, and if it runs over, say so early rather than absorbing it.
How do I price multi-storey homes or lots of stairs?
Ask about floors and stairs at intake, time a few jobs, and add a small allowance per extra floor to the base hours, written into the formula. Keep it as a separate line in the model so you can check it. The figure belongs to your team's pace, not to a general rule.
What do I say when someone wants a price over the phone?
Give a range from the rate card using bedrooms and bathrooms, and say the firm price follows once you know the condition and have seen photos. Send the written estimate the same day. Never commit to a single figure before you know when the home was last cleaned.
Further reads
- Cleaning Invoice Template: Itemise Visits and Chase Payment With AI — Turn the accepted estimate into a clear invoice.
- Can AI Write a Cleaning Service Agreement? Scope, Access and Liability — The agreement that sits behind the estimate.
- Cleaning Company Price Increase Letter: Draft and Segment With AI — Raise prices for regulars without losing them.
- Cleaning Business Management Software: Scheduling, Timesheets and AI — Scheduling and timesheet software that keeps estimates and hours together.
- How to Get House Cleaning Clients: A Local Plan Built With AI — Bring in more estimate requests.
- Can AI Help a Cleaning Company Rebook More Regular Clients? — Keep one-off customers coming back as regulars.
- Price Commercial Cleaning Jobs: A Margin Calculator Built With AI — The same logic for offices, with a margin calculator.
- Carpet Cleaning Quote Template: Rooms, Stairs and Pets via AI Chat — A carpet cleaning quote layout with a worked example, and an AI intake chat that asks about rooms, stairs, pets and stains, then hands you a summary to confirm.
- House Cleaning Business Flyer: Test ChatGPT Copy, Then Design in Canva — Three ChatGPT-written flyer versions, tracked with separate QR codes and code words, tested on matched streets, then built in Canva.
- Solar Panel Cleaning Business: Quote and Route Jobs With AI — A worked pricing sum by panel count and access class, plus where AI helps with quotes, route clustering and recurring-plan reminders.
- Quote vs Estimate for Trades: Which to Send and What It Commits You To — A send-which rule for tradespeople, with a binding-price worked example, copy-ready wording and the moment an estimate becomes a quote.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: Jobber's pricing page (quote and invoice features) and ZenMaid's pricing page, read in November 2026. All rates, times and multipliers are the author's illustrative model; replace them with your own time and cost records.