Restaurant no-shows: why guests don’t show up and what actually works
The table is set for four, it is 9:25 pm, and nobody comes. A no-show is not just an empty table: it is a table you turned down for someone who never showed up. Here is how to cut your no-show rate with the right reminders, a clear policy and the numbers that matter.
In this article
- What a no-show is and why it happens
- What a no-show really costs
- The uncomfortable fixes: credit cards, fees and overbooking
- What actually works: reminding guests so nobody has to remember
- The policy almost nobody writes
- How to set it up with automation
- What to measure
- Common mistakes
- Frequently asked questions
- Two-week plan
The table is set for four. Clean tablecloth, four glasses, the reservation written down for 9:00 pm under the name of a guest who called on Tuesday. It is 9:25 pm. Nobody came and nobody called.
Meanwhile, at 8:40 pm a couple walked in and asked whether there was a table. You told them no, everything was reserved. That couple ate across the street.
That is the no-show: not just an empty table, but a table you turned down for someone who never showed up.
What a no-show is and why it happens
A no-show is a confirmed reservation where the guest does not turn up and does not call. It is not the same as a cancellation: when someone cancels, you can react; when someone simply does not show, you find out when it is already too late.
The causes repeat:
- Forgetting. They reserved on a Tuesday for Saturday and life got in the way. It is the most common cause and the easiest to fix.
- A change of plan with no call. The group decided to do something else and nobody remembered to call the restaurant.
- Duplicate reservations. The person reserved at two places “just in case” and picked the other one.
- Courtesy reservations. Someone reserved with no real commitment because there was no cost in doing so.
- Platform reservations. They come in on their own, without anyone on the team reviewing them, and sometimes with incomplete details.
- Weather or a last-minute change. Terrace reserved, rain at 8:00 pm, nobody calls.
The distinction matters because each cause needs a different fix: forgetfulness is solved with reminders, courtesy reservations are solved with a policy, and duplicates are caught by comparing phone numbers.
What a no-show really costs
The intuitive math is “the empty table”. The real math has four layers (and if you want the exact margin per cover, start with prime cost):
- The check that never came. Guests × average ticket.
- The opportunity you turned down. The table you could have sold and did not. If you turned away a party of four at 8:40 pm, the loss is that same table, not two tables.
- The cost of having everything ready. Staff scheduled, mise en place, produce bought for that demand.
- The effect on the team. A service with two empty tables throws off section assignments and drains motivation.
To avoid counting twice, use this simple formula:
no-show cost = guests × average ticket − variable cost of that service
If the table never arrived, you did not spend on ingredients, so the real cost is the margin you did not earn, plus the staff you had already scheduled. With round numbers:
| Scenario | Reservations / week | No-show rate | Lost tables | Lost margin / month |
|---|---|---|---|---|
| 30 reservations, 10% no-shows | 30 | 10% | 3 | ~$600 |
| 60 reservations, 15% no-shows | 60 | 15% | 9 | ~$1,800 |
| 100 reservations, 20% no-shows | 100 | 20% | 20 | ~$4,000 |
Working the first scenario with the assumptions visible: 3 tables of 3.2 guests at a $26 average ticket is about $250 in sales per week; × 4 weeks, $1,000 a month; at a 60% margin on sales, about $600 in lost margin. The numbers are illustrative: swap guests and average ticket for your own and the order of magnitude holds.
In restaurants with reservations that measure this, the no-show rate usually runs between 10% and 20%, and it climbs on weekends, on key dates and with large parties. If you have never measured it, start there: it is almost always closer to 15% than the owner imagines.
The uncomfortable fixes: credit cards, fees and overbooking
When the owner gets tired of losing tables, three classic reactions appear. None of them is bad in itself; the problem is applying them without criteria.
Requiring a credit card
It works in high-ticket restaurants, with demand that exceeds supply and a clear, visible policy. In a neighborhood place it breeds distrust and cuts reservations: some guests simply do not reserve and turn up unannounced instead, which is worse.
Charging a no-show fee
It is legitimate if it is disclosed before the guest reserves and if the fee is proportional. The usual mistake is announcing it at confirmation, when the guest has already reserved. At that point it feels like a trap, not a rule.
Overbooking and crossing your fingers
Overbooking is pure math: if your no-show rate is 15%, you reserve 15% more than you can seat. The problem is that no-shows do not spread evenly: some nights have none, some nights have four. When two parties and one large table collide, the argument at the door costs more than the table you recovered.
Overbooking only makes sense if you have a real waitlist, the ability to reseat and a protocol for the night it fails.
What actually works: reminding guests so nobody has to remember
If 70% of no-shows are forgetfulness, the problem is not the guest: it is the missing reminder at the right moment.
The sequence with the best effort-to-result ratio is three messages and one policy:
| Timing | Channel | Goal | What it says |
|---|---|---|---|
| At reservation | SMS or WhatsApp | Confirm that the reservation exists | Day, time, number of guests, address and how to cancel |
| 24–48 hours before | SMS | An explicit commitment | “Reply 1 to confirm, 2 to cancel” |
| 3–5 hours before | SMS or WhatsApp | Remove logistical friction | Address, parking, exact time, name of the dining room |
| No reply | Call or text | Re-establish contact | One attempt only, friendly tone, no blame |
The key is the 24-hour message: ask for an explicit reply. A reminder that only informs gets ignored; one that asks for a “1” or a “2” forces a decision. Guests who confirm show up. Guests who cancel free the table in time.
Example confirmation messages:
At reservation. “Casa Marta: reservation confirmed for Saturday the 14th at 9:00 pm, 4 guests. Address: Calle 12 #4-30. If you can’t make it, cancel here: [link].”
24 hours before. “Casa Marta: we’re expecting you tomorrow at 9:00 pm, table for 4. Reply 1 to confirm or 2 to cancel.”
Same day. “Casa Marta: today at 9:00 pm. Parking is available in the building next door; the dining room entrance is on Calle 12. See you tonight.”
The policy almost nobody writes
A restaurant with no reservation policy improvises every conflict. Write it down, publish it on your website and mention it when guests reserve. Here is a reasonable example for a 60-cover restaurant:
- The table is held for a 15-minute grace period; after that it is released.
- Parties of more than 8 guests confirm with a refundable deposit up to 48 hours before.
- Cancellations are accepted up to 4 hours before at no cost.
- If the guest gives less than 4 hours’ notice, we try to reseat; no fee is charged.
- Repeat no-shows lose priority on special dates.
The policy does not exist to punish anyone; it exists so the guest knows what to expect and so the team does not have to decide at the door, with a full dining room and an angry guest in front of them.
How to set it up with automation
All of the above can be done by hand with a notebook, and for a while it works. The problem appears when volume grows: someone has to remember to send 40 messages every morning.
A CRM with a calendar handles the repetitive part. In GoHighLevel, for example, the calendar lets you make the number of guests a required field, and automated workflows send the sequence by SMS, WhatsApp or email depending on the reservation time. If the guest replies “1”, the system can tag them as confirmed; if they reply “2”, it frees the slot and notifies the team.
Limits you should know before you pay: GoHighLevel is not a POS, it does not replace your reservation system if you already have one that works well, it does not manage the floor plan and it does not sync automatically with every reservation channel (TheFork, OpenTable, Google Reserve). It complements your operation; it does not replace it.
If you already use a reservation platform, the cheapest route is to connect its link to the message flow and leave the CRM for follow-up, campaigns and guest win-back.
What to measure
| Metric | How it is calculated | Reasonable target |
|---|---|---|
| No-show rate | No-shows / confirmed reservations | From 15% down to under 8% |
| Confirmation rate | Reservations that reply “1” / reservations reminded | Above 60% |
| Advance cancellations | Cancellations more than 4 h out / reservations | Rising: these are recoverable tables |
| Tables recovered from the waitlist | Reservations that come in after a cancellation | Growing |
| Average ticket of recovered tables | Sales / recovered tables | In line with the overall average ticket |
The metric that matters is the first one. Measure it two weeks before you change anything and two weeks after. If the rate does not drop, the problem is not the reminder: it is the send time, the message copy, or the fact that you are messaging the wrong numbers.
Common mistakes
- Sending the reminder the same day. Four hours out, it no longer changes the decision; it only confirms the one already made.
- A message with no way to cancel. You force the guest to do the thing you hate most: not show up.
- Charging a fee without notice. The policy is communicated when the guest reserves, not at the door.
- Not recording the reason. Without knowing whether it was forgetfulness or a change of plan, you cannot improve.
- Overbooking with no waitlist. You recover one table and lose two guests.
- Ignoring large parties. A party of 12 that never arrives is not a no-show: it is a lost private event. It deserves a phone confirmation.
Frequently asked questions
Do reminders really reduce no-shows?
Yes, and it is the best cost-benefit measure a restaurant with reservations can take. It does not eliminate them: some guests change plans at the last minute. But it turns silent no-shows into notified cancellations, which is what lets you fill the table.
Should I charge every guest a deposit?
No. A deposit for a table for two on a Tuesday creates more friction than value. Apply it to large parties, special dates and private events, where the potential loss justifies the hassle.
How many reminders are too many?
Two or three well-placed messages. From the fourth on, the guest reads it as nagging and may cancel just to be left alone.
What if the guest does not reply to the reminder?
One more attempt, by call or text, and then assume the reservation is at risk. With large parties, the call is worth it: recovering that table is worth more than the awkwardness of a phone call.
Does WhatsApp work the same as SMS?
WhatsApp has higher read rates, but it requires that the guest has started a conversation or given explicit consent, and templates have their own rules. SMS is simpler and does not depend on the person having the app. The sensible approach is to use WhatsApp for the conversation and SMS as a backup.
How do I start without changing my reservation system?
Start by exporting the week’s reservations and sending the 24-hour reminder by hand. That exercise tells you how much your rate improves before you invest in automation.
Two-week plan
- Days 1–3: measure. Count reservations and no-shows for the last 30 days. Separate weekends and large parties.
- Day 4: write the reservation policy and publish it on your website and in your confirmation.
- Days 5–7: draft the three messages and send them by hand to the week’s reservations.
- Days 8–10: compare the confirmation rate with the previous week.
- Days 11–14: if it improved, automate the sequence; if not, review timing and copy before spending on tools.
An empty table does not come back. A cancellation you know about does.