How to run nps and csat surveys as Restaurant and Hospitality Founders

Customer SupportFor Restaurant and Hospitality Founders2 apps11 steps~22 min to set up

You find out a table had a bad experience when you see the one-star Google review three days later. You have no system for asking guests how their visit went — maybe you emailed a Mailchimp blast once, or someone drops a paper comment card in a box that nobody reads. You don't know if your NPS is trending down because of the new chef, a rough weekend, or a one-off incident. OpenTable and Resy have review features but they're walled gardens — you can't export the data, cross-reference it with which server was on, or tie a bad score to a specific Friday night's 8pm turn. Your food cost and labor are tracked (barely), but guest sentiment is a black hole.

Customer SupportFor Restaurant and Hospitality Founders2 apps11 steps~22 min to set up
Outcome

What you'll set up

An automated post-visit NPS survey that fires after each reservation closes — pulling guest contact info from your reservation platform via browser automation and sending through Gmail — so you get structured feedback within 24 hours of every cover
A live dashboard that shows your rolling NPS score, CSAT by day of week, by server section, and by menu period, so you can see patterns instead of isolated complaints
A weekly digest delivered to your Slack channel every Monday morning that summarizes the week's scores, flags any scores below 7, and surfaces the most common complaint themes — before you open the door
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Apps used
Data sources & config

Starch syncs your Gmail data on a schedule for sending surveys and reading replies. Guest contact data from OpenTable or Resy is pulled via browser automation — no API needed. Slack is connected from Starch's integration catalog; the agent queries it live to post your Monday digest. Survey response data is stored in Starch so your NPS dashboard has a running history.

Prompts to copy
Build me an NPS survey app for my restaurant. After each reservation is marked complete in OpenTable, pull the guest's name and email via browser automation, send them a one-question NPS email through Gmail within two hours, then send a follow-up CSAT with three questions if they respond. Store every score with the guest's name, visit date, and reservation party size. Show me a dashboard with rolling 30-day NPS, average CSAT by day of week, and a list of any score under 7 flagged for personal follow-up.
Every Monday at 7am, send me a Slack summary of last week's NPS and CSAT scores. Include: total responses, average NPS, any guests who scored 6 or below with their contact info, and the three most common words or phrases in open-ended responses. Flag if NPS dropped more than 5 points week over week.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect Gmail — Starch syncs your Gmail on a schedule and uses it to send post-visit NPS emails and receive replies. This is how every survey and response flows.
2 Connect Slack from Starch's integration catalog so the agent can post your weekly digest to whatever channel your team already checks — #ops, #daily-numbers, wherever.
3 Tell Starch to automate OpenTable or Resy through your browser — no API needed. The agent logs in, reads completed reservations each evening, and extracts guest name, email, party size, and visit date.
4 Describe the NPS survey you want: one question ('How likely are you to recommend us to a friend?'), scale of 0–10, sent within two hours of the reservation closing, with your restaurant's name and a short personal note from you in the from line.
5 Add a CSAT follow-up: if the guest responds to the NPS, send a second email within 24 hours with three questions — food quality, service, and overall experience — each rated 1–5.
6 Tell Starch to store every response with the guest's name, score, visit date, day of week, and party size. Ask Starch to also capture any open-ended text in a searchable field.
7 Describe the dashboard: 'Show me rolling 30-day NPS, CSAT broken down by day of week, response rate this week vs last week, and a live list of any score below 7 flagged for personal follow-up with the guest's email and visit date.'
8 Set the Monday morning Slack automation: 'Every Monday at 7am, post to #ops a summary of last week's NPS and CSAT. Include total responses, average NPS score, names and contact info of any detractors (0–6), and the top three recurring words in open text. Alert me if NPS dropped more than 5 points from the prior week.'
9 Wire a personal follow-up trigger: any guest who scores 6 or below gets flagged in your CRM app with their contact info and visit details so you can send a direct email from Gmail within 48 hours — apology, comp, or just acknowledgment.
10 After two weeks of data, ask Starch: 'Which day of the week has the lowest average CSAT score, and which server sections had the most sub-7 NPS scores last month?' Use the answer to adjust staffing or training.
11 Once a month, ask Starch to pull all open-ended responses and summarize the top five complaint themes. Compare them to your menu changes or staffing changes from that period.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

Valentines Week 2026 — Figuring Out Why Saturday Tanked

Sample numbers from a real run
Total covers that week312
NPS survey emails sent289
Responses received104
Rolling 7-day NPS (week of Feb 14)34
Rolling 7-day NPS (prior week)61
Detractor flags (score 0–6) sent to CRM19

Valentine's Day weekend, you ran 312 covers across Friday and Saturday. Monday morning your Slack digest from Starch showed NPS dropped from 61 to 34 — a 27-point swing. The dashboard flagged 19 detractors, 14 of them from Saturday's service. Open-text responses surfaced the phrase 'waited over an hour' five times and 'cold food' three times. You could see Saturday's two-top section had an average CSAT of 2.1 out of 5 on service, versus 4.3 for the rest of the room. That told you the problem wasn't the kitchen across the board — it was one section getting overwhelmed during the 8pm turn. You sent a personal Gmail from your own address to all 14 Saturday detractors by Tuesday morning with a genuine apology and a $25 credit. Three of them replied to say they'd come back. Without the automated survey, you would have seen two Google reviews by Thursday and had no idea where the breakdown happened.

Measurement

How you'll know it's working

Rolling 30-day NPS score (tracked weekly, flagged if it drops more than 5 points week over week)
CSAT by day of week — which nights consistently underperform on service or food quality
Detractor rate — percentage of respondents scoring 6 or below, and how quickly you personally respond to them
Survey response rate — what percentage of guests are actually giving you data (industry baseline is roughly 20–30% for post-visit email)
Recurring complaint themes over 30 and 90 days — whether 'wait time,' 'noise,' or 'cold food' is a one-off or a pattern
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

Typeform or Google Forms + Mailchimp
You can build a survey manually and blast it to your list, but there's no automation to pull guest emails from OpenTable, no dashboard tying scores to visit date or day of week, and you'll spend an hour a week copying data between tools.
OpenTable's built-in review feature
Collects guest feedback but the data lives in OpenTable's walled garden — you can't export it, cross-reference it with your POS data, or build a custom alert when scores drop.
Medallia or Qualtrics
Enterprise-grade NPS platforms built for hotel chains and QSR franchises — serious implementation cost and annual contracts that don't make sense for an independent operator doing under $5M in revenue.
Asking your manager to read Google reviews each morning
Free, but you're only seeing the guests angry enough to post publicly, two to five days after the visit, with no way to reach the other 95% who just didn't come back.
On Starch RECOMMENDED

One platform — crm, founder inbox all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

Does Starch actually connect to OpenTable or Resy? I don't think they have a public API.
They don't have a public API that's easy to plug into, and Starch doesn't pretend otherwise. Instead, Starch automates OpenTable or Resy through your browser — the same way you'd log in and check completed reservations manually. No API needed. The agent reads the page, extracts the guest data, and passes it to your survey workflow. It's slower than a native sync but it works, and you don't need to negotiate a data-sharing agreement with a restaurant tech vendor.
Will guests actually open and respond to these emails? I've tried survey blasts before and got nothing.
Response rate depends a lot on timing and framing. Sending within two hours of a visit — while the experience is fresh — consistently outperforms a next-day or next-week blast. The emails go from your Gmail address, so they look like a personal note from you, not a mass campaign. That said, Starch can't guarantee any particular response rate. If your list is cold or your domain has spam issues, that's a deliverability problem Starch can surface but not fix on its own.
Is my guest data stored securely? I'm handing over names and emails.
Starch stores survey response data in its database to power your dashboard. It's not SOC 2 Type II certified yet — that's worth knowing if you're in a jurisdiction with strict hospitality data rules or if you're already getting pressure from your payment processor about data handling. If that's a hard requirement for you today, it's an honest reason to wait. For most independent operators it's not a blocker.
Can I tie NPS scores to specific servers or sections?
Yes, if you tell Starch to capture that field. When you describe the survey app, include something like: 'Also pull which server handled the table from tonight's floor chart' — if that data lives somewhere you can browser-automate (a POS export, a 7shifts schedule, a shared sheet), Starch can pull it and attach it to the response. Then your dashboard can break down CSAT by server. It takes a bit of setup depending on where your floor assignments live, but it's the kind of thing you describe in plain language and Starch figures out how to wire.
What happens to guests who score 9 or 10 — the promoters?
You can tell Starch to trigger a different follow-up for promoters. A common pattern: anyone who scores 9 or 10 gets a friendly email two days later asking them to leave a Google or Yelp review, with a direct link. You describe the logic — 'if NPS score is 9 or 10, wait 48 hours, then send this email template via Gmail' — and Starch builds the automation. It's not a separate product feature; it's just how you configure the workflow.
I use Square instead of Toast for my POS. Does that matter for this workflow?
For the NPS survey workflow specifically, your POS matters less than your reservation system — that's where the guest contact data comes from. Square can be connected from Starch's integration catalog for sales data. The survey trigger is based on reservation completion, not a POS transaction, so whether you're on Square, Toast, or something else, the core workflow runs the same way.

Ready to run run nps and csat surveys on Starch?

Request closed-beta access. Everything is free during beta.

You're on the list! We'll be in touch soon.