SweepMargin

A PRACTICAL GUIDE FOR CLEANING BUSINESS OWNERS

Price the work.
Protect the margin.

How to build a recurring office-cleaning bid from your own costs, with a worked example you can check.

By Junaid Mustafa, creator of SweepMargin · September 20, 2026 · All figures below are illustrative assumptions, not industry rates or a recommended quote for a particular building.

Start with the walkthrough

Two offices with the same floor area can take different amounts of time. Record the rooms, restrooms, floor surfaces, trash points, occupancy, access restrictions, and cleaning frequency. Estimate hours from the actual scope and time logs from similar work. ISSA explains the variables involved in cleaning times. SweepMargin is independent and has no ISSA affiliation.

Add costs before choosing a price

For this example, assume a 5,000 sq ft office visited three times a week, 52 weeks a year. Two workers each clean for two hours and have 15 additional paid minutes for travel or setup. Each earns $20/hour, with a 20% payroll burden.

Average monthly visits = 3 × 52 ÷ 12 = 13. Paid hours per visit = 2 × (2 + 15 ÷ 60) = 4.5. Loaded hourly labor cost = $20 × 1.20 = $24.

Illustrative monthly cost model · USD
CostCalculationMonthly
Loaded labor13 × 4.5 × $24$1,404.00
Supplies13 × $8$104.00
Travel expense13 × $10$130.00
Equipment13 × $5$65.00
Allocated overheadAssumed monthly allocation$100.00
Base costSum above$1,803.00
Contingency5% of base cost$90.15
Modeled costBase + contingency$1,893.15

Travel expense covers vehicle, parking, or mileage costs; paid travel time belongs in labor. Avoid counting the same item twice. Allocate insurance, administration, and other overhead consistently across jobs.

Margin and markup produce different prices

Margin is profit divided by price. Markup is profit divided by cost. Adding 25% to a $750 cost gives a $937.50 price and a 20% margin. To leave 25% of revenue after that cost, price at $750 ÷ 0.75 = $1,000.

Price = modeled cost ÷ (1 − target margin)

For this example: $1,893.15 ÷ 0.75 = $2,524.20 per month. Modeled operating profit is $631.05. The 25% target is an example, not an industry benchmark.

Check what happens when the job takes longer

If cleaning takes 20% longer, each worker needs 2.4 cleaning hours instead of 2. Keeping setup time and the selling price unchanged, the modeled margin falls from 25% to about 14.6%. This is why measuring time on early visits matters.

Costs alone do not determine whether a buyer will accept your quote. Review the scope, buyer expectations, and your capacity before sending it. Costs you omit will not appear in the result. The model excludes income taxes and financing costs, and does not guarantee profit.

Check your own numbers — free ↗

Make the proposal easy to understand

A useful proposal states the service location, areas included, task frequency, schedule, monthly price, any applicable sales tax, exclusions, and next steps. Keep wages, internal overhead, and your profit calculation out of the client-facing version.

SWEEPMARGIN PRO · $39 USD ONCE

Keep your estimates. Create the proposal.

The offline Pro download adds saved estimates, internal cost CSV exports, portable backups, and a client proposal you can print or save as PDF. Runs in a current desktop browser, with no subscription.

See the $39 Pro edition ↗

One-business license. Applicable purchase taxes appear at checkout. The free calculator is usable without buying Pro.

Compare the free and Pro editions →