You loaded up the truck. You drove 35 minutes across town. You pulled up to the address, knocked twice, waited, and got nothing. Checked your phone. No call, no text, no message. The customer just didn't show up.
It happens to every tradesperson. And most contractors think of it as an annoyance, a lost hour, a frustrating start to the afternoon. The truth is, no-shows are one of the most expensive recurring costs in the trades, and almost nobody is measuring them properly.
The real math on a single no-show
When a customer no-shows, the immediate loss is obvious: you didn't get paid. But that's only part of the picture. The full cost of a no-show includes several components most contractors don't add up.
Start with drive time. A typical service call involves 20 to 45 minutes of driving each way. At your billable rate, that's time you can't recover. If you charge $100 an hour, a 40-minute round trip costs you $67 in lost productive time, minimum.
Then there's fuel. The average contractor vehicle gets 14 to 18 miles per gallon loaded. A 20-mile round trip at current fuel prices runs $5 to $10. Not devastating on its own, but it adds up fast.
Then there's the blocked calendar slot. You held that time for this customer. You may have turned away another job to keep the slot. That opportunity cost can easily equal a full service call: $150 to $400 depending on your trade and job type.
Here's what the math looks like when you put it all together:
| Cost component | Plumber | HVAC tech | Electrician |
|---|---|---|---|
| Drive time (40 min at billable rate) | $67 | $67 | $80 |
| Fuel (20-mile round trip) | $8 | $9 | $8 |
| Blocked calendar opportunity cost | $180 | $200 | $225 |
| Vehicle wear and overhead | $15 | $15 | $15 |
| Total per no-show | $270 | $291 | $328 |
Two no-shows per week is over $27,000 a year in losses for a typical solo operator. Three per week pushes past $40,000. These are not outlier numbers. These are the operating costs of running a trade business without no-show protection.
How often no-shows actually happen in the trades
Service businesses across industries report no-show and last-minute cancellation rates between 10 and 30 percent of scheduled appointments. Healthcare, which has invested heavily in reminder systems and confirmation technology, still sees no-show rates averaging 18 to 23 percent nationally.
For tradespeople, the numbers are harder to pin down because most solo operators aren't tracking them systematically. But conversations in the r/Plumbing, r/HVAC, and r/electricians communities consistently report similar patterns: 1 to 3 no-shows or same-day cancellations per week is considered normal for a busy solo operator without a deposit system. That translates to a no-show rate somewhere between 8 and 20 percent of scheduled work.
Even at the low end of that range, the math is painful. At 10 percent no-shows on 30 scheduled jobs per month, you're eating 3 no-shows per month. At $270 per incident, that's $810 per month, $9,720 per year, gone.
Why call-ahead reminders don't fully solve it
The first solution most contractors reach for is better reminders. Call the day before. Send a text that morning. Research backs this up: automated appointment reminders do reduce no-show rates by 20 to 40 percent in service industries.
But "reduce by 40 percent" still leaves 60 percent of no-shows happening anyway. If you had 3 no-shows per month before reminders, you might have 1.8 after reminders. That's progress, but it's not a solution.
The reason reminders don't fully work is that they address the wrong cause. Some no-shows happen because customers forget. Reminders fix those. But many no-shows happen because the customer found another option, changed their mind, or simply doesn't have any skin in the game. A text message reminder doesn't change the calculation for a customer who has decided not to show up.
The only thing that actually works: financial commitment at booking
The no-show problem is fundamentally a commitment problem. A customer who booked for free has nothing to lose by not showing up. A customer who paid $100 toward their appointment has a reason to be home.
This is not a new idea. Hotels have required a credit card to hold a room for decades. Restaurants in high-demand markets now routinely charge deposits. Doctors and dentists increasingly require payment information to book. The reason these industries moved to this model is simple: it works.
A deposit doesn't guarantee perfect attendance. But it changes the customer's psychology. The person who paid $75 to hold a plumbing appointment is not the same person as the one who filled out a free scheduling form. The first customer has made a financial commitment. The second customer has made a preference.
The deposit doesn't guarantee the customer shows up. It makes not showing up cost them something.
How to set up a deposit policy without scaring customers away
Most tradespeople worry that requiring a deposit will reduce their bookings. The evidence doesn't support that fear. Research across service industries shows that 8 in 10 customers are comfortable paying a deposit when it's presented as a slot reservation rather than a fee.
The framing matters. "I require a deposit before I confirm appointments" sounds punitive. "I hold a slot on my calendar for you, and this deposit secures that time" sounds professional. The second version is accurate and it doesn't create resistance.
For service calls, the right deposit range is generally $50 to $150. You want enough that the customer thinks twice before not showing up, but not so much that it becomes a barrier to booking. For larger jobs, a higher deposit is both normal and expected.
GrabMySlot automates the entire deposit process. Customers click your booking link, pick a time slot, and pay the deposit as part of the same flow. You get a notification. They get a confirmation, SMS reminders at 48 hours and 2 hours before the job, and a calendar invite. If they cancel inside your cancellation window, the deposit stays with you automatically. You never have to have an awkward conversation about money.
The math at the start of this article shows that a single prevented no-show pays for months of deposit infrastructure. Two prevented no-shows per month and the tool has paid for itself many times over.
GrabMySlot is free to start. You pay 3% plus Stripe's standard payment processing fee only when you collect a deposit. Set up your booking page in under five minutes at grabmyslot.com.
