Skip to main content

Pressure Washing Business Bookkeeping: Job Costing by the Square Foot, GPM-vs-PSI Depreciation, and the Two-Story Surcharge You're Skipping

15 min readMike ThriftMike Thrift
Pressure Washing Business Bookkeeping: Job Costing by the Square Foot, GPM-vs-PSI Depreciation, and the Two-Story Surcharge You're Skipping

If you price every house wash the same way — say $299 no matter the size, height, or grime level — you're not just leaving money on the table. You're quietly financing your customers' clean siding with your truck payment, your chemical inventory, and the hours of equipment life you'll never bill for. The good news: a simple per-square-foot job costing system, paired with honest equipment depreciation, fixes the leak in one afternoon of bookkeeping.

Pressure washing looks like a low-overhead hustle until you track what a job actually costs. Water, fuel, soap, nozzle wear, pump hours, drive time, ladder time, insurance, and the slow death of a $5,000 skid all hide inside that flat fee. This guide gives solo operators and small crews a practical accounting playbook to price by the foot, depreciate by the GPM-vs-PSI reality, and finally charge correctly for two-story work.

How Pressure Washing Pricing Actually Works

The three pricing models you'll see

Per square foot is the industry standard for flatwork (driveways, patios, parking lots) and the most defensible for house washes. National benchmarks for 2026 cluster around:

  • House wash (soft wash, vinyl siding): $0.15–$0.35 per sq ft of cleanable surface, or $250–$400 for a typical 1,500 sq ft single-story home
  • House wash (two-story, 2,000–2,500 sq ft): $400–$700 total, which works out to $0.18–$0.40 per sq ft but with a height premium baked in
  • Driveway / flat concrete: $0.08–$0.30 per sq ft, or $150–$350 for a two-car driveway
  • Roof soft wash (asphalt shingle): $0.30–$0.65 per sq ft, $500–$1,200 typical
  • Deck / paver patio: $0.25–$0.50 per sq ft

Per linear foot appears in some siding estimates ($0.75–$1.25/linear foot for single-story, $1.75–$2.25 for two-story), but it obscures height and soil level. Use it only when you convert it back to square footage on your estimate sheet.

Per job / flat minimum belongs on every quote — just not as the only number. Set a trip minimum ($150–$200 is common) to cover dispatch, fuel, and setup, then build the variable portion by square footage and surcharges. That minimum is what keeps a "tiny porch + sidewalk" job from losing money.

Why the range is so wide

Two identical houses can cost 40% different to clean because of:

  • Surface type (vinyl vs. stucco vs. painted brick)
  • Organic load (north-side algae, gutter tiger stripes, oxidation)
  • Access (steep grade, landscaping, no spigot, long hose run)
  • Water source (customer spigot vs. buffer tank + 12V pump)
  • Height and pitch (ladder vs. extension wand vs. lift)

Your bookkeeping should capture these cost drivers per job so you can refine your rate card quarterly — not by gut, but by margin.

The Two-Story Surcharge: Why an Extra Floor Isn't Just "A Little More"

New operators often add $50 for a second story and call it done. The real cost is closer to $100–$250 on a standard home, and skipping it is the fastest way to work harder for less.

What a second story actually adds:

  1. Time. A single-story 1,500 sq ft vinyl wash might take 60–90 minutes with setup. The same footprint on two stories takes 110–160 minutes because you're repositioning ladders or wands, managing longer hose runs, and doing slower, more careful chemical dwell and rinse passes up high.
  2. Risk and compliance. Working above 6 feet triggers OSHA ladder and fall-protection expectations, even for a two-person crew. Harness, roof anchors, ladder stabilizers, and the general-liability premium that covers height work are not free. If your insurer prices "ground-level only," a claim from a second-story fall may not be covered.
  3. Equipment wear. Extension wands, telescoping poles, and high-reach nozzles wear faster and cost more. Pump hours climb because dwell time increases.
  4. Chemical and water. Vertical surfaces need more downstream mix to cling, and rinse time rises with height.

How to price it without guessing:

  • Measure cleanable square footage per elevation (length × height per wall), not footprint square footage. A 1,500 sq ft ranch might have 1,800 sq ft of wall area; a 2,000 sq ft two-story has 2,800–3,400 sq ft of wall area. Price the wall area, not the appraisal.
  • Apply a height factor: 1.0× for single-story, 1.35×–1.50× for two-story, 1.65×–1.90× for three-story on the per-sq-ft rate for upper elevations. Or split the quote: ground-floor walls at base rate, upper walls at base rate + $0.08–$0.12/sq ft.
  • Show it as a line item: "Second-story access and safety — $135." Customers accept it when it's transparent. Burying it invites pushback; itemizing it signals professionalism.

If you already quote flat fees, test this on your next five estimates: measure wall area, apply the factor, and compare. Most solo operators find they've been underpricing two-story work by 22–35%.

GPM vs. PSI: The Math Your Equipment Depreciation Should Follow

Shoppers obsess over PSI (pounds per square inch — the punch). Pros price by GPM (gallons per minute — the flow) because GPM determines how fast you move dirt.

Cleaning Units = PSI × GPM. A 3,000 PSI / 4 GPM machine delivers 12,000 cleaning units; a 4,000 PSI / 2.5 GPM machine delivers 10,000. The first cleans faster despite lower peak pressure because it carries more water volume.

What this means for your books:

Choose machines by revenue per hour, not sticker price

  • 2–3 GPM (electric/small gas): Light residential — patios, small driveways. Cheap to buy ($400–$1,200), slow on big jobs. Expect 35–50% longer job times vs. a 4 GPM rig.
  • 3–5 GPM (mid-duty gas, belt-drive): The sweet spot for house washing and flatwork. $1,800–$4,500 for a quality belt-drive skid. This is what most profitable solo operators standardize on.
  • 5+ GPM (commercial skid, hot water): Driveways, commercial lots, fleet washing. $5,000–$12,000+ plus buffer tank and trailer. Justified when you're doing 15+ hours/week of flatwork or selling commercial routes.

A $3,200, 4 GPM belt-drive machine that saves 45 minutes per house wash pays for itself in 70–90 jobs through labor savings alone — before you count reduced callbacks from better rinsing.

Depreciate what actually wears

Your pressure washing rig is not one asset. It's a bundle with different lives:

ComponentTypical costUseful lifeBookkeeping approach
Pressure washer (engine + pump)$1,800–$6,0003–5 years, or 1,500–2,500 pump hoursCapitalize; depreciate over 5-year MACRS or elect Section 179
Hot-water burner / coil$1,200–$3,0003–4 yearsSame as above; track burner hours separately
Trailer / skid frame$1,000–$4,0005–7 yearsDepreciate over 5-year property
Hose, reels, wands, nozzles$400–$900/set6–18 monthsExpense as supplies; track per-job consumption
Soft-wash system (12V pump, tanks)$600–$1,8002–3 yearsCapitalize if over your capitalization threshold ($500–$2,500); otherwise expense
Vehicle (truck/van)Varies5 yearsSeparate asset; mileage vs. actual expense election

Two depreciation paths for 2026:

  • Section 179 expensing: Deduct the full cost of qualifying tangible equipment (new or used, as long as it's new to you) in the year you place it in service, up to the annual limit ($1.25M+ indexed; phase-out starts above ~$3M of total equipment placed in service). Ideal when you had a profitable year and want to offset income now.
  • Bonus depreciation + MACRS: Bonus was 100% through 2022 and has been phasing down — 40% for property placed in service in 2025, 20% in 2026, 0% in 2027 under current law unless Congress extends it. The remainder depreciates over the normal 5-year MACRS schedule for this class of equipment (200% declining balance). Many operators take Section 179 first, then bonus on any excess, then regular MACRS.

Practical move: Set a capitalization threshold in writing (e.g., $1,000). Below that, expense immediately (hoses, nozzles, fittings). At or above, capitalize and depreciate. Your CPA will thank you, and your profit-and-loss will stop swinging wildly when you replace a $300 hose reel.

Track pump hours like a landscaper tracks mower hours. A $60 hour meter on the engine saves you from depreciating on calendar time while the machine sits idle all winter.

Build a Job Cost Sheet That Tells the Truth

A one-page job cost sheet — paper or in Jobber, Housecall Pro, or a spreadsheet — beats any national average price list because it reflects your costs.

Template: per-job direct costs

For each completed job, log:

  • Labor: Hours × loaded rate (hourly wage + payroll taxes + workers' comp + drive time). Solo operators: pay yourself at least $35–$55/hour loaded, not $0. If you don't, your "profit" is just unpaid wages.
  • Chemicals: Sodium hypochlorite (SH), surfactant, degreaser, neutralizer. Measure by ounces used, not bottles bought. A house wash might use 3–6 gallons of 12.5% SH mix at $4–$6/gallon diluted.
  • Fuel: Machine fuel + vehicle fuel for that route. A 4 GPM gas rig burns roughly 0.4–0.7 gallons per hour.
  • Water: If you haul water or pay commercial rates, log gallons (GPM × minutes of trigger time). A 4 GPM rig at 50% trigger time for 90 minutes uses ~180 gallons. At municipal rates this is tiny ($0.50–$1.50), but tracking it matters for drought-restriction compliance and tank logistics.
  • Equipment wear: Pump hours × hourly depreciation. Example: $3,500 machine ÷ 2,000 expected hours = $1.75/hour. Add $0.50/hour for hose/nozzle consumables.
  • Travel: Miles × IRS standard mileage rate (or actual vehicle cost per mile if you elect actual expenses). Include windshield time between jobs.
  • Disposal / wastewater: Where required (storm-drain rules, commercial sites with reclaim), log vac/reclaim or disposal fees.
  • Fees: Card processing (2.6–3.3% + $0.30), platform fees (Jobber, Square, Housecall Pro), and sales tax collected.

Example: Single-story vs. two-story house wash

Line1-story, 1,500 sq ft wall area2-story, 2,800 sq ft wall area
Base rate @ $0.22/sq ft$330
Ground floor @ $0.22/sq ft$286 (1,300 sq ft)
Upper walls @ $0.31/sq ft$465 (1,500 sq ft)
Trip minimumIncludedIncluded
Subtotal before chemicals$330$751
Chemicals & fuel$22$38
Labor (1.5 hr vs 2.6 hr @ $45 loaded)$68$117
Equipment wear & travel$18$28
Total cost$108$183
Quote$350–$400$550–$650
Gross margin69–73%67–72%

The two-story job looks more expensive to the customer, but the margin holds — which is the point. Without the height factor, you'd quote $475 and net a 61% margin before you count the extra ladder risk.

The subscription trap

Monthly or quarterly "maintenance wash" plans smooth revenue, but price them on incremental cost, not the first-clean cost. A quarterly driveway rinse might be 40% cheaper than the initial restoration clean because there's less buildup. If you clone the first-clean price for every visit, you'll lose renewals. If you discount too far, you'll lose margin. Track time-on-site for maintenance visits separately and reset the rate card after 10–15 visits.

The Bookkeeping Setup That Survives Tax Season

Chart of accounts (keep it simple)

Income:

  • 4001 House Washing — Residential
  • 4002 Flatwork — Driveways / Patios / Sidewalks
  • 4003 Roof Soft Washing
  • 4004 Commercial / Fleet
  • 4005 Chemical Surcharge / Wastewater Recovery (if billed separately)
  • 4006 Trip / Minimum Fee

Cost of Goods Sold (direct job costs):

  • 5001 Labor — Field (W-2 wages + payroll taxes)
  • 5002 Contract Labor — 1099 subs (with W-9s on file)
  • 5003 Chemicals & Soaps
  • 5004 Fuel — Equipment
  • 5005 Equipment Wear — Consumables (hoses, nozzles, fittings)
  • 5006 Vehicle — Job Travel (mileage or actual)
  • 5007 Disposal / Wastewater Compliance
  • 5008 Merchant Fees Allocated to Jobs

Operating Expenses:

  • 6001 Vehicle — Non-job (insurance, registration, actual vs. mileage true-up)
  • 6002 Insurance — General Liability & Inland Marine
  • 6003 Marketing & Lead Services (Google LSA, Yard signs)
  • 6004 Software — Scheduling, CRM, Accounting
  • 6005 Rent / Storage — Shop or trailer lot
  • 6006 Professional Services — CPA, legal

This split lets you calculate true gross profit per service line (income minus COGS) instead of burying field labor in overhead.

Payout reconciliation: don't book gross as revenue

If you collect through Jobber, Square, Housecall Pro, or Stripe, your bank deposit is net of fees and sometimes sales tax handling. Book it in two steps:

  1. Record the full invoice as revenue and sales tax payable.
  2. Record the processor fee as an expense and reconcile the net deposit.

At month-end, tie your processor 1099-K gross to your books' gross — they will not match your bank deposits, and that's expected. The reconciliation is the proof.

Sales tax: usually exempt, sometimes not

In most states, pressure washing a structure is a non-taxable service. But rules vary sharply:

  • Some states tax the chemical portion if you itemize it as tangible property.
  • A few tax commercial exterior cleaning as a taxable service.
  • If you sell tangible add-ons (sealer, paver sand, gutter guards), those are taxable goods.

Decide your invoicing posture with your CPA: either bundle chemicals into the service price (often keeps the whole invoice non-taxable where labor dominates) or separately state them and collect tax where required. Whichever you choose, do it consistently and keep the determination letter in your files.

Cash flow and seasonality

Pressure washing is seasonal in most markets — 65–75% of revenue lands between April and September. Three habits prevent the winter cash crunch:

  • Hold back a reserve: Transfer 20–25% of peak-season collections to a separate operating reserve. Treat it like a bill.
  • Sell what winter wants: Gutter cleaning, holiday-light installation (if insured), interior garage floor cleaning, or commercial kitchen hood-adjacent referral work.
  • Pre-sell spring: Offer February "lock your date" deposits ($49–$99 applied to the job) to fund chemical and insurance renewals without debt.

KPIs That Separate Profitable Operators From Busy Ones

Track these monthly, not annually:

  • Revenue per job and per trigger hour. If revenue per job is flat while trigger hours rise, you're underpricing complexity.
  • Gross margin by service line. House wash should run 65–75% gross; flatwork 60–70% after chemicals and fuel; roof wash 70–78% (chemical-heavy but fast). If a line drops below 55%, reprice or stop selling it.
  • Utilization: Billable hours ÷ total clock hours. Solo operators often run 45–60%; crews 65–75%. Below 45% means too much drive time or too many tiny jobs under your minimum.
  • Callback rate: Rewashes within 7 days ÷ total jobs. Above 3% signals chemical mix or dwell-time issues — and every callback erases the margin of two good jobs.
  • Customer acquisition cost (CAC) vs. repeat rate: If Google Local Services costs $28/lead and you close 45%, CAC is ~$62. You need a 30–40% annual repeat or referral rate to make that math comfortable without raising prices.
  • Equipment cost per hour: (Annual depreciation + repairs + consumables) ÷ annual pump hours. Watching this climb warns you to replace a dying pump before it strands you on a paid job.

Five Expensive Mistakes to Stop Making

1. Quoting from the driveway. "Looks like $300" without measuring wall area and soil level is how two-story jobs subsidize your learning curve. Measure, photograph, and log.

2. Treating equipment as an expense. Expensing a $5,000 skid in one month makes that month look terrible and every future month look artificially profitable. Capitalize and depreciate so margins are comparable month to month.

3. Forgetting the truck. If you use your personal truck, you're still burning miles, tires, and eventual replacement cost. Pick mileage or actual expenses for the year (IRS locks you in) and apply it to every job's travel line — don't just deduct it at year-end.

4. Mixing chemicals into "supplies." SH, surfactant, and degreaser are COGS, not office supplies. When you lump them into overhead, you can't see which service line is actually chemical-heavy and you misprice roof washes.

5. No-show and reschedule slippage. Water restrictions, HOA rules, and "can you come back when the cars are gone" cost real hours. Set a 24-hour reschedule policy and a modest dry-run fee ($50–$75) — and enforce it. Your bookkeeping should show reschedule revenue as its own line so you can see whether the policy works.

Simplify Your Financial Management

As you tighten your per-foot pricing and finally bill correctly for height, clean books are what turn better quotes into higher retained profit. Beancount.io gives you plain-text, version-controlled accounting that makes job costing, equipment depreciation, and payout reconciliation transparent — no black boxes, no vendor lock-in. Pair it with a simple job cost sheet and you'll know your true margin on every driveway, patio, and second story before you send the invoice. Get started for free and see why operators who love measurable work are switching to accounting they can audit themselves.

Share this article