The situation before we started
Catering was a high-margin side of the business but inquiries were chaotic:
- Phone: would ring during service prep and hit voicemail
- Website form: would email the GM's already-overflowing inbox
- Instagram DMs: would land in a shared account that anyone might or might not check
The pattern was the same across channels: a customer would inquire about catering for, say, a 60-person rehearsal dinner three weekends out, and by the time someone responded, they'd booked another restaurant. The GM estimated they were losing two to three solid catering inquiries a week to slow response time alone.
What we built
A unified intake workflow with channel-specific front ends but a single backend:
- Voice agent on the catering line: qualifies (date, guest count, dietary requirements, venue type), holds the date pending proposal, books the customer onto a 15-minute call with the GM
- Web form parser that runs the same qualification logic, sends an SMS within 60 seconds with the held date and a link to the manager's calendar
- Instagram DM handler that gathers the same info via natural chat, recognizing intent shifts ("oh actually we want a buffet not plated")
- Held-date dashboard for the GM showing all open holds, expiring in 48 hours unless confirmed
- Proposal template pre-populated with the customer's specifics, sent to the GM as a draft Notion doc to review and send
Holds expire automatically if not confirmed, freeing the date back up — a small thing that prevented a long-running issue with double-bookings.
What happened
In the first 60 days after launch:
- Catering conversion up 47% vs. the prior 60 days
- Average response time across all three channels: under 2 minutes (previously: ~6 hours)
- 71% of held dates converted into actual paid bookings, a clean signal that the agent's qualification was accurate
The GM's main quality concern — "the agent will sound like a robot and turn off the kind of customers who care about a hand-touched dinner" — turned out to be addressable. We spent two weeks tuning the voice agent's tone to be warm and unhurried, and explicitly trained it to hand off to a human at the slightest sign of complexity (off-menu requests, unusual venues, large guest counts, anything emotionally significant like a memorial or anniversary).
What's next
The same intake pattern is now being extended to private-event reservations during slow nights — using a similar held-date system to fill specific lower-revenue windows without putting pressure on prime-time tables.