Window Cleaning Business
The shortcut: Skip residential. Build a route of 10-15 storefronts and restaurants on the same strip — weekly or monthly visits at $50-$150 each. That's where the steady money lives.
Industry: Cleaning & Maintenance
Investment level: Low — $500-$2,000
Time to launch: 1-3 weeks
Best for: People who want to start a real business this weekend with almost no money. You're a fit if you're comfortable on a 24-foot ladder, can drive between jobs, and would rather work a half-day route of small storefronts than chase one-off houses. What you'll likely make: ~$2.5-$3.5K/month after expenses by month 3, and $4-$5K by month 6 if you cluster a commercial route in one or two neighborhoods. Full math is in Section 3.
Market Opportunity
There are 62,099 cleaning companies in the US, and most are one or two people. Window cleaning is the corner of that world with the lowest cost to start — a bucket, a squeegee, a ladder, and some Dawn dish soap will get you on a paying job by next Saturday. The catch is everybody figures that out, so the people making money aren't competing on price for a $200 house. They're cleaning 12 storefronts on Main Street every Tuesday morning and going home by lunch.
Target customer: Small storefronts and sit-down restaurants in walkable retail strips first. Two-story homes in $400K+ suburbs second. Skip apartment complexes (insurance gets weird at 4+ stories) and national chains (they buy through corporate facilities contracts).
Why this is a good time to start: Restaurants and small retail spent two years cutting back on every recurring cost. Now they're hiring and a dirty front window costs them sales. Most owners haven't had a window guy in 18 months. Your pitch isn't "should you clean your windows" — it's "I'm here Tuesday at 8am, $60 a visit, no contract."
Launch With AI
Pro section. Window cleaning is a foot-traffic and route-density business — AI is not what wins it. But the time you waste writing the door-hanger copy, scripting the strip-walk pitch, replying to Google reviews, and recapping monthly invoices is exactly the time you should spend climbing more ladders or knocking on more doors. AI does the writing tail. You do the work that pays — Tuesday morning at 8am with a squeegee on Main Street.
The trap most first-year window cleaners fall into: they think AI gets them customers. Backwards. AI cannot walk into the coffee shop, look the owner in the eye, and quote $60 a visit while the espresso machine is hissing. AI is for the cold-walk script you rehearse the night before, the door hanger Canva is auto-laying-out, the Google review reply, and the monthly recap email — but every customer relationship, every ladder safety call, every "I won't quote 3-story" pricing decision is yours.
Important up-front: AI cannot judge whether a 24-foot ladder fits between the parked car and the awning, decide whether a hard-water stain is removable or you'd be on the hook for a refund, or have the conversation with the restaurant owner about why his card declined this month. It will also confidently quote a per-pane price that loses you money. You own every safety call, every pricing decision, every customer relationship; AI scales the writing and the prep around them.
AI Tools You'll Use
| Tool |
Price |
What it does |
| ChatGPT (free or Plus) |
$0-$20/mo |
Cold-walk scripts, Google review replies, monthly recap emails, door-hanger copy |
| Canva (free) |
$0 |
Door hangers, magnetic truck signs, one-page rate sheet, Nextdoor post images |
| Jobber Copilot (built into Jobber Core) |
included $29/mo |
Auto-summary of route days, late-payment chase emails, route optimization |
| Google Business Profile + ChatGPT |
free |
Auto-draft responses to every review (5-star + 1-star), monthly post drafts |
| Loom AI (free) |
$0 |
Before/after walkthroughs for restaurant owners, "here's what I did" videos for hard-to-reach managers |
The Workflow
Strip-walk script + 30-prospect list (ChatGPT, ~30 min/week). The strip walk is the entire top of funnel for the first 90 days. Paste into ChatGPT:
"I'm starting a window cleaning business in [city, zip]. Build me the Tuesday-morning strip-walk pitch script: (a) the 90-second pitch I deliver to a small business owner — open with what I noticed about their windows specifically (smudges at hand-height, dust on the inside of the glass, hard-water spots on the lower half), pivot to the offer ($60-$80/visit, monthly, no contract, 20-30 minutes), close with 'I'm here next Tuesday at 8am — yes or no?,' (b) 5 objection responses (already have someone, too expensive, owner's not here, not interested, never thought about it) — each is 1-2 sentences max, NEVER pushy, (c) the leave-behind 1-pager (price, phone, before/after of one job I've done, my insurance line). Tone: confident neighbor, not salesman. Then build me the prospect list: I'll walk [target retail strip name]. List 30 small businesses likely to be there in priority order: coffee shops first (busy front windows, they care), restaurants second, salons + barber shops third, professional services last. Format as Notion-ready."
Print the rate sheet. Walk it Tuesday at 9am. Expect 2-4 yeses out of 30 — your route is built in 8 strip walks.
Door-hanger + flyer batch (Canva, ~45 min/500 hangers). For 2-story residential neighborhoods, door hangers convert at ~1% but the customers are stickier. In Canva:
"Generate a door-hanger design for [city] window cleaning. Front side: hero photo of a clean before/after window (use Canva's stock), big headline 'Your 2-story windows in 90 minutes,' price '$250 starting,' my logo + phone. Back side: 4-bullet list (exterior + interior, screens cleaned + tracks vacuumed, fully insured up to 2 stories, 5-star Google reviewed) + a 'why now' line ('schedule before [season] — calendar fills up') + my Google review QR code. Trim to 4.25 x 11 standard hanger size."
Order 500 from Vistaprint (~$80). Walk one Saturday in a 2-story zip code. Expect 5-7 calls; 3-4 close.
Quote-on-the-spot per-pane calculator (ChatGPT, 1-time setup). Hourly punishes you. Per-pane is the floor. Paste:
"I'm a window cleaner. Build me the 1-page on-site quote calculator I run mentally in 5 minutes per house: (a) the per-pane prices: standard pane in/out $4-$8 (ground level), $6-$10 (2nd story), outside-only deduct 50%, screens add $5-$10 each, tracks add $30-$50 per house total, hard-water mineral removal $50-$100 per panel (only quote if I can actually remove it — ask if it's been there 6+ months because that's set-in and I refuse), (b) the 5-minute walk-around checklist (count panes, count stories, count screens, identify any panes with mineral stains or paint spec, note any obstacles like landscaping/cars/awnings), (c) the 'this isn't a fit' decline script for: anything over 2 stories, panes with safety film, leaded/historic glass, anything where the access requires moving the homeowner's car. Tone: senior cleaner who refuses jobs cheerfully. Output as a Notion-ready 1-pager I print and laminate for the truck."
Use it on every estimate. The decline list is your liability shield — quoting a 3-story job at 2-story rates is how you fall and lose your insurance.
Google review auto-reply + monthly post (ChatGPT, ~10 min/week). Reviews are the entire commercial-account-trust signal. Paste:
"I run a window cleaning business in [city]. Below is a [5-star / 4-star / 1-star] review I just got: '[paste]'. Generate the response: (a) thank by name, (b) reference one specific thing they mentioned (the corner pane, the screens, the hard-water spot — proves I read it), (c) one closing line that signals I'm available without being pushy, (d) NEVER use 'we strive to' or 'customer satisfaction is our top priority' — sound like a person. For 1-star: acknowledge specifically what went wrong, take responsibility, name the fix, end with my phone number. NEVER argue."
For monthly Google Business posts:
"Generate a monthly Google Business post for window cleaning in [city]. Theme: [season — spring pollen / summer hard-water / fall after leaves / winter pre-holiday]. 1 sentence about why this season matters for windows + my offer + 1 line CTA. Under 150 chars. Add suggested photo prompt."
Reviews + monthly posts are 30% of why a property manager calls you instead of the other guy.
Monthly customer recap + chase-email (Jobber Copilot + ChatGPT, ~20 min/month). Restaurants forget you exist between visits. Paste:
"I run [N] commercial window cleaning accounts. This month: [list each: business name, visits completed, anything notable like 'replaced one pane with a closing-time mineral stain' or 'noted a cracked corner — flagged to owner']. Generate (a) the 1-paragraph monthly recap email I send each commercial customer (their visits this month, anything I noticed, my next visit date, my phone), (b) the 1-paragraph friendly chase email for any account that has a card decline (NEVER threatening — 'card declined, here's the link to update — I'm coming next Tuesday regardless'), (c) the end-of-quarter survey ask: 1 sentence asking if I should add anything to the route (interior, screens, tracks). Tone: neighbor, not corporate. Output paste-ready."
The monthly recap is what cuts your churn from 6%/month to under 3% — restaurants leave the cleaner who never communicates.
Time Saved Per Week
Roughly 3-5 hours/week once your scripts, calculator, and review templates are built:
- Strip-walk script + prospect list: 90 min → 30 min (ChatGPT)
- Door hanger / flyer / Nextdoor post design: 3 hours → 45 min (Canva)
- Quote calculator: one-time → reused on every estimate
- Google review replies: 5 min/review → 1 min (ChatGPT auto-draft)
- Monthly customer recap: 90 min → 20 min (Jobber Copilot + ChatGPT)
Trade that time for: 2 more strip walks, 1 more 2-story neighborhood door-hanger drop, and the 3-hour Saturday morning you spend at the chamber-of-commerce networking breakfast where one introduction lands a 200-unit office building.
Total AI Stack Cost
- Budget tier ($0/mo): ChatGPT free + Canva free + Google Business Profile + Loom free. Right for the first 90 days while you're under $2,000 MRR.
- Full tier ($49/mo): ChatGPT Plus ($20) + Jobber Core ($29). Worth it the day you cross 12 commercial accounts — Jobber Copilot's auto-summary alone saves 90 min/week and the route optimization saves $40/month in fuel.
- Compare: A part-time virtual assistant for cold-walk lists + review replies + monthly recap emails runs $400-$800/month. The full AI stack is one-tenth that cost.
Cancel anything you don't open in a 7-day window. Skip Jobber for the first 30 days while you're under 5 accounts — Google Calendar + a Google Sheet + Square is enough.
Your First Win
30 minutes from now your first strip-walk pitch is dialed in and printed. Open ChatGPT (free tier works). Paste:
"I'm starting a window cleaning business in [city]. Tomorrow morning I'm walking [name your target retail strip — e.g., '20 small businesses on East Main Street between 5th and 8th Ave']. Build me the printed leave-behind for every door + the verbal pitch I run when I get to talk to the owner: (a) the 1-page leave-behind: my name + phone + 'window cleaner, just down the street' + the offer ('$60-$80/visit, monthly, no contract, in and out in 20 minutes') + 1 before/after photo placeholder + my insurance line ('fully insured, $1M GL') + the line 'I'll be back at this strip every Tuesday at 8am — wave me down or call,' (b) the 60-second verbal pitch with 3 versions (one for the owner who's busy with customers, one for the owner who has 5 minutes, one for when only the cashier is there and I leave the page), (c) the on-the-spot quote tree: storefront <12ft = $50, 12-20ft = $75, 20-30ft = $100, 30+ft = walk away politely (height insurance issue), (d) the decline script for anything taller than 2 stories. Tone: confident neighbor. NEVER 'I'd love to clean your windows' filler."
Print 30 copies. Walk the strip Tuesday at 9am after the breakfast rush. 3-5 of those 30 will sign up by the third Tuesday you visit — and that's $400-$600/week of recurring revenue from one weekly walking route.
Product / Service Offering
You sell three things. Commercial routes are the real business. Residential one-time cleans pay better per hour but burn drive time. Add-ons turn a $200 house into a $300 house in the same driveway.
Core offerings (typical 2026 ranges):
- Commercial recurring (storefronts, restaurants, small offices): $50-$150 per visit. A coffee shop with a 12-foot front is $60 in 20 minutes. A restaurant with two glass walls is $120 in 35 minutes.
- Residential exterior + interior: $150-$300 for a single-story 3BR. $250-$450 for a two-story. Includes screens, tracks, sills.
- Add-ons: screens $5-$10 each, track and sill detail $30-$50 per house, hard-water mineral removal $50-$100 per panel.
- Skip for year 1: high-rise, pressure washing, solar panel cleaning.
Pricing model: Flat rate per visit, never hourly. Charge per-pane on first walk-throughs ($4-$8 in/out, $2-$4 outside-only) until you've done 30 jobs. Auto-charge a saved card through Square or Jobber. Push commercial customers to card-on-file or you'll be chasing $80 invoices for six weeks.
Revenue Model
A full month for a solo cleaner is one or two commercial routes per week plus a couple of residential jobs on weekends. The route does the heavy lifting.
Unit economics example (steady-state month, year 1, working solo, 2026):
| Line item |
Amount |
| 12 commercial accounts × $75 avg × 1 visit/mo |
$900 |
| 4 commercial accounts × $90 avg × 4 visits/mo (weekly) |
$1,440 |
| 4 residential cleans × $250 avg |
$1,000 |
| 6 add-ons × $50 |
$300 |
| Gross revenue |
$3,640 |
| Soap, scrim, squeegee blades, scrapers |
-$60 |
| Mileage (~700 mi @ $0.40/mi) |
-$280 |
| Square processing (2.6% + 15¢ in-person, 2026 rate per Square pricing) |
-$100 |
| Jobber Core ($29/mo prepaid annual, 2026 rate per Jobber pricing) |
-$29 |
| General liability insurance (cleaning median $44/mo per Insureon) |
-$45 |
| Net |
~$3,126 |
Path to your first $5K month: 20 commercial accounts on a one-route-per-day rhythm (Mon-Thu mornings) plus 1-2 residential jobs each weekend. The Tuesday route alone — 8 storefronts at $75 each in a 4-hour morning — pays $600 before lunch. Cluster the route to one neighborhood. A 10-minute drive between stops kills the math.
Path to your first $10K month: Hire one W-2 employee (employee, you withhold tax and carry workers' comp), hand them the residential route, keep commercial on yourself, and add a second commercial route in an adjacent zip. Expect month 9-12. Run the numbers carefully — labor, workers' comp, and payroll tax can eat 30-40% of what your hire brings in.
Startup Costs
| Item |
Low |
Mid |
High |
| LLC filing (state-dependent, $35-$500 per LLC University) |
$35 |
$200 |
$500 |
| 24' Werner aluminum extension ladder + stabilizer |
$180 |
$260 |
$350 |
| Ettore or Unger starter kit (squeegee, handle, scrim, microfiber, soap) |
$80 |
$130 |
$200 |
| Bucket on belt + 5-gallon bucket + scrapers + 24-ft extension pole |
$80 |
$150 |
$250 |
| Liability insurance year 1 ($1M/$2M, cleaning median $44/mo per Insureon; Hiscox starts $29.17/mo per Hiscox) |
$350 |
$525 |
$700 |
| Jobber Core year 1 (annual prepaid $29/mo × 12) |
$0 |
$348 |
$348 |
| Domain + simple Squarespace site (year 1) |
$0 |
$190 |
$300 |
| Door hangers + flyers + magnetic car signs |
$40 |
$100 |
$200 |
| Marketing budget month 1 (Nextdoor + flyers) |
$0 |
$100 |
$300 |
| Buffer (gas + supplies refill) |
$50 |
$100 |
$200 |
| Total |
$815 |
$2,103 |
$3,348 |
Why the Low column is real: skip Jobber for month 1 (Google Calendar plus a spreadsheet), skip the website (a Nextdoor business page is enough), and if your state's LLC fee is on the cheap end ($35-$50 in MO, NM, AZ), you can be cleaning paid jobs by next weekend for under $500.
Legal & Formation
Business entity. Form an LLC (limited liability company). Window cleaning has one risk other cleaning verticals don't: ladders. A 24-foot ladder near a homeowner's car or toddler — one slip and the lawsuit eats your year. A sole prop gives you zero personal-asset protection. If money's tight, run as a sole prop for 30-60 days while you confirm 5+ paying customers, then file. Don't skip general liability (GL) insurance during that window — the $1M policy is what actually covers the broken window, not the LLC.
Licenses & permits. No federal license. What you need: a city or county general business license ($25-$100/yr). A few cities — Chicago, Boston, Seattle — require a separate window-washing permit over a certain height. Check before taking a 4-story job. A $10K janitorial bond ($100-$200/yr) isn't legally required but commercial accounts will ask.
EIN. Apply free at IRS EIN Online. Free at the IRS — never pay a third party for an EIN.
Insurance — non-negotiable from day one. Cleaning median for $1M / $2M GL is $44/mo ($525/yr) per Insureon. Hiscox starts at $29.17/mo. Tell the underwriter you do exterior up to 2 stories — they'll quote that band. Going above 2 stories without telling them voids the policy.
Labor & employment. Calling a window cleaner you control day-to-day a 1099 contractor (independent contractor — you don't withhold tax or carry workers' comp) when they should be a W-2 is the most-litigated issue in cleaning. The federal DOL economic-realities 6-factor test governs, and plaintiffs can sue under it even where DOL isn't enforcing. California's AB5 ABC test makes 1099 cleaning almost impossible to defend. Once you have one W-2 employee, workers' comp is mandatory in CA, NY, PA, IL, and most other states. Florida only kicks in at 4 non-construction employees. Texas is the only opt-out state.
Sales tax. 17 states plus DC tax cleaning per ISSA. California doesn't tax window cleaning. Texas taxes both residential and commercial (Texas Comptroller Pub 94-111). Florida taxes commercial at 6%, not residential. New York taxes both.
Marketing & First Customers
Forget the digital playbook for the first 30 days. Window cleaning is a walking-down-the-block business — your first 10 customers come from showing up at their door with a clipboard. Thumbtack charges $15-$50 per cleaning lead per Thumbtack help, and Google Local Services Ads average $28/lead per LocaliQ. Both convert badly for a brand-new pro with no reviews.
Channels that work for this idea:
- Walk the strip. Pick a retail block of 30-40 small businesses. Walk it Tuesday at 9am with business cards and a price sheet. Talk to the owner, not the cashier. Quote on the spot. Expect 2-4 yeses out of 30.
- Restaurants in the morning, retail in the afternoon. Restaurants are dead before 11am. Retail is dead between 1pm and 3pm. Walking in at lunch rush gets you ignored.
- Nextdoor Business — free Business Page plus about 2 free posts a month. Paid Neighborhood Sponsorships run $32-$150/month per zip per Nextdoor for Business.
- Door hangers in two-story neighborhoods — 500 hangers at GotPrint or Vistaprint (~$80). Walk streets with second-story windows. Skip ranches and townhouses; both are easy DIY.
- Google Business Profile + 5 reviews — set up the free profile in week 2. After 5 reviews, you start showing up on Google Maps for "window cleaner near me."
Your first 10 customers. Walk the strip Tuesday morning with a clipboard. Quote each business at $50-$80 per visit, monthly. Hand them a card and a written quote. About 1 in 8 says yes the first week, 1 in 5 by week three. After a month you've got 6-10 monthly accounts — a half-day route paying $400-$700.
First 90 Days
- Week 1 — Buy the kit. Werner 24-foot ladder ($180), Ettore squeegee handle plus three rubber refills ($35), 6 microfiber towels ($25), 12-inch scrim ($15), bucket-on-belt with strip washer ($45), Dawn and distilled water (~$10). Don't buy a water-fed pole until job 50.
- Week 1 — Get GL quotes from Hiscox, Next Insurance, and Thimble for $1M / $2M. Tell them you do up to 2-story exterior. Pick the cheapest with same-day binding.
- Week 1 — Set up Square (free) and a Google Voice business line ($0). Don't use your personal cell — restaurant owners call early and late.
- Week 2 — Practice on your own house. Time yourself. Take before/after photos for your portfolio.
- Week 2 — Walk a target retail strip Tuesday morning with 50 price sheets. Target: 2 commercial accounts booked.
- Week 3-4 — Run your first commercial visits. Ask for card-on-file. Target end of month 1: 4-6 commercial plus 1-2 residential = ~$700-$1,000 booked.
- Week 4 — Open a separate business checking account at Mercury, Bluevine, or a local credit union.
- Week 6 — Print 500 door hangers and walk two zip codes of two-story homes on a Saturday. Target: 8-10 commercial plus 3-4 residential = ~$1,500-$2,200 monthly recurring revenue (MRR).
- Week 8 — Set up a Google Business Profile. Ask your first 5 customers for a review. File your LLC and apply for an EIN. Target: ~$2,500-$3,000 MRR.
- Week 10 — Drop the worst-fit account. Anything over 15 minutes between commercial stops is a margin killer.
- Week 12 — Pitch 2 property managers (2-4 story office buildings) on a monthly contract. Target: ~$3-$3.5K MRR by end of month 3.
Common Pitfalls
Quoting hourly instead of per-pane or per-visit. Hourly punishes you for being good — clean fast, earn less. Fix: Quote a flat per-visit price on commercial after a 5-minute look. Quote per-pane on residential ($4-$8 in/out, $2-$4 outside-only) until job 30. Always written.
Climbing past 2 stories without telling your insurer. Standard cleaning GL underwrites ground-level and up-to-2-story. The minute you take a 3rd-story job, you're uninsured if you fall — and your customer is uninsured if a ladder breaks their car. Fix: Tell the underwriter the height range you work. Pay the bump for 3-story. Refuse anything taller in year 1.
Taking residential one-offs across town. A $200 house 25 minutes away earns about $40/hr blended (averaged across drive plus work time) versus $90/hr blended for one 5 minutes away. Keep drive time under 40% of total work time, per Spring Green Franchise route-density math. Fix: Cluster commercial in one strip per day. Take residential only in zip codes you already have a commercial account in.
1099-ing your first hire — especially in California. Calling a cleaner you control day-to-day a 1099 is the most-litigated issue in cleaning. Plaintiffs sue under the federal economic-realities test, and AB5's ABC test makes it almost impossible to defend in California. Fix: Hire your first cleaner W-2. Carry workers' comp. Pay the premium — it's cheaper than the lawsuit.
Skipping the contract on commercial. No paper means a restaurant cancels in month 4 with no notice and $300/mo of expected revenue is gone. Fix: Use a one-page service agreement — 24-hour cancellation, scope of work, card-on-file authorization. Free templates from Jobber's resources library work fine.
Buying a $1,200 water-fed pole on day one. Great at job 200 — they reach a 3rd story from the ground. But they need a deionized water source, a pump cart, and 50 hours of practice. Customers notice nothing different on a 1-story job. Fix: Run a squeegee and ladder for the first 50 jobs.
Get your full launch plan — take the free 60-second quiz.