Industry Playbook

The Restaurant Operator Stack

Reservation voice agent, online-order recovery, SMS waitlist. The 15-minute table-turn lift that pays for the whole system in 5 weeks.

18 Min Read / 5 Modules / Updated 2026.05
01. The Problem

The dining room is the easy part. The leak is everywhere else.

Most restaurants spend 14 to 18 percent of revenue on marketing and labor that touches the guest before the table. Then they leak more than that back out the door through three quiet, very fixable holes.

Walk into a 140-cover full-service spot at 6:47 pm on a Friday. The host stand is on fire. There is a four-top waiting for a deuce to clear. The phone is ringing. A guest is asking what the gluten-free options are. A third-party delivery tablet is chirping. The maitre d’ has 11 seconds to triage all of it before someone walks out the door, books somewhere else, or worse, decides not to come back.

This is not a service problem. It is a capacity problem dressed up as a service problem. The FOH team is doing exactly what humans were hired to do: be present, warm, decisive. They are not the bottleneck. The phone is. The cart is. The text thread is. The reservation platform is. The systems behind the systems are leaking covers and ticket revenue in three reliably measurable ways, and every operator we’ve worked with has the same three holes.

60-70%
Of dinner calls in peak hours go unanswered
The host can’t pick up. Voicemail catches it or the caller hangs up. Of those, 84 percent do not call back. Across Nirvani deployments we see this number range from 58 percent (counter-service) to 71 percent (full-service tasting menus on Fri/Sat).
22%
Of online orders abandon at checkout
Cart was loaded. Address entered. Then friction. Tip selector, delivery fee surprise, modifier confusion, payment method, second-thought. The order is sitting there as a fully-formed intent signal. Almost no restaurant in our cohort recovers any of it.
4-7%
No-show rate on reserved tables
On a 140-cover concept doing two turns at $62 average ticket, a 6 percent no-show rate is 16.8 guests / night, roughly $1,040 of lost cover revenue plus the BOH prep waste. Every weekend night. Forever.

Three holes. Each is small in isolation, devastating in aggregate. Most restaurants try to plug them by hiring more host-stand labor, switching POS, or sending the GM to another industry conference. None of that addresses the root issue, which is that the phone, the cart, and the reservation system are doing pre-shift triage work that does not need a human. It needs a clock that never sleeps and a memory that never forgets.

The Operator Stack below is built around that observation. Five modules. No vendor names. Built specifically for full-service, QSR, fast-casual, and ghost concepts.

02. Outcomes After the Stack

What you should expect in 90 days

Numbers below are the Nirvani median, not the best-case. Best-case full-service concepts (high ticket, weekend-heavy) typically exceed every line. Median is what the average operator hits.

Median Result. 38 Restaurants. 90 Days In.
95%
Reservation Answer Rate
18%
Recovered Order Revenue
2.3pt
No-Show Reduction
5 wk
Payback Period
Source. Nirvani deployment data across 38 restaurants from full-service to QSR. Updated 2026.05.29.

Three of those four numbers are direct revenue. The fourth (answer rate) is the leading indicator. Get the answer rate from 30 to 95 and the other three follow on their own, because every other module in the stack depends on the phone actually picking up.

03. The Stack

Five modules. Built to compound.

Each module is independently deployable in week 1. You do not have to install the whole stack at once. But each one makes the next one materially better. The voice agent feeds clean data into the reservation sync, which feeds clean cohort definitions into the win-back, and so on.

01

24 / 7 Reservation Voice Agent

Answer every call. Book the table. Send the SMS confirmation. Never hold.

What It Is

A dedicated AI host that answers your reservation line in under 2 rings, 24 hours a day, in a friendly maitre d’ voice that knows your menu, your seating policy, your large-party deposit rules, and your wait-time reality. It does not sound like an IVR. Guests routinely do not realize they are talking to AI until the SMS confirmation hits 4 seconds after they hang up.

How It Works

  • Inbound call routes through the agent first. If you have a host stand staffed and the line is short, the agent transfers. If not, the agent handles the booking.
  • The agent has read-write access to your reservation platform. Live availability. No double-booking.
  • For each booking it captures: party size, date / time, occasion (if offered), allergy notes, seating preference, and the guest’s mobile.
  • An SMS confirmation goes out within 6 seconds of hangup with the booking details and a one-tap cancel link.
  • If the guest needs the kitchen (86’d items, allergens, takeout questions), the agent routes those to the right person.

Sample Script. Reservation Inquiry

Friday 7:14 pm. Inbound reservation Live Transcript
Agent
Cardinale, this is Marco. How can I help you?
Guest
Hey, I’m trying to get a table for four tomorrow around 7.
Agent
Got it, four guests, Saturday at 7. Let me check. Seven is fully booked, but I can put you in at 7:45 or 8:15. Which works better?
Guest
7:45 is great.
Agent
Perfect. Anyone celebrating anything? Birthday, anniversary?
Guest
My wife’s birthday actually.
Agent
Beautiful, we’ll take care of her. Any allergies or dietary notes for the table?
Guest
She’s gluten-free.
Agent
Noted. Last name on the reservation and the best mobile number to text the confirmation to?
Guest
Bennett, 415 555 0114.
Agent
All set, Mr. Bennett. Four guests, Saturday 7:45, gluten-free, birthday for your wife. Confirmation is on the way to your phone. See you Saturday.
[SMS]
Cardinale: Confirmed for 4 on Sat 5/30 at 7:45 PM. Reply C to cancel, R to reschedule. STOP to opt out. Msg&data rates may apply.

Outcome

95% answer rate 18 sec avg call +22% reservations captured 2 SMS opt-ins / call
+$1,840 / wk
Median weekend revenue lift from the voice agent alone on a 140-cover concept, before factoring any of the other four modules. The math: 12 extra reservations captured per weekend night that previously rolled to voicemail, 80% seat conversion, $62 avg ticket.
Nirvani deployment cohort. 38 restaurants. 90-day median.
02

Abandoned Order Recovery

Auto SMS to guests who left items in cart. One-tap reorder. The cart was already warm.

What It Is

A behavioral trigger that fires an SMS to any guest who built a digital order, gave us a mobile or phone, then dropped before completing checkout. Sent 7 minutes after abandonment with a one-tap link to resume the exact cart, modifiers and all. We added a 4 percent credit on first recovery only (loss-leader, capped at 1 use per guest per 90 days).

How It Works

  • Web / app order session tagged at first menu interaction. If session ends without checkout and a mobile is present (entered earlier or in account), a flag fires.
  • 7-minute delay window. (We tested 3, 5, 7, 12, 20. 7 wins. Long enough they’ve genuinely abandoned, short enough the hunger signal is still live.)
  • Single SMS, friendly, names the guest, references one specific item from the cart, includes a deep link to the resumed cart.
  • If no response in 35 min: silent. We do not send a second nag. Brand integrity matters more than the ticket.
  • If the cart is recovered: order completes, kitchen gets it, we suppress the SMS sequence for 14 days so this never feels mechanical.

Sample Script. Recovery SMS

7 min after cart abandon SMS Single Send
SMS
Hey Jen, your Carbonara is still warm in the cart at Cardinale. Tap to finish & we’ll start it now: cardin.al/r/8wQ2 (4% on us this round). Reply STOP to opt out. HELP for help. Msg&data rates may apply.
Guest
[Taps link, lands in resumed cart, completes order in 14 seconds]
[Result]
$48.20 ticket recovered. Kitchen gets the order. No staff time. Guest got a small win.

The Important Compliance Note

Recovery SMS only goes to guests who have explicitly opted in to transactional SMS (typically during account creation or first order). A2P 10DLC registration is required and Nirvani handles it for you. Every send includes STOP / HELP language. Opted-out guests are permanently suppressed within 60 seconds.

Outcome

18% cart recovery rate +11% online GMV $42 avg recovered ticket 0.3% opt-out rate
03

SMS Waitlist + Table Ready

Text waiting guests when their table is ready. Reduce floor congestion. Faster turns.

What It Is

A digital waitlist that captures arriving guests by name, party size, and mobile, then texts them when their table is ready instead of cramming them into the entry vestibule with a buzzer. Guests can walk the block, grab a glass next door, sit in the car. We notify with a 5-minute warmup text first, then a “your table is ready” text.

How It Works

  • Host tablet at the door. New guests added in 8 seconds (name, party size, mobile, dietary flag).
  • Waitlist auto-prioritizes by party size and table availability matching, FOH still has full override.
  • 5 min before table ready, “heads up” SMS goes out so the guest starts heading back.
  • When table is ready, the “table ready” SMS fires. 7-minute grace window. If no-show after 7, table releases automatically.
  • Quote times displayed to guests are live and self-correcting. The system tracks actual seat-to-clear time and updates the published quote dynamically.

Sample Script. Waitlist Sequence

Saturday 8:22 pm. 22-min quoted wait SMS Sequence
Host
[Adds party of 3 to waitlist at 8:22, quote 22 min, taps to confirm]
SMS 1
Cardinale: You’re on the list, Sarah. Party of 3. Current wait ~22 min. We’ll text when your table is 5 min out. Reply STOP to opt out.
SMS 2
[8:39 pm, 5 min before ready] Sarah, your table will be ready in ~5 min. Time to wander back.
SMS 3
[8:44 pm, table ready] Your table’s ready, Sarah. Ask for Marco at the host stand. 7-min grace, then we’ll release. See you in a sec.
[Result]
Guest walks in 3 min later from the wine bar next door. Table turn happens cleanly. No congested vestibule. No buzzer drama. Average turn time on the night drops 4.5 min.

The 15-Minute Table-Turn Lift

This is the line item from the subhead. A 140-cover full-service restaurant doing two turns / night, where the waitlist + ready-text shaves 4 to 7 minutes per turn, compounds into roughly 15 additional minutes of usable table time per table per evening. Across 35 tables that is 525 minutes of recovered floor time per night, or roughly 9 additional seats turned. At $62 avg ticket, that is $558 of free revenue per dinner service. Five times a week. Fifty weeks a year. $139,500 / yr on the table turn alone.

Outcome

15 min table-turn lift +9 seats / dinner 74% on-time arrivals Quieter host stand
04

Birthday Club + Win-Back

Automated SMS to lapsed guests with a personalized offer. Cohort-aware, never spammy.

What It Is

Two interlocking sequences. (1) Birthday Club. We have the guest’s birthday (collected at reservation via the voice agent or at order via the POS prompt). 5 days before the birthday, an SMS goes out with a hosted offer. (2) Win-Back. Guests who haven’t visited in 60 days (configurable) get a personal SMS referencing their last visit (item ordered, party size context) and inviting them back. Both are opt-in only. Both honor the brand voice.

How It Works

  • Guest data unifies across the voice agent, reservation platform, and POS. One profile per guest. Visit history attached.
  • Birthday Club: triggered T-minus 5 days. Personal greeting, hosted dessert or a small comp on a 4+ party, expires 30 days after birthday.
  • Win-Back: triggered at 60 days no visit. Different message for occasional guests vs. lapsed regulars. The system knows which cohort.
  • Cap: no guest receives more than 1 marketing SMS / 30 days. Quiet hours respected (9 pm to 10 am local). STOP / HELP / opt-out language on every send.
  • Suppression list integrated. Any guest who has lodged a complaint, has an unresolved comp situation, or has explicitly asked to be removed: hard-suppressed.

Sample Script. Birthday Outreach

T-5 days from birthday. Past 3+ visit guest SMS Single Send
SMS
Sarah, the Cardinale kitchen wants to celebrate you. Your birthday is Sunday. Bring your party in this week and the tiramisu is on us. Reply BOOK to grab a table, or call 415 555 0190. Reply STOP to opt out. HELP for help.
Guest
BOOK
SMS
Beautiful. What night and what size party? (Just reply, ex: “Friday 7, party of 4”)
Guest
Saturday 7:30, party of 6
SMS
Got it. Saturday 7:30, party of 6, birthday on the file. Want me to lock it in?
Guest
Yes please.
SMS
Done. See you Saturday, Sarah. Confirmation on the way.

Outcome

34% birthday redeem rate Avg party 4.6 (vs. 2.8 baseline) +11% lapsed reactivation 0.4% opt-out rate
05

OpenTable / Resy / Tock Sync

Keep AI bookings in lockstep with whichever reservation platform you run. No double-books. Ever.

What It Is

A two-way sync between the Nirvani voice agent / SMS waitlist layer and your existing reservation platform (whether you run OpenTable, Resy, Tock, SevenRooms, or a comparable category leader). Bookings made by AI write into the platform of record. Bookings made directly on the platform flow back to the agent so it always knows what is on the books. Cancellations, modifications, and walk-ins all reconcile.

How It Works

  • Initial connect handshake during onboarding. (Toast / Square POS for FOH check, OpenTable / Resy / Tock for reservation layer, Nirvani is the orchestration brain.)
  • Voice agent and SMS layer read live availability from the platform of record before quoting any time.
  • When a booking is confirmed, the agent writes it to the platform with full guest profile, allergy notes, occasion tag, and last-visit history.
  • Mods (party size change, time shift, cancellation) flow bidirectionally with conflict resolution favoring the most-recent action.
  • POS integration on the FOH side closes the loop: actual seated count, ticket size, modifier mix, and seat-to-clear time flow back into the guest profile for cohort scoring.

Why It Matters

Without sync, every AI-booked table is a hand-keyed entry from your manager into the platform of record. That is the single most common reason restaurants stall out a few weeks into deployment: the staff is doing duplicate data entry and rebels. With sync running clean, the AI feels like a teammate, not a parallel system. No 86’d items get bookings against them. No private events get double-booked. No deposit policies get bypassed.

Sample Script. Edge Case. Platform Double-Pull

Same table, both channels at once Race Condition
[T+0]
Guest A calls. Voice agent quotes 7:45 PM Saturday, last 2-top available.
[T+1.2s]
Guest B is on the reservation platform online, taps the same 7:45 slot.
[T+1.4s]
Agent attempts write. Platform returns “slot taken” before guest A confirms.
Agent
Actually one sec, that 7:45 just went. Let me give you 7:30 or 8 instead, which works?
[Result]
No double-book. Guest A gets a clean re-offer. Guest B’s reservation lands without conflict. The system absorbed the race without staff intervention.

Outcome

Zero double-books 100% mod sync Single source of truth FOH stops doing dupe entry
04. Implementation Roadmap

30 / 60 / 90. What it looks like.

We do not believe in 18-week implementations for restaurants. The dining room moves too fast and the operator does not have the patience or the cashflow to wait. Here is what an honest deploy actually looks like.

Day 0-30
Voice Agent Live
  • Day 1-3. Kickoff call, menu intake, voice persona alignment, 86’d / hours / policy capture.
  • Day 4-7. Voice agent built, tested against 40 sample call types, FOH listens and approves.
  • Day 8-14. Soft launch. Agent answers after-hours and overflow only. FOH still handles primary.
  • Day 15-21. Full handoff. Agent is primary. FOH overrides as needed. Daily review.
  • Day 22-30. SMS confirmations live. Reservation platform sync verified. First win-back cohort defined.
Day 31-60
Recovery + Waitlist
  • Day 31-37. Online ordering platform connected. Cart-abandonment trigger configured.
  • Day 38-45. A/B on recovery SMS copy. The 7-min delay locks in. Recovery rate stabilizes.
  • Day 46-53. SMS waitlist deployed at the host stand. FOH training, 2 lunches and 4 dinners.
  • Day 54-60. Quote-time self-correction enabled. Table-turn metrics start showing the lift.
Day 61-90
Win-Back + Optimization
  • Day 61-70. Birthday Club opt-in flow live across voice + POS prompts.
  • Day 71-78. Lapsed-guest cohort scoring runs. First win-back wave sent (tier 1 only).
  • Day 79-86. Tier 2 + tier 3 win-back waves. Cohort lift measured.
  • Day 87-90. 90-day operator review. Comp policy tuned. Hours of operation logic updated for season.

Most concepts hit positive ROI between day 28 and day 45. By day 60, the voice agent + recovery is paying for the entire stack. The waitlist and win-back are pure profit on top. The 5-week payback in the outcome band is the cohort median; concepts with strong existing online order volume hit it in 3.

05. ROI Snapshot

The math, per night.

Model concept. 140-cover full-service Italian. Two dinner turns / night. 5 dinner services / week. $62 average ticket. 22% online order mix. Pre-stack baseline vs. day-90 post-stack. Per dinner service.

Per-Night Revenue Delta
140-Cover Full-Service / Dinner Service
Covers seated From 2.0 turns to 2.06 effective turns via 15-min table-turn lift
280 to 289
+9
Reservation captures (peak weekend) From 60% peak answer rate to 95% via voice agent
+12 res
+$558
Average ticket size Modifier upsell prompted by agent at booking + better seating on birthday parties
$62 to $66
+6.4%
Online order GMV (per dinner) 22% mix at $1,200 baseline, plus 18% cart recovery lift
+$216
+18%
No-show comp loss From 6% to 3.7% no-show rate via SMS confirms + 24h reminder
-$430
recovered
Birthday Club revenue (allocated / night) 34% redeem rate, 4.6 avg party, monthly recurring contribution divided across 20 dinner services
+$184
+net
Net Revenue Lift / Dinner Service
+$1,946
+15.6%
Modeled on cohort median. Stack monthly cost (Nirvani N1 at $444/mo or N2 at $1,500/mo for multi-location) is recovered in approximately 5 weeks. Year-1 contribution margin on this concept lands between $340K and $410K post-stack vs. pre-stack baseline. Numbers are guidance, not a guarantee. Your concept’s exact lift depends on existing answer rate, online mix, average ticket, and seat density.
Year 1: +$389,200
Median net revenue lift on a 140-cover full-service concept after 12 months on the stack. 50 weeks. 5 dinner services / week. $1,946 / night. Stack cost included. Pure contribution to the operator.
Nirvani cohort median, 38 deployments, 12-month rolling
06. Case Study

Two-location modern Italian. 140 covers each.

Anonymized concept profile drawn from the Nirvani cohort. Real numbers, identifying details abstracted for confidentiality.

The Concept. Two-location modern Italian, urban core + suburban.

280 Covers Combined / Two Dinner Turns / 18-Mo Old Concept

Two-unit concept. Urban flagship opened 18 months pre-deploy, suburban second opened 9 months in. Both rooms full-service. $62 avg ticket. Strong Friday / Saturday dinner, soft Tuesday / Wednesday. Strong online order mix (28%) driven by lunch and Sunday family-meal program.

The pain. GM at the flagship spending 3 hours / night triaging the phone, the reservation platform, and the third-party delivery tablets. Suburban location losing 5-8 reservations / weekend to voicemail. No-show rate was 7.2% across both units. Cart abandonment on online order was “way too high” per the operator but unmeasured.

The deploy. 28-day rollout. Voice agent live by day 12 at the flagship. Day 19 at the suburban location. Online order recovery live at both by day 30. Waitlist by day 42. Birthday Club + Win-Back by day 70. Reservation platform sync (running Resy) clean from day 1.

The result. Day 90.

+22%
Reservation Captures
+$2.1K
Combined Lift / Night
3.1%
No-Show Rate Down From 7.2
“The first thing I noticed was the host stand stopped feeling like a war zone. The phone wasn’t ringing constantly because the agent had it. My GM got 2 hours of her night back. We turned the floor faster. The win-back hit a guest I’d almost forgotten about and brought back a family that used to come every other Friday. The whole thing paid for itself in week 4.”
Operator. Two-Unit Italian Concept. 14 Months Post-Deploy.
07. Related Tools

Run the math on your own concept.

Three free Operator Toolkit calculators built specifically for restaurant decisions. Plug your numbers in. Less than 60 seconds each.

Ready When You Are

See the stack priced for your concept.

Single-location concepts run on N1 at $444 / mo. Multi-location and complex (full PMS / loyalty / kitchen routing) run on N2 at $1,500 / mo. We do not do contracts.

No contract. Month to month. Cancel any month. 90-day operator review built in.

Operator FAQ

The specific questions every restaurant operator asks before deploying. Answered straight.

Does this integrate with my POS? I run Toast / Square / Aloha.
Yes. We have native two-way connections with all major restaurant POS categories (Toast, Square for Restaurants, Aloha, Revel, TouchBistro) and the major reservation platforms (OpenTable, Resy, Tock, SevenRooms). The voice agent reads live availability, writes bookings, and pushes guest profile data through to the POS so your servers see allergy and occasion notes when the table is seated. If you’re on something niche, ask during the kickoff call. We’ve built about 9 custom connectors in the last 6 months for concepts running less-common POS setups.

One important note. For modifier-heavy concepts (build-your-own bowl / pizza / etc.), the cart-abandonment recovery and voice agent need to see your full menu tree including modifier nesting. We handle this during day 1-3 menu intake. Plan on a 90-minute session with whoever owns the menu data.

I run 3 locations. Does the stack scale, or do I pay 3x?
Multi-location runs on the N2 tier at $1,500 / mo flat, not per location. The reason: most of the cost in a multi-unit deploy is the cross-location data unification (one guest profile across all units, win-back that knows the guest visited the suburban location but not the flagship in 60 days, etc.). N2 includes that. Up to 8 locations on N2. Above 8, we have an Empire tier for full chain deploys, custom-priced.

We’ve found that 2 and 3-unit concepts get a disproportionate lift from the stack because the cross-location data finally talks. Most independent multi-unit concepts have been running their locations as 2 or 3 separate businesses for years without ever knowing it.

Won’t the voice agent overbook me past kitchen capacity?
No. Capacity rules are configurable at the kitchen level, not just the seat level. You set max covers per 15-min slot, max large parties per night, and max sub-categories (gluten-free dietary, prix-fixe, etc.) that the kitchen can handle in a service. The agent respects those rules absolutely. If you tell it the kitchen maxes at 95 covers in the 7:30-8:00 window, the agent will not book the 96th, full stop.

We also expose a “kitchen weather” control to the GM. If you 86’d a major item, hit a stove issue, or your KDS is backed up, the GM can throttle the agent in one tap. The agent will start quoting later times or offering takeout instead, automatically.

On-premise or cloud? My concept doesn’t want guest data leaving the building.
Standard Nirvani deploys are cloud-hosted on our SOC 2 Type II infrastructure. Guest data is encrypted in transit and at rest. We’re GDPR and CCPA-compliant by default. For 99% of operators this is the right answer because it means zero ops burden on your team.

For very-high-end concepts where guest privacy is a brand asset (private clubs, celebrity-frequented rooms, etc.) we offer a hybrid deploy where guest profile data stays in a dedicated tenant with no cross-customer model training, and you can specify regions for data residency. This is part of the N2 tier and above. Walk us through your specific requirement during the kickoff and we’ll design around it.

How long does staff training take? My team turns over fast.
FOH training is about 35 minutes for the host stand (waitlist + table-ready flow). Servers do not need training because they continue to operate the floor exactly as before; the guest profile data just shows up cleaner on their screens. GM training is a 90-minute session to walk through the operator dashboard, override controls, kitchen-weather throttling, and the daily review screen.

We provide a 12-minute training video for new hires. Most multi-unit operators add it to their onboarding playlist alongside POS training. Operator dashboard logins can be issued in under 2 minutes per new GM.

What happens to comp policy / discount fraud? I don’t want auto-comps abused.
Two layers of protection. (1) Frequency caps. The Birthday Club, Win-Back, and Recovery SMS each have hard limits per guest per period (1 birthday redeem / year, 1 recovery credit / 90 days, 1 win-back offer / 60 days). The system suppresses any guest who has redeemed inside the window. (2) Pattern detection. Guests showing abnormal redemption patterns (multiple accounts with same phone, repeated cancel-rebook patterns to chase first-visit credits, etc.) are flagged for GM review automatically.

We also expose all redemption events to the operator dashboard in real time so you can spot anomalies the day they happen, not the month after.

Can I cancel? What if it doesn’t work for my concept?
Month-to-month. No contract. Cancel any month and we offboard your data within 30 days, including pulling all guest profiles into a CSV export you keep. We give you everything we built for you on the way out.

That said, in 38 deploys, we have had 2 concept-fit cancellations: both were concepts where the room was already fully booked weeks in advance and there was simply no demand leakage to recover. If you’re routinely turning away guests you already have, the marginal lift from a voice agent is small. Honest answer.

SMS Compliance Notice. All Nirvani-sent SMS traffic flows through A2P 10DLC-registered campaigns with documented opt-in for each guest. Every guest-facing message includes STOP and HELP keywords. Opt-outs are honored within 60 seconds and persisted across all future sends. Guest mobile data is never sold, never shared with third parties, and never used outside the deploying restaurant’s own marketing. See SMS Privacy & Terms for full policy.