Window Cleaning Pricing Calculator

Stop eyeballing a round number — price per window or pane, add height, access, screens, tracks & drive time

The glass

Market 2025–2026: ~$10–$15/window or ~$4–$8/pane, both sides. Per-pane is fairer on grid/colonial/French glass. Sides: Both = full rate, Exterior-only ≈ 65%, Interior-only ≈ 35%.

Height & access

"Stories above ground" is 0 for a single-story home, 1 for the upper floor of a typical 2-story. Industry norm: $3–$5/window/story. Hard-access (ladders, lifts, harnesses) is a separate $2–$4/window so it isn't double-counted with story height.

Add-ons

Screens ~$0.50–$8 each; track/sill detailing ~$1–$4 per window. Both are priced separately so partial-scope jobs stay accurate.

Travel, floor & adjustments

The minimum is a floor on the whole subtotal (including drive time & add-ons), not a stack-on. Discount is applied after the minimum so it can't drop a job below break-even. Tax is applied last for an out-the-door figure.

Quote this job at
$0
Both sides

Window Cleaning Pricing Calculator — guide & how to use

What it does

Most window cleaners quote off gut feel — they eyeball a round number and miss money on big jobs while underpricing small ones below their true minimum. This calculator builds the quote the way a pro estimator does: count the windows (or panes), apply your per-window or per-pane rate adjusted for which sides you're cleaning, then layer on a story-height surcharge for upper floors, a separate hard-access surcharge for above-20ft work, and per-item add-ons for screens and track/sill detailing. It adds a drive-time charge for round-trip travel, raises the whole subtotal to your minimum job charge if it falls short, then applies any discount and tax last. You get an itemized quote, the out-the-door total, and your implied effective price per window so you can sanity-check it against the market. Everything runs privately in your browser, free.

How to use it

  1. Enter the number of windows and choose your pricing basis (per window, or per pane for grid/colonial glass).
  2. Set your rate and which sides you're cleaning (both, exterior-only, or interior-only).
  3. Enter stories above ground (0 for single-story) and your height surcharge; flag hard access if windows are above ~20 ft.
  4. Add screens and track/sill counts with their per-item rates.
  5. Enter round-trip drive time and rate, your minimum job charge, and any discount or tax, then read the quote and breakdown.

Worked example

A 12-window home, priced per window at $12 both sides, with 1 story above ground at a $4/window/story height surcharge, no hard access, 0 screens, 0 tracks, 0 drive time, a $150 minimum, no discount, no tax:

  1. Base glass = 12 × $12 × 1.00 (both sides) = $144.00.
  2. Height surcharge = 12 windows × 1 story × $4 = $48.00.
  3. Hard access = $0. Screens = $0. Tracks = $0. Drive = $0.
  4. Subtotal = 144 + 48 = $192.00.
  5. Subtotal ($192) is above the $150 minimum, so the minimum doesn't bind.
  6. No discount, no tax. Total quote = $192.00, an effective $16.00/window — just above the $10–$15 band because of the upper-floor surcharge.

Eyeballing "around $150" would have left $42 (22%) on the table — the exact gap this tool recovers. Drop the windows to 4 and the raw work falls to $64, but the minimum floors it at $150 so you don't lose money showing up.

The formula

sidesFactor   = Both 1.00 | Exterior 0.65 | Interior 0.35
baseGlass     = (per window) windows × pricePerWindow × sidesFactor
              = (per pane)   windows × panesPerWindow × pricePerPane × sidesFactor
heightAdd     = windows × storiesAboveGround × storySurcharge
hardAccessAdd = (above 20 ft?) windows × hardAccessRate : 0
addOns        = screens × screenRate + tracks × trackRate
driveCharge   = (driveMinutes ÷ 60) × driveRate
subtotal      = baseGlass + heightAdd + hardAccessAdd + addOns + driveCharge
afterMinimum  = max(subtotal, minimumJobCharge)      ← floor, not a stack-on
afterDiscount = afterMinimum × (1 − discount% / 100)
total         = afterDiscount × (1 + tax% / 100)

The minimum is applied to the whole subtotal (including drive time and add-ons), and the discount comes after the minimum — both on purpose, so small jobs still cover trip + labor and a promo can't quietly drop a job below break-even.

Accuracy & disclaimers

Common mistakes this tool prevents

How to embed this tool on your website

No account, no coding. Copy the embed code and paste it where you want it to appear:

<!-- height starts at 1320px; raise it if the tool looks clipped on your page -->
<iframe src="https://snaptoolsuite.com/window-cleaning-pricing-calculator/?embed=1"
  style="width:100%;max-width:560px;height:1320px;border:0;"
  title="Window Cleaning Pricing Calculator" loading="lazy"></iframe>
<p>Free <a href="https://snaptoolsuite.com/window-cleaning-pricing-calculator/">Window Cleaning Pricing Calculator</a> by Snap Tool Suite</p>
2 Paste it on your page
3 It just works

See it live: view a real embed example →

Frequently asked questions

How do I price a window cleaning job?

Count the windows (or panes for grid/colonial glass), multiply by your per-window or per-pane rate, then layer on a story-height surcharge for upper floors, a hard-access surcharge for above-20ft work, and per-item add-ons for screens and track/sill detailing. Add a drive-time charge, raise the subtotal to your minimum if it falls short, then apply discount and tax last. This tool does every step and shows the itemized quote plus your implied hourly rate.

Should I charge per window or per pane?

Per-window (~$10–$15, both sides) is simpler for standard glass. Per-pane (~$4–$8) is fairer on multi-pane colonial, grid or French windows where one window holds 6–12 panes. Pricing a grid window per window leaves money on the table — toggle the basis so multi-pane jobs are priced right.

How much should I charge for upper-floor windows?

The industry standard is an extra $3–$5 per window for each floor above ground. Windows above ~20 ft that need multi-stage ladders, harnesses or a lift warrant a separate $2–$4/window hard-access surcharge on top. Keeping the two separate avoids double-counting access cost on an easily-reached upper window.

Why do I need a minimum job charge?

A minimum (commonly $100–$250, $125–$175 typical) stops you quoting a four-window job at $48 and losing money once drive time and setup are counted. It should be a floor on the whole subtotal — including drive time and add-ons — not a stack-on. The tool applies it that way and badges when it binds.

Should I charge for drive time?

Unpaid travel erodes margin on far jobs, so recovering it fixes the "eyeball a round number" problem. Multiply round-trip minutes by your drive-time rate (often $40–$60/hr). On competitive bids many cleaners fold this silently into the minimum or per-window rate — the tool itemizes it so you see the true cost.

How do exterior-only and interior-only jobs change the price?

Exterior is the bulk of the labor (~2× interior), so the tool models exterior-only at ~65% and interior-only at ~35% of the both-sides rate. These side factors are an adjustable convention from published cost splits, not a fixed constant.

Is it really free?

Yes. 100% free and fully private — all math runs in your browser.

Related tools

Put this calculator on your site

No account, no coding. Copy the embed code and paste it where you want it to appear:

<!-- height starts at 1320px; raise it if the tool looks clipped on your page -->
<iframe src="https://snaptoolsuite.com/window-cleaning-pricing-calculator/?embed=1"
  style="width:100%;max-width:560px;height:1320px;border:0;"
  title="Window Cleaning Pricing Calculator" loading="lazy"></iframe>
<p>Free <a href="https://snaptoolsuite.com/window-cleaning-pricing-calculator/">Window Cleaning Pricing Calculator</a> by Snap Tool Suite</p>
2 Paste it on your page
3 It just works

See it live: view a real embed example →

Everything is calculated in your browser — nothing is sent to Snap. Share links encode your inputs in the URL, so only share them with people you trust.