AI voice agents for post-stay surveys call guests within a day of checkout, ask one rating and one open question, and record both as the guest stated them. A low score or a complaint goes to a person while the guest can still be won back. Any review invitation uses the same words for every guest.
Key Takeaways
- The survey's real value is catching a problem before the review.
- A low score goes to a person; the agent never offers compensation.
- Invite every guest to review in the same words, or invite nobody.
This post is part of our guide to AI voice agents for hotels and hospitality. The guide's section on the survey call says its real job is catching a problem while the guest can still be won back. This post builds that call in Dograh, an open-source, self-hostable voice agent platform, along with the rule that keeps it honest: every guest hears the same review invitation, or nobody does.
Most guests never answer the email survey
The email survey misses most guests, so a short call has room to help. GuestRevu, which sells hotel survey software, analysed post-stay surveys sent in 2025 by more than 1,500 hotels. For most of them, only about one in five guests completed a survey, and surveys with six open-ended questions dropped to about 14%. That is vendor data, and it still leaves a plain gap: four in five guests are never heard, and some of them left with a problem nobody fixed.
A call reaches some of those guests, as long as it stays short: one rating and one open question. The design for that pair, including how the answers are recorded, is covered in AI Voice Agents for Delivery Feedback and CSAT Surveys. This post covers what changes in a hotel.
The call is for service recovery
A hotel survey call earns its cost when it finds an unhappy guest early enough to put things right. Place it within a day of checkout, while the stay is fresh and before the guest has written about it anywhere.

The call runs greet, verify, disclose. The Greeting Text names the hotel. If you want to tell guests they're speaking with an automated assistant, or your location requires it by law, write that there too. It plays before any check, so it names no dates, room or charges. Before the agent mentions any of those, it asks for the confirmation number and the surname on the booking. The two survey questions name no stay detail, so a guest without the number to hand can still answer them. A question about the bill waits for the check or goes to a person.
A low rating or a complaint sends the call down a pathway to a person. Write that pathway's condition in plain words, such as "a rating of 6 or lower, or any complaint". Choosing a pathway is the language model reading that condition, so it is never a hard rule, and QA later checks for calls that should have gone that way and did not.
While the desk is staffed, Transfer Call hands the guest to the duty manager. It works on Twilio only and passes no summary, so an HTTP API tool first writes the complaint, as the guest stated it, to the hotel's system. If nobody answers within the 30-second default, or the desk is closed, the guest stays with the agent. It tells the guest a manager will call back and writes that callback request to the hotel's system.
The agent never offers compensation. A refund or a discount on the next stay is the manager's decision, and an offer on the call would also turn a survey into a marketing call.
Open Source Alternative to Vapi / Retell
Self-hosted voice agent platform — no per-minute fees
dograh-hq/dograh
Star on GitHub
No review gating: the same words for every guest
Review gating means asking only happy guests to post a public review, and both Google and the US Federal Trade Commission (FTC) treat it as manipulation. This is general information, not legal advice.
Google's policy on user-contributed content says merchants must not "Discourage or prohibit negative reviews, or selectively solicit positive reviews from customers". The same list bars merchants from offering incentives "in exchange for posting any review". The FTC's rule on consumer reviews, at 16 CFR 465.4, makes it a violation for a business "to provide compensation or other incentives in exchange for, or conditioned expressly or by implication on, the writing or creation of consumer reviews expressing a particular sentiment".
For a survey call, that generally means the review invitation cannot depend on the rating. A hotel that wants one places it right after the two questions and before any routing, so a guest who scored 3 and a guest who scored 10 hear it alike, including a guest about to be passed to the manager. Inside a node, the language model writes its own words, so a node prompt cannot hold the wording steady. Put the invitation in the Transition Speech of the one pathway that leaves the questions step, which every call takes, or in a recorded clip, and Dograh plays it word for word. Text Transition Speech does not play on speech-to-speech models, so use a cascade agent or the recorded clip.
When the guest says yes, an HTTP API tool asks the hotel's own system to send the review link by text or email. No incentive comes with it, and the agent never suggests a star rating or what to write. Confirm your own position with counsel before the invitation goes live.
Sending the answers to your systems
Every answer leaves the call by webhook, so the hotel's own systems hold the results. The agent extracts the rating and the open answer as variables, recorded as the guest stated them, and the transcript and recording remain the exact record. A Webhook node then posts fields such as {{gathered_context.rating}}, the call duration and the transcript link to the hotel's review or customer relationship management (CRM) system. A temporary failure, such as a timeout, is retried automatically. Webhook-Driven Voice Agents: Real-Time Data In and Out covers the payload.
The call list comes from the property management system (PMS) export of guests who checked out, and Campaigns or the API Trigger places the calls. Campaigns has no per-guest call cap, so the export allows one survey per stay, with max retries at 0 or 1. A survey with no offer is generally an informational call, and an offer changes that, as AI voice agents for room upgrade upsell explains. A guest who asks not to be called again says so by voice, and the agent writes that to the hotel's system so the next export leaves them out.
Join the Dograh Community
Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.
Checking the calls with QA
Quality assurance (QA) catches the two failures that matter most here: a complaint that never reached a person, and an invitation that changed with the score. Add a QA node and set its Sample Rate below 100, so it reviews calls picked at random. Its "Use Workflow's LLM" setting is on by default. QA scores each node separately, and its summaries are in English by default. Automated QA for Voice Agents covers how to write the QA prompt.
Self-hosted Dograh has no per-minute platform fee (servers, model keys and phone minutes still cost); Dograh Cloud has a 1¢-a-minute platform fee. Our page on open-source voice AI for survey calls shows the setup.
Start with the two questions and the route to a manager. Add the review invitation only once it is fixed text that every guest hears.
Glossary
- Service recovery
- Fixing a guest's problem quickly enough to win back their trust. On a post-stay survey call it means sending a low score or a complaint to a manager while the stay is still fresh.
- Review gating
- Asking only satisfied customers to post a public review, or steering unhappy ones away. Google's policy bars it, so a survey call invites every guest in the same words or none at all.
- Transition Speech
- Fixed text or a recorded clip that Dograh plays word for word when a call moves along a pathway. It is the place for wording that must not change from guest to guest, such as a review invitation.
- Sample Rate
- The QA node setting for the share of calls that are reviewed. Below 100, Dograh picks the calls at random.

