Step 1
Estimate cleaner-hours
Crew size × hours on site = total cleaner-hours. Two cleaners working three hours create six cleaner-hours of labor.
Cost-first cleaning pricing guide
Build the price from the work you expect to perform: estimate cleaner-hours, total the job’s costs, then solve for a selling price that supports your chosen margin.
Example inputs demonstrate the math; they are not suggested market rates.
The pricing method
A target margin is a share of the selling price, so it belongs in the denominator. Write the target as a decimal: 30% becomes 0.30.
Step 1
Crew size × hours on site = total cleaner-hours. Two cleaners working three hours create six cleaner-hours of labor.
Step 2
Multiply cleaner-hours by your own fully loaded internal labor cost per hour. Use business records, not the rate you charge a client.
Step 3
Add supplies, travel, job-specific fees, and a consistent allocation of overhead. Include owner labor if the owner will do the work.
Step 4
Solve the price, apply any client-facing rounding, then calculate the realized margin again. Rounding down can put the quote below target.
Worked example
These inputs are deliberately simple so the arithmetic is easy to audit. Replace every number with your own estimate and records; none of the amounts below is a recommended wage, cost, or selling price.
2 cleaners × 3 on-site hours = 6 cleaner-hours. At an illustrative fully loaded cost of $25 per cleaner-hour: 6 × $25 = $150.
Illustrative supplies of $18 plus travel of $12 produce $30 of other direct job cost.
Add a documented share of non-job expenses. In this example, the allocation is $30, bringing total estimated cost to $210.
$210 ÷ (1 − 0.30) = $300. Planned profit is $90, and $90 ÷ $300 confirms a 30% margin.
Common pricing error
Margin divides profit by price. Markup divides profit by cost. Applying a 30% markup does not create a 30% margin.
$210 × 1.30 = $273. The planned profit is $63, so the margin is $63 ÷ $273 = 23.1%—not 30%.
$210 ÷ (1 − 0.30) = $300. Profit is $90 and $90 ÷ $300 = 30%.
Markup = margin ÷ (1 − margin). A 30% margin corresponds to a 42.9% markup. Margin = markup ÷ (1 + markup).
Extra time, rework, omitted labor, unplanned supplies, cancellations, and costs tied to the final selling price can all change realized profit. Record the actual result after the job.
Before sending the quote
Record the rooms, surfaces, add-ons, condition assumptions, frequency, access constraints, and tasks that are not included. Price changes should follow scope changes.
Multiply crew size by expected on-site time. Add setup, travel, laundry, disposal, or other paid time when it belongs in your cost model.
Use current records for wages and the employment costs your business is responsible for. Do not confuse that cost with the hourly rate shown to clients.
Use a consistent method and avoid counting the same cost twice. If a cost is omitted, the calculated margin will be overstated.
Calculate total cost ÷ (1 − target margin). Keep the target below 100%, and use the decimal form in the equation.
After changing the client price or adding work, calculate planned profit and margin again. Document how add-ons affect time and cost, not just price.
Confirm applicable tax, deposit, cancellation, and payment rules for your location and business. This guide does not provide accounting, tax, or legal advice.
Log actual cleaner-hours and costs. Use the variance to improve the next estimate; do not treat the target margin as a promised result.
Put the method to work
The free browser calculator gives a quick educational estimate. The editable CleanQuote workbook adds reusable service presets, a client quote, and an actual-versus-quoted job log.
The workbook is a pricing tool, not accounting, tax, legal, or profit advice. It does not guarantee profit or replace validation of local costs and scope.
Choose your next step
The encrypted order form does not charge you. It requests a signed reply with the exact BTC amount, address, and quote expiry. Pay only after that reply.