The economics of a trade nobody buys twice a year
Air duct cleaning has an operational problem most home service trades do not: almost every caller is a first-time buyer of the service. They are not calling because they have a relationship with you. They are calling because someone in the house has allergies, because a renovation left dust everywhere, because a home inspector wrote a line item, or because they saw a coupon. They have no reference price, no idea what the process involves, and no loyalty.
As of August 2026, that combination makes the phone the single highest-leverage system in a duct cleaning business. The caller is shopping, uninformed, and ready to book with whoever sounds competent and available. The company that answers gets the job. The company that returns the call two hours later reaches a voicemail box belonging to someone who already booked with a competitor.
This guide covers the full operations stack for a duct cleaning company: answering, quoting, scheduling, dispatching, invoicing, and the follow-up that turns a one-time job into a customer record worth something. It is written for owner-operators running one to eight trucks, which is where the vast majority of this trade sits.
Where the money leaks
Before adding tools, be precise about the losses. In duct cleaning they cluster in five places.
Unanswered calls during production. A crew inside a house with a negative-air machine running cannot hear a phone and would not stop to answer it if they could. If the owner is on a truck, the business is unreachable for six to nine hours a day. The after-hours playbook applies here in an unusual way, because for duct cleaning "after hours" effectively includes the middle of the workday.
Quotes given as ranges too wide to close. "Somewhere between $300 and $900, depends on the house" is not a quote. It is an invitation for the caller to go find a company that will commit to a number. Wide ranges are usually a symptom of no structured price list rather than genuine uncertainty.
Bait pricing that produces cancellations at the door. The opposite failure mode. A $79 whole-house special that becomes $600 on arrival generates chargebacks, reviews you will spend a year outrunning, and crews who waste a drive on a refusal. The chargeback defense guide covers the documentation side of that problem.
Seasonal surges that overwhelm the same intake process. Spring allergy season and post-holiday renovation cleanups do not increase your ability to answer. They increase the number of calls that go unanswered. The seasonal call volume guide covers sizing intake for the peak rather than the average.
Customer records that die after one visit. Most duct cleaning companies cannot say who they cleaned for three years ago, which means their cheapest available lead source is invisible to them.
The stack, layer by layer
The functional stack for this trade has five layers. They can be five separate products or one platform; the argument for consolidating is laid out in all-in-one versus point solutions. What matters is that all five exist and that they share one customer record.
Layer one: the phone
Every duct cleaning lead is a phone call or becomes one. Form fills convert into calls, ads convert into calls, and referrals arrive as calls. The intake layer must do four things: answer within a few rings, identify what the caller needs, produce a real price, and place a booking on a real calendar.
An AI receptionist does this differently from a traditional answering service in one decisive way: it can read your actual price list and quote from it rather than taking a message. That distinction is the whole argument, and it is covered in whether an AI receptionist can quote prices from your price list. For duct cleaning specifically, the price list needs to be structured around what a homeowner can actually count.
Layer two: pricing that survives contact with a homeowner
Square footage is the wrong input. Homeowners guess it, deed records disagree with it, and it correlates only loosely with duct work. The inputs that produce a defensible phone quote are:
- Number of supply vents, which a homeowner can count in about three minutes
- Number of return vents, usually one to three
- Number of air handlers or furnaces, which determines whether this is one system or two
- Whether the dryer vent is included
- Whether there is any known mold, rodent, or post-fire contamination, which is a different job entirely and should route to a human
A price list built on those five inputs produces a quote with a narrow range, and narrow ranges close. It also supports an honest condition: the number holds unless the crew finds a materially different system on arrival, stated on the call and repeated in the confirmation text.
Layer three: the calendar
Duct cleaning jobs are long — typically three to five hours for a single-system home, longer for two systems — which makes calendar accuracy more consequential than in trades with thirty-minute calls. Two jobs stacked too closely means the second customer waits, and the second customer is the one who writes the review.
The booking layer needs job-type durations, not generic one-hour slots. A single-system whole-house clean, a two-system clean, a dryer vent add-on, and a coil service are four different durations. Booking software that treats them identically will generate a schedule that cannot be run.
Layer four: dispatch and the day
Once a day is booked, the crew needs the address, the vent count, the quoted price, access notes, and a way to mark en route. Customers of this trade are disproportionately home during the visit — it is not a service you can perform on an empty house — so arrival-window accuracy matters more than usual. The multi-tech dispatch guide covers the mechanics.
Layer five: money and the record
Invoice on site, take payment on site, and keep the customer record. Duct cleaning has a high rate of same-day payment because the customer is standing there, which makes payment links and on-site collection an easy win. Sync to accounting so the books are not a January project; the QuickBooks sync guide covers that path.
What each layer looks like manual versus automated
| Layer | Manual reality | Automated version | What changes |
|---|---|---|---|
| Call intake | Voicemail during production hours; callbacks in the evening | Answered on every call, 24/7, English and Spanish | Shopping callers stop reaching competitors first |
| Quoting | Verbal range or "we'll have to see it" | Structured quote from vent and system count | Fewer door cancellations, fewer underquoted jobs |
| Booking | Text thread with the owner, transcribed later | Slot placed on the live calendar during the call | No double-booked crews, no lost bookings |
| Dispatch | Morning phone call listing the day's stops | Crew sees address, vent count, price, access notes | Fewer wrong addresses and re-drives |
| Invoicing | Paper receipt, invoice mailed later | Invoice and payment link on site | Days-to-cash drops from weeks to same day |
| Follow-up | None; customer forgotten after the visit | Dated reminder plus review request | The customer list becomes a lead source |
Answering in two languages is not optional in most markets
Duct cleaning demand skews toward dense residential markets where a meaningful share of homeowners prefer Spanish. Losing those calls to a language barrier is losing them for free, since the caller will simply dial the next listing. The bilingual answering guide covers how a single intake line handles both languages without a second phone number or a second hire.
Where the leads come from, and why attribution matters here
This trade buys leads. Search ads, Local Services Ads, coupon mailers, and HVAC referral partnerships all show up in the mix, and they cost meaningfully different amounts per booked job. Most duct cleaning owners cannot say which of those produced last month's revenue, because the connective tissue — which call came from which source, and which call turned into a paid invoice — was never recorded.
Call tracking closes that loop by assigning a number per source and tying the resulting call to the booking and the invoice. The mechanics are in the call tracking and attribution guide, and the Google Ads specifics, including passing the click identifier through to the call record, are in phone call attribution for Google Ads. If you also run Local Services Ads, the LSA guide covers how those leads behave differently.
The payoff is not a dashboard. It is being able to kill the channel that costs $340 per booked job and move that budget to the one that costs $95. Without attribution you are averaging them together and calling it a marketing budget.
The follow-up nobody in this trade runs
Here is the asset most duct cleaning companies throw away. Every home you clean has:
- A dryer vent that genuinely should be serviced every one to two years
- An HVAC system that will eventually need a coil service
- A homeowner who has met your crew and has no reason to distrust you
- Neighbors on the same street with the same housing stock and the same ductwork
None of that gets used, because there is no customer record and no scheduled touch. The fix is unglamorous: capture the customer at intake, record the job, and schedule two automated touches — a review request within a day of completion, and a dated reminder at the interval that is honest for the service performed.
The review request is the higher-value one in the short term, because this trade's buyers are choosing from search results with no other signal to go on. The reviews guide covers timing and phrasing. The reminder is the higher-value one over three years, because reactivating a past customer costs nothing and closes at several times the rate of a cold search click.
Outbound follow-up is where this becomes systematic rather than aspirational. The platform's AI outbound follow-up can call or text past customers on a schedule you define — dryer vent due, quote never booked, invoice unpaid — which is follow-up on people who already know you, not cold prospecting. The pattern is covered in AI outbound follow-up for service businesses. Which tier includes outbound is listed on /pricing.
Handling the calls that should not be quoted
Some duct cleaning calls should never receive a phone price. Mold remediation, rodent infestation, post-fire smoke damage, and asbestos-adjacent older systems are different services with different licensing, different insurance exposure, and different pricing. An intake system that quotes those as routine duct cleaning creates a job your crew will refuse on arrival.
The correct behavior is a defined escalation: recognize the trigger words, stop quoting, capture the details, and route to a human with the full context. This is the same discipline that keeps an AI receptionist honest generally, and it is worth verifying during evaluation — the vendor evaluation checklist includes the questions to ask about how a system behaves when it does not know something.
What this costs and how to size it
Pricing for the platform is by call minutes, not by user or by truck, which suits a trade with lumpy seasonal volume. Core is $500 a month with 500 AI call minutes and $0.45 per minute after that. Pro is $750 with 1,000 minutes at $0.40 and adds call tracking and attribution. Elite is $1,200 with 2,500 minutes at $0.35 and adds the AI growth layer. All three are month-to-month, with zero setup fees and unlimited users.
To size it, take your actual monthly call count and multiply by three to four minutes, a realistic average for a quoting call in this trade. A company taking 150 calls a month lands near 500 minutes and fits Core. A company taking 300 lands near Pro. The plan-picking guide walks the arithmetic, and what AI operations actually cost sets it against the alternatives.
The comparison that matters is not against zero. It is against a part-time office person at roughly $2,000 a month who is unavailable evenings, weekends, and the exact spring weeks when the phone rings most. The in-house versus AI comparison runs that math properly.
A sequence that does not break the business
Do not deploy five layers at once. Order matters.
Weeks one and two: intake only. Point the existing number at the answering layer, load the price list keyed to vent and system count, and let it quote and capture. Change nothing else. Measure answered-call rate against the prior month.
Weeks three and four: booking. Connect the calendar with real job durations. Verify a week of bookings by hand before trusting them.
Month two: dispatch and invoicing. Move crews onto the job record and start invoicing on site.
Month three: attribution and follow-up. Add tracking numbers per source, then turn on review requests and reminders once there is a clean customer record for them to run against.
If you are moving off an existing system, the migration guide covers the cutover sequence that protects the calendar during the switch. If you run more than one service area or brand, the multi-location operations guide covers keeping them separate without running two of everything.
The dryer vent business hiding inside the duct business
One more structural point specific to this trade, because it changes the economics of the whole operation.
Dryer vent cleaning is a genuinely recurring service on a one-to-two-year cycle, it is fast, it carries a healthy margin relative to the time it consumes, and it is a real safety service rather than a manufactured reason to call. Almost every whole-house duct cleaning customer is also a dryer vent customer, and most duct cleaning companies sell it once as an add-on and never again.
Treated deliberately it becomes the recurring layer the trade otherwise lacks:
- Offered as a same-visit add-on at intake, where the marginal cost is minutes rather than a drive
- Recorded on the customer record with a due date, not left to memory
- Surfaced automatically at the interval, by text first and a call if the text goes unanswered
- Routed into gaps in the schedule, since a short job fills the space a four-hour job cannot
The scheduling point is the underrated one. A duct cleaning day has awkward remainders — ninety minutes at the end of an afternoon that will not hold another whole-house job. Dryer vent work fits exactly there, which turns dead time into billable time without adding a truck. That shows up directly in revenue per technician per day, the metric that tells you whether an operation is actually improving rather than just busier.
Two practical guardrails. Do not bundle it invisibly into the duct price, because customers who do not know they bought it will not know to buy it again. And be honest about the interval — a household of two that runs a dryer twice a week is not on the same cycle as a family of six, and quoting one interval for both trains customers to ignore the reminder.
Where a second truck actually pays for itself
Owners in this trade usually add capacity by feel: the schedule looked full for a few weeks, so a truck got added. Then the calendar softens and the truck idles.
The honest trigger is not a busy stretch. It is a booked-out window that stays long enough to cost you jobs. If callers are consistently being offered a slot ten or more days out during a non-peak month, you are losing the shoppers — this trade's callers rarely wait that long. If the ten-day backlog only appears in March and April, that is a seasonal staffing problem rather than a permanent-capacity one, and the seasonal call volume guide covers handling it without a year-round hire.
The measurement that settles it is answered calls that did not book because of availability rather than price. Once every call is answered and every quote is recorded, that number is visible instead of anecdotal — which is the quiet reason the intake layer usually pays for itself before any of the downstream layers do.
The measurement that tells you it worked
Two numbers. Answered-call rate, which should move from wherever it is toward the high nineties within the first month, and booked jobs per hundred calls, which should rise as quoting gets consistent. Everything else — revenue, review count, cost per booked job — follows from those two.
If answered-call rate rises and bookings do not, the problem is the price list, not the phone. That is a good problem, because it is fixable in an afternoon.
Ready to size it against your actual call volume? Talk to us, or start with /pricing to see which tier fits.



