A homeowner sends three photos and asks for a flat price by Friday. The rooms look manageable, but the photos say nothing about buildup, clutter, access, add-ons, drive time, or whether a two-person crew can finish inside the visit window.
Published city averages, including Houston and Portland, can sit far apart, so treat them as a reasonableness check after the math. Set the quote from crew hours, loaded labor, supplies, travel, overhead, and margin; then compare that figure with the local band before it goes to the customer.
Typical House Cleaning Rates by Market
An owner in Houston checks local rates before answering a price inquiry and finds an average near $40 an hour, with typical quotes running $25 to $70. The same search in Portland turns up an average around $60 and an even wider spread. Figures like these work as a lookup table and a sanity check. The price itself still has to come from the business's own cost floor.
Published house cleaning benchmarks by market
| Market and source | Hourly rate | Flat visit | Price per square foot |
|---|---|---|---|
| Houston, Angi | Average about $40; typical $25 to $70 | Average $174; usually $119 to $232 | $0.08 to $0.20 |
| Portland, Angi | Average about $60; typical $30 to $100 | Average $219; range $137 to $333 | $0.13 to $0.26 |
| Seattle, Angi | Average $40 | No standard figure published | $0.14 to $0.22 |
| National, Connecteam, 2024 figures | $25 to $75 per cleaner | Average $230 for a standard 1,000-square-foot home | Stated only for that home-size example |
| National, Investopedia citing Thumbtack, 2024 figures | $45 to $50 per hour | Set from scope and expected labor | None stated |
| National, Trafft, 2024 figures | $20 to $50 per cleaner | Set from scope and expected labor | $0.07 to $0.16 |
These figures are customer prices rather than employee wages, and they describe different homes, crew arrangements, and checklists. Averaging the rows together would not produce a defensible quote for any single market. An hourly row quoted per cleaner also doubles when a crew of two arrives, so compare on total labor cost.
Before weighing a proposed price against a competitor's advertised rate, confirm both cover the same ground: whether supplies are included, which tasks are on the checklist, and whether one cleaner or a crew does the work. A starting rate that excludes bathrooms with heavy buildup cannot be compared with an inspected, fixed-scope quote.
Practical rule: A price far outside the local band is a reason to inspect the estimate before changing it.
The band earns its place after the cost floor is built. If the cost-based price lands above it, examine travel, production time, and whether the schedule is filling with the wrong jobs. If it lands below, look for missing costs before crediting the crew with a pricing advantage.
Build the Cost Floor Before You Set a Rate
The cost floor starts with labor, but it doesn't end there. The Bureau of Labor Statistics' May 2024 occupational wage release reports a mean hourly wage of $17.39 for maids and housekeeping cleaners across 854,910 jobs; a crew of two working two hours therefore incurs about $69.56 in direct wages, before employer and operating costs.
That wage is compensation for the worker, not the customer's final bill. A business that invoices only those wages has nothing left to pay for the rest of the job.
Costs that belong in the calculation
- Employer payroll taxes: Include the employer's cost, not just employees' gross pay.
- Workers' compensation: Allocate the actual premium and reconcile it when payroll changes.
- Paid leave: Recover paid nonworking time through the hours available to sell.
- Liability insurance and bonding: Budget premiums even during a quiet booking period.
- Supplies and equipment wear: Include chemicals, gloves, cloth replacement, filters, and repairs.
- Drive time and mileage: Account for paid travel separately from vehicle operating costs.
- Scheduling and office work: Customer messages and dispatch still require paid time.
- Unpaid estimating visits: Walkthroughs consume capacity even when the customer doesn't book.
- Rework: Allow for legitimate return visits without treating every return as free labor.
- Payment processing: Include the charges associated with the payment methods customers use.
- Cancellations and no-shows: Recognize the cost of crew capacity that can't be resold.
- Profit: Add a return after costs rather than treating whatever remains as the plan.
A solo operator still needs compensation for cleaning labor, insurance, supplies, and administrative work. Owner pay and business profit aren't the same thing.
List monthly overhead, then divide it by realistic billable labor-hours. Use that allocation consistently, and don't charge the same expense again through another line.
Where a state taxes cleaning services, show applicable sales tax separately on the invoice. Keep collected tax separate from service revenue and confirm the treatment with the state revenue department or the business's accountant.
How to Calculate a Quote Step by Step
A reliable quote converts the home's condition into expected work, then converts that work into a selling price. Bedroom count helps describe the property, but it can't tell the estimator how long a neglected shower or crowded kitchen will take.

- Record the scope. Capture bedrooms, bathrooms, floor area, occupancy, pets, clutter, surface types, frequency, and extras so the estimate describes actual work.
- Estimate cleaner-hours. Multiply crew size by expected on-site time, using clock records from comparable jobs rather than memory.
- Add paid noncleaning time. Include travel, setup, and a reasonable rework allowance where those costs aren't already recovered elsewhere.
- Apply the burdened wage. Multiply paid labor-hours by the wage plus employer labor costs, not by take-home pay.
- Add supplies and overhead. Use a per-job supply allowance and a consistent overhead allocation.
- Apply the target margin. Divide total job cost by the portion of revenue left after the desired margin.
- Round and review. Choose a clear customer-facing amount, then compare equivalent local services before sending it.
For a production-time check, BidCalc's cleaning pricing model estimates roughly 2.6 hours per cleaner for a three-bedroom, two-bath home with a two-person crew. That's an indicative model without an established publication date, not a production promise for every home.
Worked example with explicit assumptions
The BLS occupational outlook page for janitors and building cleaners reports a May 2025 median wage of $17.71 per hour. That occupation is a related labor reference, not a substitute for the business's actual residential-cleaner wages.
The following scenario uses that wage with a 1.30 burden factor, 15% overhead assumption, and 25% target margin. Those percentages are estimating assumptions, not BLS findings.
Worked example: two cleaners, 2.5 hours each
| Line | Calculation |
|---|---|
| Labor-hours | 2 cleaners × 2.5 hours = 5 labor-hours |
| Burdened labor | 5 × $17.71 × 1.30 = approximately $115.12 |
| Overhead | $115.12 × 15% = approximately $17.27 |
| Supplies | Add the business's per-job supply cost, represented as S |
| Subtotal before margin | Approximately $132.39 + S |
| Quote at 25% margin | ($132.39 + S) ÷ 0.75, approximately $176.52 plus S ÷ 0.75 |
This illustration excludes additional paid travel or setup unless already included in the modeled hours. It isn't a finished customer quote until those items and supplies are entered.
Markup and margin use different denominators. Under this hypothetical example, adding 25% to cost produces a 20% margin; dividing cost by 0.75 produces a 25% margin. The owner should also label whether the target covers job-level gross profit or operating profit after allocated overhead.
Choosing Hourly, Flat, Room or Square-Foot Pricing
Crew size changes the bill even when the appointment length stays the same. A deep clean with multiple cleaners must be priced using everyone's labor, not just the time between arrival and departure.
For historical context, Investopedia, citing Thumbtack's 2024 figures, reports average house-cleaning costs of $45 to $50 per hour. An operator still needs to establish whether an advertised hourly amount applies to each cleaner or the whole crew.

| Pricing model | Best job type | Main risk | Check before quoting |
|---|---|---|---|
| Hourly per cleaner | Uncertain condition, custom work, or an unseen first visit | The customer bears the cost of a slow or underestimated job | State crew size, estimated duration, and the approval point for extra time |
| Flat rate per visit | Recurring work with a stable checklist | The business absorbs underestimated labor | Inspect condition and define what triggers a revised quote |
| Per room or task | Partial-home cleans and specific requested work | Rooms with different conditions get treated as equivalent | Define room limits and task completion standards |
| Per square foot | Preliminary phone estimates and consistent property types | Size hides occupancy, buildup, pets, and surface complexity | Confirm condition before turning the estimate into a fixed price |
Choose who carries estimating risk
Hourly pricing doesn't remove the need to estimate. Customers still need a useful expectation and a clear stopping point before the crew exceeds the authorized work.
Flat pricing works when the business controls the checklist and understands production time. It becomes risky when cleaners accept extra requests without recording them or when recurring customers gradually add rooms.
Per-task pricing is useful for appliance interiors because the customer can accept or decline a defined service. Square-foot pricing is better treated as a screening tool until the estimator understands the home.
A lower hourly rate can produce a higher customer total. A higher flat price can be clearer when the checklist and exclusions are specific.
The best model is the one that matches the uncertainty of the job, not the one that looks cheapest in an advertisement.
Discounts, Add-Ons and Minimum Charges
A discounted first visit that wins a recurring contract can still lose money. The crew spends that visit removing accumulated soil and restoring neglected areas before routine maintenance is even possible, so the discount is really unpaid labor priced as a marketing cost.
The reset clean and the recurring visit should be separate products. Inside appliances should also be explicitly included or excluded, rather than silently bundled into whichever service the customer calls a deep clean.
Adjustments to the base quote
| Adjustment | When it applies | Benchmark or method |
|---|---|---|
| Recurring biweekly visit | Known scope on a scheduled route | Market benchmark of $120 to $220 per visit |
| First-visit reset clean | Accumulated soil, neglected details, and separately agreed appliance work | Market benchmark of $250 to $550 |
| Pets | Extra hair, litter, and odor-related cleaning | Set a fixed amount from measured additional time |
| Clutter and heavy soil | Work outside the standard checklist | Price the added labor-hours; separate organizing from cleaning |
| Ovens and refrigerators | Interior appliance cleaning | Give each task its own estimated hours and quantity |
| Minimum visit charge | Short jobs with disproportionate travel and setup | Recover deployment costs and profit, even when cleaning time is short |
| Late cancellation | A reserved slot released too late to refill | State the notice window and charge in writing before booking |
For a sanity check on the two benchmark rows, OnCallClerk's house-cleaner pricing guide lists $120 to $220 for a recurring biweekly visit and $250 to $550 for a first-time or deep clean. Skill Mammoth's house-cleaning pricing guide describes deep cleaning as costing 50% to 100% more than standard service.
Use those bands to check your quote, not to set it. A percentage multiplier still won't compensate for an incomplete scope assessment, and a market midpoint says nothing about whether your route density or visit length supports the price.
Rules that protect the adjustment
- Inspect first visits: Require useful photos or a walkthrough, including showers, kitchen surfaces, floors, and requested appliance interiors.
- Reprice changed conditions: Explain the change before work begins and obtain approval rather than surprising the customer afterward.
- Earn recurring discounts operationally: Reduce the price only when shorter maintenance visits and route density support the reduction.
A minimum charge should be explainable as the price of sending a prepared cleaner to the property: travel, setup, and the schedule slot the crew held. When the customer can see that logic, the charge reads as a floor on the service rather than a fee added after the estimate was accepted.
Quote Scripts and Software That Holds the Price
The quoted total covers the listed bathrooms, kitchen surfaces, dusting, vacuuming, and mopping. Appliance interiors, organizing, and work outside the attached checklist are excluded. Any change in condition or requested work requires approval of a revised price before the crew proceeds.
Open with the approved total from the estimate, then read this scope language. The customer should hear the price and its boundaries in the same breath, so that a request to add oven interiors on the day becomes a repricing conversation, not an argument.

Software should preserve the agreement, not just produce an attractive estimate. Saved line items prevent inconsistent add-on charges. Customer approval records prevent disputes about which version was accepted, and job notes with photos preserve the condition on which the quote depended. The tool's job is to hold the number your cost floor produced, enforced the same way on every visit.
Office software that holds quoted prices
| Vendor | Plan and monthly price | Pricing controls | Best fit |
|---|---|---|---|
| Jobber | Check Jobber's pricing page for current plan names and monthly figures; ask which tiers cap user seats and how recurring-price changes are handled | Confirm quote approval, recurring-price handling, completed-job invoicing, and relevant plan restrictions | Candidate for an owner-operator or small crew evaluating a connected office workflow |
| Housecall Pro | Check the vendor's pricing page for current monthly figures; ask whether added tasks can be approved and invoiced mid-visit | Request a demonstration of saved prices, approved changes, recurring billing, and access permissions | Evaluate when office staff and field crews need a shared customer record |
| ServiceM8 | Check the vendor's pricing page for current monthly figures; ask about per-user limits and whether quote records carry through to invoicing | Confirm device requirements, quote records, job documentation, and reporting availability | Evaluate against the crew's devices and job-volume requirements |
Ask each vendor to demonstrate the full path: a cleaning estimate becoming an approved job and then an invoice, including an added appliance-cleaning task priced on the spot.
Start with the records the business needs
A small operator can begin with a spreadsheet containing scope, estimated labor, supply allowance, overhead, margin, and approved price. A separate job log can hold clocked hours and the reason for any overrun.
Before paying for software, confirm whether reports compare estimated and actual labor or merely show revenue. The lowest paid tier may suit a one-cleaner business, but only if its user limits, recurring-job tools, and reporting cover the workflow.
A subscription won't correct an unrealistic production standard. It can make that standard easier to identify and update.
Confirm Your Rate Against Your Last Ten Jobs
Labor variance = (actual hours minus quoted hours) ÷ quoted hours. That calculation reveals whether the business is repeatedly selling more work than it estimated.
Reviewing completed jobs is more useful than collecting another broad price range. The owner needs to know which services miss their estimate, why they miss it, and whether the approved price still covers the work.
Turn completed jobs into better estimates
- Pull the recent job records. Gather quoted hours, clocked hours, approved scope, price charged, and any extra work.
- Calculate labor variance for each visit, keeping recurring cleans separate from resets and move-out work.
- Investigate repeated overruns. Distinguish underestimated work from access delays, missing supplies, training needs, and unauthorized extras.
- Choose the pricing model that matches each job type's uncertainty rather than forcing every service into the same format.
- Rebuild minimums and initial-visit prices. Use actual deployment costs and condition-based labor estimates.
- Put the revised scope and amount into the next estimates, and record whether customers accept, decline, or request changes.
- Review monthly. Include scheduled capacity, cancellations, collection costs, and paid time that never reached an invoice.
A spreadsheet can hold this review without purchasing field-service software. Before starting a trial, confirm the vendor's own terms, including any charge, renewal arrangement, cancellation process, and ability to export records.
Management check: Repeated overruns are a reason to inspect the estimate and working conditions before blaming the cleaner.
If the revised calculation still doesn't cover the cost floor after the monthly review, the rate or service design needs changing. A crew can't solve a structurally underpriced job by working harder.
Pull the completed-job records, calculate labor variance, and revise the next quote before sending it. Set a documented minimum, separate reset work from maintenance, and give the customer a price tied to a clear checklist.



