It’s Monday at 7:42 AM. Your framer was supposed to be on site at 7. He isn’t. He isn’t answering his phone. Your demo crew is standing around eating breakfast burritos and burning $185 an hour in idle labor. Your PM is dialing every framer in his contact list. The homeowner is texting wanting to know why nobody is there.
This is the most expensive 40 minutes of your week. It’s also entirely preventable.
Why subs no-show
Subcontractors aren’t no-showing because they don’t want to work. They’re no-showing because they got scheduled three weeks ago, you texted them once five days ago to confirm, they meant to reply, life happened, and Monday morning they’re standing in their driveway holding two job tickets thinking “did I confirm the Hendricks job or the Kowalski job for today?”
That’s not flakiness. That’s a confirmation failure. The fix is a confirmation system that doesn’t depend on the sub remembering to reply to a text.
The night-before confirmation workflow
This is one of the twelve workflows in Construction Snapshot for GHL, but the logic transfers cleanly to any system. Here’s the structure.
Trigger: any subcontractor is scheduled on the job calendar with a start time in the next 18 hours.
Step 1 — 5 PM SMS. The system sends an SMS to the sub: “Hey {{sub_first}}, you’re scheduled at {{address}} tomorrow at {{start_time}} for {{scope}}. Reply YES to confirm or call {{pm_number}} if anything’s changed.” Friendly, specific, includes the address (so they can’t say they didn’t know where to go) and a fallback channel.
Step 2 — 7 PM check. If the sub has not replied YES (or any positive variant — Y, yes, yep, confirmed, the system parses for it), the PM gets a phone call. Not a notification. An actual ringing phone. The PM either calls the sub directly or escalates to the owner.
Step 3 — 6 AM backup trigger. If the sub still has not confirmed by 6 AM the next morning, the system pulls the next sub from your “on-deck” list for that trade and sends the same scheduling SMS. This means by the time your crew arrives at 7 AM, you either have your primary sub confirmed or your backup on the way.
What “on-deck” means
The backup trigger only works if you have an on-deck list. The snapshot ships with a trade-keyed contractor object — each sub is tagged by trade (framing, electrical, plumbing, HVAC, drywall, paint, tile, cabinetry, finish, concrete, roofing, masonry) and has a “preferred” or “backup” status.
For each trade, you should have at minimum one preferred sub and two backups. We see contractors get into trouble when they have one framer they love and zero backups. The framer’s truck breaks down, the workflow can’t help you, and you’re back to dialing your contacts list at 6:15 AM.
If you don’t have backup subs for a trade right now, stop reading and go build that list. It’s the single most important resilience move in your business. The workflow is downstream of having the bench.
A Monday HVAC rough-in on a $220,000 addition
HVAC sub scheduled three weeks ago. PM sent a 'see you Monday' text on the prior Wednesday. No reply, but the PM figured silence meant yes. Monday 7:30 AM, no sub. PM dials — voicemail. Calls backup — backup is on another job. Burns 4.5 hours rescheduling, pushes inspection by two days, costs $1,140 in idle labor plus schedule slip.
HVAC sub gets the 5 PM SMS Sunday. Doesn't reply by 7 PM. PM gets the auto-call at 7:02 PM, dials sub, finds out his van is in the shop. PM activates backup at 7:15 PM Sunday. Backup confirms by 7:40 PM. Monday 7 AM, the right crew is on site. Zero downtime, zero schedule slip.
Push-back from subs
Some subs will initially complain about the nightly text. They’re used to being trusted. Here’s how to handle it: don’t have the conversation about the text. Have the conversation about reliability.
The honest framing is: “I’m sending this to every sub on every job because I need to know by 7 PM whether I’ve got a crew problem to solve. If you confirm by 7, you never hear from me again that night. If you don’t, my system is going to escalate. It’s not personal.” Most subs are fine with this once they understand the alternative is the owner calling them at 9 PM in a panic.
What this won’t fix
The workflow assumes you’ve already done the hard work of finding good subs and paying them on time. If you’re chronically late paying your electrician, no SMS workflow on earth will make him show up on Monday morning. The confirmation system is a coordination tool, not a relationship tool.
It also won’t fix scheduling conflicts that happen because you double-booked a sub three weeks ago and never noticed. That’s an upstream problem — make sure your scheduling tool of choice (we like the native GHL calendar with the snapshot’s trade-keyed availability layer) prevents double-booking at the source.
Where this lives in the snapshot
In Construction Snapshot for GHL, this workflow is under Sub Coordination → Night-Before Confirm. It uses the contractor custom object (also included) and the trade-keyed on-deck list. Install time is about 30 minutes, including pre-loading your initial sub roster.
If you ship one workflow this month and it isn’t the lead-response one from the 6-automations playbook, make it this one. The first Monday it saves you $500 of idle labor and a panicked homeowner call, you’ll wish you’d installed it last quarter.