A commercial HVAC company runs on break-fix. The phone rings when a unit fails and a tech goes out to fix it. Then the relationship goes quiet until the next failure, and the company re-earns the account one emergency at a time. The contract that would smooth all of it out is sitting in the company's own call history, uncounted.
Break-fix is a treadmill
A service company that lives on break-fix starts every month near zero. The trucks roll and the work is good, and none of it carries forward, because a customer with a working unit has no reason to call. Growth means hoping for more emergencies, which is a strange thing to root for, and the revenue swings with the weather and with luck.
The preventive maintenance contract is the way off the treadmill. It turns a customer who calls when something breaks into an account that pays every month and calls less, because the point of the plan is to catch the failure before it happens. Predictable revenue on one side, fewer 2 a.m. calls on the other.
The pipeline is the service history
The customers who should be on a maintenance plan are not a mystery. They are the ones already calling. A building that has had the same rooftop unit serviced four times this year is telling the company plainly that it needs a plan, and so is the property manager with three separate emergency invoices on file. The list of best maintenance-plan prospects is the company's own service log, sorted by how often each customer calls.
That list never gets pulled. The dispatcher closes the ticket and moves to the next call, the invoice goes out, and the pattern across a customer's year lives nowhere anyone looks. The owner remembers a few of the worst repeat callers and offers them a plan over coffee, and the rest stay on break-fix because no one counted.
Why the offer never goes out
Even when a company knows a customer calls a lot, the maintenance offer competes with the work. The person who could pitch the contract is dispatching trucks and chasing parts, and selling a plan is a deliberate conversation that needs preparation, so it loses to whatever is on fire today. The follow-up after a big repair, the natural moment to say this would have been cheaper on a plan, passes while the tech is already on the next job.
So the contract that would steady the business stays a someday project, and the company keeps re-earning the same accounts one failure at a time.
What a system changes
The build reads the service history and surfaces the accounts that earn a maintenance offer: the customers above a call-frequency or spend threshold, ranked. For each one it drafts the pitch grounded in that customer's own record, the four visits this year and the unit that keeps failing, and queues it for a person to review and send. The pipeline that was buried in invoices becomes a working list.
The company stops relying on the owner's memory of who calls a lot. The offers go out on the cadence the data sets, right after the repair that proves the point, instead of whenever someone finds a free hour.
Before you build it
Two things have to exist first. Service history tied to the customer and the equipment, so call frequency is something the system can count rather than something a dispatcher half-remembers. And a defined maintenance offer, meaning what the plan includes and what it costs the company to deliver, because a system cannot pitch a contract the company has not written down.
Start by pulling every customer with three or more service calls in the last year. That list is the contract pipeline the company already earned and never worked.
