Hospitality businesses collect reviews continuously across multiple platforms, and each one deserves a timely, thoughtful reply, a warm thank-you for a great stay, or an empathetic, specific response to a genuine complaint. Done manually, this is easy to fall behind on, and a generic, delayed reply to a negative review often does more harm than no reply at all.
This project builds an automated monitoring layer that catches every new review as it comes in, classifies the specific issue behind any lower rating, and drafts a tailored reply, warm for great reviews, empathetic and issue-specific for anything less, then routes every review and its drafted reply to a human for approval before anything is sent, with a permanent log kept of every review and every decision.
New review captured (Google Business Profile trigger)
│
▼
ClassifyAndDraftReply (Zapier native AI Action)
identifies the specific issue behind a lower rating
drafts a tailored reply matched to the rating and issue
│
▼
SendToSlackForApproval
review, rating, issue, and drafted reply posted for human review
│
▼
LogReviewToSheet
every review logged permanently, with a status column
tracking whether the draft was sent as-is, edited, or replaced
Key design decisions:
- No auto-posting, under any circumstance. This is the central design principle of the whole system. The AI drafts every reply, but a human reviews it in Slack and decides whether to send it as written, edit it, or write something different entirely. A public-facing reply to a real guest, especially an unhappy one, should never leave a human's judgment out of the loop.
- Every review is logged, regardless of rating or outcome. The tracking sheet's status column captures not just that a review came in, but what actually happened to the AI's draft, sent as-is, edited before sending, or discarded, which over time becomes a real record of how reliable the drafting actually is in practice, not just a one-time demo claim.
- Classification and drafting happen in a single step, using Zapier's native AI Action rather than a separate model call. This is a genuine platform difference worth naming directly, Zapier's AI Action returns its response already split into separate, named fields based on the requested format, handling parsing internally rather than requiring a separate code step to extract structured data from raw text, a different tradeoff from a more manual, code-first automation platform.
- Correctly tailored tone based on rating. A 5-star review received a warm, appreciative reply with no issue flagged. A 1-star review citing rude staff produced an empathetic reply that directly acknowledged the specific complaint, not a generic apology.
- Accurate, specific issue classification. Across a varied test batch, cleanliness, noise, staff service, and value-for-money complaints were each correctly identified as distinct issues, not lumped into one generic "negative review" bucket.
- A real, working human-approval loop. Every drafted reply lands in a shared Slack channel before anything is finalized, and the tracking log distinguishes between drafts sent as written and drafts that needed editing, a genuine record of the tool's real-world reliability rather than a claim taken on faith.
- A platform's own data wasn't always in the format expected. The review platform's star rating arrived in two different forms in the same payload, a text label and a separate numeric field. Using the numeric field directly, rather than converting the text version, avoided an unnecessary parsing step entirely.
- A live platform trigger cannot be fed arbitrary test data. The real trigger only accepts genuine reviews already posted to a live business listing, which makes it unsuitable for generating a repeatable, safe test batch. A duplicated version of the workflow, swapped to a generic webhook trigger, allowed a controlled, repeatable batch of test reviews to be sent and reprocessed freely, the same webhook-based testing approach used throughout this project series, applied here on a different automation platform.
- Currently connected to one review platform. The business's actual review presence spans multiple platforms; extending coverage to others depends on what native triggers or reliable feeds each additional platform actually offers, some platforms have official, direct support, others would need a different, less direct approach.
- No automated error handling has been added yet. If the AI classification step fails, the current version does not yet guarantee the review is still logged for manual follow-up, an explicit fallback path, matching the pattern used throughout this project series on other platforms, would close this gap.
- Classification depends entirely on what's in the review text. A vague or unusually phrased complaint may be harder to classify precisely than a clearly worded one, the system's judgment is only as good as the information available in the review itself.
Zapier (workflow orchestration and native AI Actions), Google Business Profile (review trigger), Slack (human review and approval), Google Sheets (permanent review log)


