Skip to main content
For HVAC contractors

HVAC dispatch software for residential service teams

Simple Scheduler handles emergency dispatch, technician skill matching, parts-on-the-truck routing, maintenance-contract regeneration, and seasonal capacity swings for residential HVAC service teams of three to twenty technicians.

HVAC dispatcher routing technicians on the live dispatch board

A typical HVAC dispatch day: scheduled tune-ups on tech 1, an install on tech 2, on-call capacity reserved.

Built for residential HVAC, not generic field service

Residential HVAC is its own dispatch model. The day mixes scheduled tune-ups, recurring maintenance contracts, emergency no-heat calls in January, and emergency no-AC calls in July, often inside the same hour. The dispatcher's job is not to plan the calendar ahead of time, it is to react to it in real time as new calls land, technicians finish early, parts run out, and a customer's daughter calls back to say her elderly mother is without heat at twenty-eight degrees. Generic field service tools are tuned for long-visit, low-density work and they fight you the moment the day stops going to plan.

Simple Scheduler treats dispatch as a live craft separate from scheduling. Scheduling sets the day's plan; dispatch is the moment-by-moment reroute, reassign, and triage that happens once trucks are rolling. The dispatch board shows every active job, every technician's current location, every remaining stop, and every truck's parts loadout in one view. When the 2:47pm no-heat call comes in, the dispatcher sees who is available, who is qualified, and who is closest, and assigns the job in seconds rather than spending five minutes hunting through tabs and texts.

The board is built around manual override on every automated decision. Automation proposes the nearest qualified technician; the dispatcher confirms, overrides for a customer-preferred tech, or swaps in someone whose afternoon has just opened up. That mix of rules and judgment is the actual job of HVAC dispatch, and the software has to respect it instead of fighting it.

HVAC technician working on a residential air handler with the day's calls on the phone

Emergency vs scheduled work, in one board

A no-heat call in January and a spring tune-up in April are the same calendar entity at the wrong altitude. They are different jobs. Simple Scheduler classifies every incoming call as P0 (emergency, life or property at risk), P1 (urgent, same-day response required), P2 (standard, scheduled within the next available window), or P3 (planned, booked into the maintenance-contract rotation). The dispatch board surfaces each priority differently, with P0 jobs always at the top and visually separated from the planned work below.

When a P0 call lands, the board evaluates every available technician on five dimensions: proximity, skill match, current workload, equipment on the truck, and SLA risk to other customers. The dispatcher sees the top recommendations with the reasoning visible (this tech is eighteen minutes away, has the right certification, has the part on the truck, and will only displace one standard visit) and confirms in a click. The customer gets an automatic ETA notification, and the displaced standard visit rebalances into the same tech's next open slot or moves to a peer who is available.

For P2 and P3 work, the calendar runs the day's plan as usual: morning routes are loaded the night before, technicians open the app and see their day in order, and the office watches GPS updates and arrival statuses without anyone sending a text. The emergency rebalance and the scheduled day live in the same workspace, not in two different systems someone has to manually reconcile.

Technician skill matching and certification

Sending the wrong technician to the wrong job is one of the most expensive mistakes an HVAC company makes. A residential comfort tech dispatched to a commercial RTU means a callback. A junior tech assigned to a chiller teardown means wasted hours and a second truck roll. An EPA Type I-certified tech sent to a high-pressure system that requires Type II is a compliance problem. Simple Scheduler treats skill matching as a first-class rule, not a manual reminder.

Each technician's profile carries their certifications (EPA 608 Type I, II, III; NATE Comfort, Heat Pump, Commercial; manufacturer-specific authorizations), their equipment experience tags (residential split, commercial RTU, heat pump, ductless mini-split, boiler, gas furnace, electric furnace), and their first-time fix rate by equipment category. The system blocks assignment to jobs whose required certifications the tech does not hold and alerts managers before any credential expires.

The dispatch board uses skill match as a hard constraint and proximity, workload, and equipment-on-truck as soft constraints, weighted by job type. For a P0 emergency on a residential heat pump, the highest-FTFR heat-pump-certified tech who is closest wins; for a P3 maintenance visit, the system favors load balancing so no technician is overbooked. The dispatcher sees the reasoning, can override for a customer-preferred tech or a parts constraint, and the assignment stays auditable.

Parts on the truck and the first-time fix rate

Industry-average first-time fix rate sits in the seventy to seventy-five percent range. Each callback costs the business labor, fuel, admin overhead, and the revenue from the job the technician could have completed instead. Simple Scheduler surfaces parts on the truck as a dispatch input so the system can match a job's likely parts list against what is on the assigned tech's vehicle before the truck moves.

When a technician fills out the intake checklist on a call (model, serial, symptom), Simple Scheduler suggests the parts that are most often needed for that combination, flags whether they are on the tech's truck, and (when they are not) prompts a parts run to the warehouse or a swap to a peer whose truck has the part already loaded. None of this is automation that fires without a human in the loop, it is a decision support layer that gives the dispatcher and the technician faster, more accurate context.

The result is a measurable FTFR lift over the first ninety days of adoption, and a callback rate that compresses toward the industry-leading two to two-and-a-half percent. Every callback prevented is a billable job won back.

Maintenance contracts and seasonal demand

Annual maintenance contracts are the foundation of a stable HVAC operation. They smooth out shoulder-season revenue, anchor the customer relationship, and create preferential-dispatch opportunities during peak demand. Simple Scheduler stores each contract on the customer record with the included service list (spring AC tune-up, fall furnace inspection, mid-summer filter swap), the equipment installed, and the renewal date.

Contract visits regenerate automatically on the rotation, with the right service type pre-selected and the right time window. Members get a member badge on the dispatch board so when the no-heat call comes in at 9pm in January, the dispatcher sees the contract status at a glance and routes the response accordingly. Renewals fire sixty days before expiration with a one-click renew action that keeps the rotation intact and the billing cycle uninterrupted.

Seasonal demand is its own discipline. HVAC volume can triple between a mild April and a July heat wave or a January cold snap. Simple Scheduler supports seasonal technician profiles (additional crews activate when temperature triggers fire), expanded daily slots during peak weeks, and a configurable emergency capacity buffer (reserve fifteen percent of slots in shoulder season, thirty percent in extreme weeks). The day a heat wave hits, the dispatcher is rebalancing routes rather than rebuilding the calendar from scratch.

Customer reminders, arrival windows, and on-the-way

HVAC customers expect tighter communication than most service trades. A two-hour arrival window is the default, and an on-the-way message fifteen minutes before arrival is the difference between a calm interaction and a frustrated one. Simple Scheduler fires reminders the day before (confirming the appointment, the window, and any prep), the morning of (final confirmation), and on-the-way (with GPS-driven ETA) without anyone in the office sending a text.

The reminder language is yours. For emergency dispatch, the message is shorter and more reassuring; for scheduled tune-ups, the message is more detailed and includes the prep list (clear the access to the air handler, keep pets in a separate room). For maintenance-contract members, the message acknowledges their plan and the included service. The system handles the cadence; you handle the voice.

Pricing for HVAC contractors

Simple Scheduler is per-technician, not per-user. Office users (dispatchers, owners, bookkeepers, CSRs) are free, and the price scales by how many techs you dispatch. That keeps the cost predictable as your office team grows alongside the field team. See the live tiers and the included features on the pricing page.

Most three-to-five-tech residential HVAC shops land inside the lowest paid tier. Six-to-fifteen-tech operations step up at the point where the dispatch board, the skill matching, and the seasonal capacity tools start preventing more callbacks per month than the platform costs. Sixteen-plus-tech contractors live in the team tier where commercial billing, multi-location dispatch, and the customer portal start shipping meaningful operational leverage on top.

HVAC dispatch FAQ

The five questions HVAC contractors ask before adopting a dispatch platform.

Most residential HVAC companies on three to twenty technicians use a dispatch board that handles emergency vs scheduled call triage, technician skill matching (residential split vs commercial RTU, EPA Type I vs Type II), maintenance-contract regeneration, and seasonal capacity swings. Simple Scheduler is built for that shape, with manual override on every automated decision so a dispatcher can place a customer-preferred tech regardless of distance.
Start today

A dispatch board that survives the busy season.

Start a free workspace, import your tech roster, and try a same-day emergency reroute on the live board.