A carpet cleaning contract should cover the rooms and square footage, the cleaning method, the price, honest stain-and-shrinkage limitation language, dry time, access, payment terms, a cancellation policy, and a satisfaction or re-clean clause β signed before you start. The single clause that prevents the most complaints is the one that says plainly which stains and conditions you can't guarantee.
We build websites and lead systems for cleaning companies β and we run our own cleaning company in Tucson β so this is a practical field checklist, not legal advice. Below is a clause-by-clause guide to what protects you and the customer, plus the honest take on when a signed work order is all you need.
List the rooms and square footage, and name the method β hot-water extraction, low-moisture encapsulation, bonnet. "Clean the carpets" invites argument over what was included; a room list with a method does not.
Per-room or per-square-foot rate, plus add-ons like pet treatment, stain protector, and stairs as separate lines. Surprise upcharges at the door are a top complaint, so put every charge in writing first.
The most important clause. State that old, set-in, dye-based, or bleached stains may not come out, that results depend on carpet age and condition, and that some risk of shrinkage or browning exists on older carpet. Have the customer initial it.
Expected dry time, airflow, and any furniture moving. Parking, water and power access, and who moves the heavy pieces. Setting dry-time expectations prevents the "still wet" call hours later.
Your notice window and any fee for last-minute cancellations. A no-show that wastes a route slot costs you real money, so the policy protects your schedule.
Offer to re-clean any area the customer is unhappy with rather than guaranteeing every stain. It stands behind your work without promising an outcome you can't control on a 15-year-old carpet.
The cleanest way to avoid a complaint is to walk the home with the customer, note pre-existing damage, permanent stains, and pet areas on the work order, snap a quick photo of the worst spots, and have them initial. A documented before-state turns "you didn't get this out" into a conversation about a stain you both saw and flagged. Guarantee your effort and workmanship β not a specific result on every stain.
Honest take from people who run a cleaning company: you don't need a long contract for every job.
The contract sets the job β our part is filling the route. We run our own cleaning company in Tucson on the exact stack we sell: a site that shows before-and-after photos, reviews, and clear pricing, with an AI assistant that captures room count, carpet type, and stain concerns and books the appointment around the clock. More booked slots, fewer leads lost to voicemail.
Plans: $249/mo (site, AI lead capture, hosting), $597/mo (adds the SEO content engine and lead attribution), and from $1,750/mo (adds a custom CRM and reputation automation). Month-to-month, you own everything, free working demo in 48 hours.
Related: carpet cleaning website design, carpet cleaning SEO, carpet cleaning invoice template, websites for cleaning companies, and lead generation.
We don't post stock testimonials. On a 15-minute call we screen-share the real dashboards behind our own businesses — live leads, rankings, and the exact page that produced each one. See the proof →
Set expectations in writing before you start. Note pre-existing damage and permanent stains on the work order, photograph the worst spots, and have the customer initial. A documented before-state turns a complaint into a flagged, agreed condition.
Guarantee your workmanship and effort, not every stain. Old, dye-based, or bleached stains may never come out. A re-clean satisfaction clause stands behind the work without promising an outcome you can't control.
For a single residential clean, a signed work order with scope, price, and stain limits is usually enough. A full contract matters more for recurring commercial accounts. Either way, get sign-off before you start.
Send your company name and city β we'll confirm your market is open and build a working demo within 48 hours. Free, no card, no commitment.
Prefer email? [email protected]