How to automate appointment scheduling: the no-show problem
Booking is the easy part. Reminders that actually reduce no-shows, buffers and availability that reflect reality, and the cancellation policy the automation enforces on your behalf.
On this page
- What we'll cover
- What an empty booked slot costs
- Availability that reflects reality
- Reminders that change behaviour
- Building it with CodeWords
- Cancellation, rescheduling and the policy
- Filling the gap when somebody cancels
- What the booking flow should ask
- What happens after the appointment
- Making it survive
- Limits worth knowing about
- What to build first
- Frequently asked questions
- Related reading
Putting a booking link on your site takes an afternoon. The thing that determines whether automated scheduling is worth it is what happens between the booking and the appointment, because an empty slot that was booked costs more than one that was never filled — you turned other people away for it.
No-shows, late cancellations and double bookings are the actual subject. They are largely solvable, and the solutions are specific rather than a matter of sending more reminders.
What we'll cover
- What an empty booked slot costs
- Availability that reflects reality
- Reminders that change behaviour
- Building it with CodeWords
- Cancellation, rescheduling and the policy
- Filling the gap when somebody cancels
- What the booking flow should ask
- What happens after the appointment
- Making it survive
- Limits worth knowing about
- What to build first
- Frequently asked questions
What an empty booked slot costs
It is worse than an unfilled one, because you declined other bookings to hold it.
Staff time is committed whether or not the person arrives, and for most service businesses that is the dominant cost.
Preparation is wasted, which for some appointment types is substantial.
It cascades. A late cancellation cannot be refilled at short notice through the ordinary booking flow.
The rate is not uniform. New customers, first appointments, free consultations and bookings made far in advance all no-show at higher rates, and knowing your own distribution is what tells you where to intervene.
Measure it first, by appointment type and by lead time, before changing anything — most interventions are aimed at the wrong segment.
Availability that reflects reality
Read the actual calendar, not a set of nominal opening hours, or you will double book.
Check every relevant calendar where a person has more than one.
Buffers before and after, which is the most commonly missing setting and the reason schedules run late by mid-morning.
Travel and setup time for anything not happening at a desk.
Cap the day. A person with eight consecutive appointments will deliver the last two badly, and a daily maximum is a quality decision rather than a capacity one.
Set a minimum notice. A booking for twenty minutes from now is usually a mistake and occasionally an emergency, and which one should be an explicit decision.
Reminders that change behaviour
More reminders is not the answer past a certain point; better-placed ones are.
One well before, giving time to reschedule if it no longer works, which is the reminder that actually recovers the slot.
One shortly before, as the practical prompt.
Make rescheduling easier than ignoring. A reminder with a one-tap reschedule link recovers slots that a reminder with only the details does not.
Ask for confirmation where no-shows are costly, and treat silence as a flag rather than as consent.
Match the channel to the audience. Email is ignored by some groups entirely, and the reminder that is not read has no effect however well written.
Building it with CodeWords
CodeWords connects to more than 3,000 integrations, so the calendar, the booking system, the messaging channel and the customer record can meet in one automation.
- Open CodeWords and start a new automation.
- Describe what should happen in plain language to Cody, the automation builder: the availability rules, the reminder schedule, and what happens on a cancellation.
- Authorize the connections — the calendar, the booking or CRM system, and the email or messaging service.
- Describe the exceptions: a same-day booking, a repeat no-show, an appointment type needing preparation, a cancellation inside the policy window.
- Run it against last month's appointments and check what would have been sent and when.
You describe the outcome; Cody builds it, connects it, and deploys it. The free plan covers light use, with Pro at $39 per month and Business at $100 per month as usage grows; details are on the pricing page.
Cancellation, rescheduling and the policy
Make cancelling easy. A cancellation is a recovered slot; a no-show is a lost one, and a hard cancellation process converts the first into the second.
State the policy at booking, visibly, since a policy first encountered at the point of a charge is a complaint.
Automate the reminder of the policy, not the enforcement of it. A fee applied automatically to somebody whose circumstances warranted an exception is a customer lost over a small sum.
Deposits work where the appointment type supports them, and they change who books as well as who attends.
Track repeat no-shows as a pattern and handle it as a conversation rather than a rule.
Offer a waiting list place to somebody cancelling, which sometimes keeps them as a booking rather than losing them.
Filling the gap when somebody cancels
The part that most scheduling automations leave out entirely, and the one with the clearest return.
Keep a waiting list by appointment type, which costs nothing to collect at booking time.
Notify the list immediately on a cancellation, first come first served, which fills a surprising proportion of short-notice gaps.
Offer to bring forward an existing later booking, which fills the gap and frees a slot somebody else wants.
Be specific about the window, since a vague "a slot has opened" produces questions rather than bookings.
Cap the notifications, so somebody on a waiting list is not contacted about every gap all week.
Report the fill rate, since it is the number that shows whether this part of the system is working at all.
What the booking flow should ask
As little as possible. Every field costs completions at the moment somebody has decided to book.
What they need, which determines the length and the preparation, and is more useful than any other question.
Contact details for the reminder, and the channel they prefer.
Anything required to prepare, asked after the booking is confirmed rather than before, so an incomplete answer does not cost you the appointment.
Not payment details unless you are taking a deposit, which is a different decision with its own effects.
Confirm immediately, with the details and a calendar invitation, which reduces both no-shows and the "was I booked" contacts.
What happens after the appointment
The automation usually stops when the appointment starts, which leaves the most valuable part unbuilt. The half hour after an appointment is when everything that follows is decided.
Record the outcome, minimally — happened, did not happen, needs a follow-up — since without it none of the measurement above is possible.
Book the next one while they are there, which for anything recurring is by far the most effective moment and is routinely left to a later reminder that works much less well.
Send what was promised — notes, a quote, a document — within the day, because the delay is what turns an appointment into nothing.
Ask for feedback where it is useful, once, briefly, and route a poor answer to a person rather than a dashboard.
Trigger the recall for anything with a natural interval, scheduled from the appointment rather than from a list somebody maintains.
Notice the ones who never rebook, which is a churn signal available months before anything else shows it.
Making it survive
Handle timezones explicitly, including daylight saving transitions, which is the classic source of an appointment an hour out.
Prevent double booking by checking availability at confirmation, not only at display, since two people can be looking at the same slot.
Make reminders idempotent, because a duplicated reminder undermines confidence in the whole system.
Handle calendar outages by holding rather than failing the booking.
Report the outcome: bookings, reminders sent, cancellations, no-shows by type and lead time, and waiting list fills.
Limits worth knowing about
Calendar APIs vary in how quickly changes propagate, so a just-booked slot may briefly still appear free.
Messaging channels have their own consent rules, particularly for text messages, which are not covered by an email permission.
Recurring appointments are genuinely complicated, especially when one instance moves.
Group bookings need different logic from individual ones, and treating them the same produces overbooking.
No-show rates have a floor set by circumstances outside your influence, and chasing zero costs more than it recovers.
What to build first
The reminder placed well before the appointment, with a one-tap reschedule link. Not the one an hour before — the one early enough that somebody who can no longer make it has time to move, which turns a no-show into a rescheduled booking and a recovered slot.
Two habits make the difference. Measure no-show rates by appointment type and lead time before changing anything, since the rate is never uniform and most interventions are aimed at the wrong segment. And make cancelling easy, because every obstacle you put in front of cancelling converts a recoverable slot into a lost one.
Frequently asked questions
Why is a no-show worse than an empty slot?
Because you declined other bookings to hold it, staff time was committed anyway, and preparation was wasted. A late cancellation also cannot be refilled through the ordinary booking flow.
Do more reminders reduce no-shows?
Past a point, no. Better-placed ones do: one early enough to reschedule, one shortly before as a practical prompt, and a one-tap reschedule link that makes moving easier than ignoring.
Should cancellation be made difficult to discourage it?
The opposite. A cancellation is a recovered slot and a no-show is a lost one, so every obstacle in front of cancelling converts the first into the second.
Should cancellation fees be applied automatically?
Automate the reminder of the policy, not its enforcement. A fee charged automatically to somebody whose circumstances warranted an exception costs a customer over a small sum.
How do I fill a slot somebody cancelled?
A waiting list by appointment type, notified immediately with a specific time window, plus an offer to bring forward an existing later booking — which fills the gap and frees a slot somebody else wants.
What availability settings are most often missing?
Buffers before and after appointments, which is why schedules run late by mid-morning, along with travel time, a daily cap, and a minimum notice period.
What should the booking form ask?
As little as possible — what they need, and how to reach them for the reminder. Anything required for preparation should be asked after the booking is confirmed, so an incomplete answer does not cost you the appointment.
Are no-shows ever eliminable?
No. There is a floor set by circumstances outside your influence, and chasing zero costs more in friction and goodwill than it recovers.
What should happen immediately after an appointment?
Record the outcome, book the next one while the person is still there for anything recurring, and send whatever was promised within the day. The rebooking-in-person step is far more effective than any later reminder.
What is the earliest churn signal in a booking business?
Customers who attended and never rebooked. It is visible months before revenue reflects it, and almost nobody reports on it.
Why do schedules run late by mid-morning?
Almost always missing buffers. Back-to-back slots with no gap absorb every small overrun cumulatively, and by the fourth appointment the delay is large enough that customers notice.
Do text message reminders need separate consent?
In most markets yes — an email permission does not cover text messages, and the rules for them are frequently stricter.