Draft
Tracking maintenance agreements so PM visits happen
Maintenance agreements only pay if the visits happen. Here is why the spring visits slip on a small shop, and a season rhythm that keeps them.
You sell a maintenance agreement because it is the closest thing an HVAC shop has to a paycheck that shows up on its own. The customer pays once or monthly, you owe them two visits a year, and the recurring line on your books is supposed to be the calm part of the business. For most small shops it is calm right up until it isn’t. The fall visits mostly happen because the phone is ringing anyway and you are in furnace mode. The spring visits are the ones that slip, and every spring visit that slips is an agreement quietly deciding not to renew.
Here is how most two- and three-person offices actually track them. There is a spreadsheet. It has a name, a start date, and maybe a checkbox for spring and fall. Somebody built it in January, kept it current through March, and has not opened it since. The agreements did not stop existing. The tracking did. And a maintenance agreement you are not tracking is not recurring revenue. It is a promise you are going to forget to keep, and the customer is going to remember that you forgot. Like the rest of the proof and getting paid guides, the fix is a record that keeps itself current instead of a file nobody reopens.
Why the spring visit is the one that slips
Nobody skips the spring visit on purpose. It slips because of how a small shop’s year actually runs.
Fall runs itself. The first cold snap lights up the phone, techs are already in furnaces every day, and the tune-up rides along with the service calls. Spring is different. Spring is when the install season is starting, the good techs are on changeouts, and the office is quoting new work instead of chasing a list of sixty-dollar coil cleanings. The maintenance visit is the least urgent thing on the calendar, so it is the thing that waits. It waits until the heat wave hits, and then it does not get done at all, because now the same customer is a no-cool emergency and you are triaging (the version of that morning is its own kind of bad, covered in first heat wave triage: 40 no-cools, 4 techs).
So the customer who bought a plan to avoid exactly this ends up sitting in a hot house waiting on an emergency call, having paid you in advance to prevent it. That is the moment the renewal dies. Not at the renewal date. Right there, in July, in the heat, remembering they paid for two visits and got one.
The math on a slipped season
Put a number on it, because the number is bigger than it feels.
Say you run a hundred agreements at $200 a year. That is $20,000 in recurring revenue, and the real value is the renewal, because a customer on a plan calls you first, buys their next system from you, and does not shop the coil cleaning around. Industry-standard math on a healthy plan book is that a renewed agreement is worth several times its sticker in downstream repair and replacement work over the years it holds.
Now let the spring visits slip on a third of the book. That is 33 customers who paid for two visits and got one. Some renew anyway out of habit. But say a third of them, eleven customers, quietly do not renew when the letter comes. You did not lose eleven $200 line items. You lost eleven relationships that each fed you a service call or two a year and were first in line for a $9,000 changeout when the system finally quit. One slipped season, priced at its full cost, is not a $2,200 problem. It is the front end of a five-figure hole that shows up two years later as a book that keeps shrinking and nobody can say exactly why.
And the cause was not the plan. The plan was good. The cause was a spreadsheet that stopped getting opened in March.
A season rhythm a two-person office can keep
The fix is not a bigger spreadsheet or a full dispatch system you have to feed. It is a rhythm small enough that a two-person office actually runs it. Four moves, tied to the calendar, not to whoever remembers.
Batch the book by season, not by sign-up date. You do not need to know each customer’s exact anniversary. You need two lists: spring visits and fall visits. Every agreement lands in one bucket or the other the day you sell it. Now the whole book is two campaigns a year, not a hundred separate reminders.
Set the spring reminder in the fall. The reason spring slips is that spring is busy when spring arrives. So do the scheduling work when you are not busy. In late winter, before install season, block the spring visits onto the calendar as real appointments. A visit that is already booked does not compete with a changeout quote for your attention. It is just already there.
Give each agreement a home the reminder lives in. The spreadsheet fails because the reminder and the work are in two different places, and one of them never gets opened. When the visit, the last readings, the customer’s one quirk, and the renewal date all live in the same place the tech is already looking, the reminder cannot get orphaned from the work.
Close the loop when the visit happens. A visit is only worth what you can prove. The tech shoots the nameplate and the readings on the way out, marks the visit done, and the agreement’s clock resets to next season. Now you can look at the book in one pass and see, without calling anyone, which spring visits are done and which are drifting. That single view is the whole game. It is the difference between knowing your book is current and hoping it is.
That last move leans on two habits worth building on their own: getting the tech to actually shoot the nameplate on every call, and being able to confirm the tech showed for the tune-up without calling him off a roof. The maintenance book is where both of those habits pay off, because a plan visit with no proof is a visit you will argue about at renewal.
None of this asks the customer to do anything. It asks your office to move the scheduling from the busy season to the slow one, and to keep the reminder in the same place as the work instead of in a file nobody opens. Small trades shops live or die on the recurring book. A visit that slips does not announce itself. It just shows up two springs later as an agreement that did not renew and a customer who remembers why.
Where the thread comes in
Give each maintenance agreement its own thread that remembers. The address, the equipment nameplate, last season’s readings, the customer’s one rule, and the renewal date all sit at the top where the office and the tech both see them. The spring visit is a task on that thread, booked in the fall, so it is on the calendar before install season buries it. When the tech runs the visit, the nameplate photo and the readings land on the task, the visit gets marked done, and the next season’s visit is already waiting. You open the book once and see which visits are current and which are drifting, without a single phone call. That is the record a spreadsheet was always pretending to be. We are new, so put one season of agreements on a thread and see if the spring visits stop slipping.
Crewmigo runs every job in a thread your crew already knows how to use, with the photo that proves it and a sign-off that closes it. One plan, one price a head. Subs ride free.
Start a job