The most valuable number in a contracting business is not your hourly rate. It is the share of paid hours that are actually billable.
A technician on the clock forty hours a week commonly produces around thirty billable hours.
The missing quarter is drive time, supply house runs, loading and unloading, cleanup, warranty callbacks and waiting for access. None of it is laziness and none of it can be eliminated. But most of it responds to scheduling, which is the only lever that improves the ratio without anyone working longer.
The short answer
Stop treating the calendar as a queue to be filled in the order enquiries arrive. Group work by area, batch the errands, and hold back capacity for the urgent work you know is coming. Those three changes typically recover several billable hours a week per person and cost nothing.
Cluster by geography
The largest gain, and the one most small contractors do not do because jobs get booked in the order they are requested.
The problem: a day with jobs in three directions spends more time in the van than on the tools. Two hours of driving is two hours nobody pays for, and it happens because each job was scheduled when it was booked rather than where it was.
The fix: assign areas to days. North end Monday and Thursday, south end Tuesday and Friday, whatever matches your map. When someone books, they are offered slots in their zone.
Handling the objection: customers accept this far more readily than contractors expect, because it is presented as availability rather than as a constraint. "I'm in your area Tuesday and Thursday next week, which suits better?" is a normal question. Nobody hears it as a limitation.
When to break it: genuine emergencies, and high-value work that justifies the trip. The rule exists to be applied by default, not absolutely.
By the numbers
Work out your own number before deciding how much this matters. For two weeks, have everyone log hours as billable or not. The ratio is almost always worse than the guess, and the split between drive time and everything else tells you whether clustering is your biggest lever or whether something else is.
Batch the errands
The second largest and the least visible.
A supply house run mid-morning costs roughly an hour of billable time plus fuel, and it is almost never charged to anyone. Three of those a week is most of a working day per month, per person.
What reduces them:
Order the night before. Materials picked up on the way to the first job rather than fetched from the middle of it.
Stock the van with your common consumables. The items you fetch repeatedly are a list, and holding them costs less than fetching them.
Have one person collect for several jobs, rather than each technician making their own trip.
Use supplier delivery where it exists. Many will deliver to site for jobs above a threshold, and contractors routinely drive instead out of habit.
Track which items cause the runs. After a month the pattern is obvious and it is usually four or five items.
Protect a buffer
Counterintuitive, and it is what separates a schedule that holds from one that collapses by Wednesday.
A calendar with no slack absorbs every disruption by pushing scheduled work. One emergency displaces a booked customer, who is now rescheduled, and the reschedule is what generates the complaint. Not the delay itself; being moved after being promised.
Hold a defined slot. For trades with genuine emergency demand, a slot each day that is not sold. When it is used, the next urgent call is booked for tomorrow rather than displacing someone who has already waited a week.
Build in travel and setup properly. A job estimated at three hours is not a three-hour slot. Underestimating this is what causes the day to run late from mid-morning onward, and the last customer is the one who suffers.
Stop at the end of the day. A homeowner posted about a painter who repeatedly stayed past 9pm, saying he was almost finished, and eventually sat down to eat dinner beside her. It drew over four hundred upvotes because it is a recognisable failure. Overrunning is usually a scheduling problem presented as dedication, and customers experience it as an imposition rather than as good service.
Windows, and keeping them
The most common complaint about trades has nothing to do with the work.
Give a narrow window you can keep. A two-hour window honoured beats an all-day window every time, and it beats a one-hour window missed by considerably more.
Text on the way. Free, and it removes most of the anxiety that produces the chasing calls that interrupt whoever is answering the phone.
Tell them early when you are running late. A customer told at 9am that you will be there at 2pm instead of 11am is inconvenienced. One who finds out at 11:30 is annoyed, and the difference is entirely in the warning rather than the delay.
Confirm the day before. A no-access visit is a wasted slot and a wasted drive, and it is preventable with one message.
Scheduling only helps if the enquiries arrive in the first place, and if what happens between enquiry and booking is fast. Our free check looks at whether your site can capture a request, whether it can be booked without phoning, and where it lands. Twenty checks, about fifteen seconds.
How far ahead to book
There is a wrong answer in both directions.
Too short and the crew has gaps, which pushes you toward accepting badly priced work to fill them.
Too long and you lose jobs to whoever is available sooner, and you accumulate cancellations. A customer who booked eight weeks out has had eight weeks to find someone else, and a meaningful share do.
Three to four weeks suits most trades. Long enough for stability, short enough that customers do not go looking.
Booked out for months is not the achievement it sounds like. It usually means one of two things: prices are too low, so demand exceeds capacity at your rate, or the schedule is inefficient and consuming more days than the work requires. Both are worth checking before celebrating, and the first is addressed in how to raise prices without losing customers.
Sequencing the work itself
Smaller gains that compound across a week.
Hardest job first. Energy and daylight are both finite, and the job most likely to overrun should not be the one starting at 3pm.
Group by type where you can. Three similar jobs in a day beats three different ones, because setup and mental context carry over.
Do not schedule anything complex on a Friday afternoon. If it goes wrong, nobody is available to help and the customer has a weekend to think about it.
Leave return visits until you have several in an area. A single punch-list item on the far side of your service area is an hour of driving for ten minutes of work. Batching them is one of the easiest hours to recover.
Front-load the season. For seasonal trades, work booked before the rush arrives is work delivered at your convenience rather than during the weeks when everything happens at once. That timing argument is in the best time of year to advertise HVAC.
When a system beats a memory
A judgement call, and both errors are common.
A written convention and a shared calendar is enough for a solo operator or a two-person business. Software adopted early is usually abandoned, because entering data is slower than the way one person already works.
You have outgrown memory when a second person needs to dispatch without asking you, when jobs are being double-booked or forgotten, when you cannot answer what someone is doing on Thursday without checking a phone, or when the person who knows the schedule going on holiday is a problem.
The signal to watch for is the same one that decides every tooling question in a small business: if entering the information is slower than the way people already work, they will keep working the way they already do, and you will pay for an empty database.
Estimating job length honestly
Scheduling is only as good as the durations it is built from, and most contractors estimate optimistically in a consistent direction.
The pattern: you remember the time on the tools and forget everything around it. Parking, carrying in, protecting the area, the conversation with the customer, cleanup, loading, and the drive to the next job. A three-hour job frequently occupies five hours of a working day.
Record actuals for one month. Job type, estimated hours, actual hours from arriving to leaving. Twenty jobs is enough to see the bias, and it is almost always in the same direction and roughly the same size.
Then apply the correction rather than trying to be better at guessing. If your estimates run 30% short, add 30%. Attempting to estimate more accurately by willpower does not work; adjusting a known bias does.
Build slot lengths from the corrected number. A schedule built on optimistic durations fails by mid-morning, and every subsequent customer that day inherits the delay.
Separate the two questions. How long the work takes is one number. How long the slot needs to be is a different one, and it includes travel, setup and the reasonable chance of something unexpected. Conflating them is what produces days that run late from the second job onward.
The reschedule problem
One behaviour costs more reputation than any other scheduling decision, and it is usually a symptom rather than a cause.
Moving a booked customer is the most damaging thing a schedule does. Not being busy, not a long lead time, not a two-hour window. Being promised a day and then losing it.
It happens for three reasons, and each has a different fix.
A job overran. The estimate was optimistic and everything downstream slid. Fixed by estimating against recorded actual hours rather than intentions, and by building travel and setup into the slot rather than treating them as free.
An emergency was absorbed. Fixed by holding a buffer, so urgent work occupies capacity that was never sold rather than displacing someone who has already waited.
Materials did not arrive. Fixed by confirming delivery before booking the slot rather than after, which is a five-minute check that prevents an entire wasted day.
When you do have to move someone, the difference between an irritation and a complaint is warning. A customer told two days ahead is inconvenienced. One told on the morning has taken time off work for nothing, and that is the version that ends up in a review.
Move the same customer twice and you have lost them, regardless of how the work turns out. Worth treating a second reschedule as a decision requiring a reason rather than as an administrative act.
What to measure
Three numbers, monthly, and the first is the one that matters.
Utilisation. Billable hours divided by clocked hours, per person. This is the headline and it is the only one that translates directly into money.
Drive time as a share of the day. Tells you whether clustering is working.
Jobs completed per day, by type. Rising with stable quality means the scheduling changes are landing. Rising with more callbacks means you have bought speed with rework, which is not a gain.
Track them for a quarter before and after any change. Scheduling improvements are gradual and easy to abandon, because no single day feels different; the difference appears in the monthly total.
And the honest framing: recovering five billable hours a week per person is the equivalent of a meaningful rate increase, achieved without asking any customer to pay more. That is unusual, which is why it is worth the attention it rarely gets. The wider version of that arithmetic is in why am I busy but not making money.
