π± Send post-visit Google review requests from Google Sheets via Gmail
β‘ 1 views Β· π± Social Media & Email Marketing
Description
Quick Overview
This workflow runs hourly to read completed visits from Google Sheets, waits a configurable delay, and emails customers a Google review link with a one-click unsubscribe option via an n8n webhook, then records when each request was sent.
How it works
- Runs every hour on a schedule.
- Reads visit records from the βVisitsβ tab in Google Sheets.
- Filters for completed visits with valid emails that ended at least a set number of hours ago, are not older than the max age, have not been asked before, are not opted out, and are not processed during configured quiet hours.
- Sends an HTML review request email via SMTP/Email, including your Google review link and a personalized unsubscribe link.
- Updates the matching row in Google Sheets to set
review_requested_atfor successfully sent emails. - Serves an unsubscribe webhook that validates the visit and email from the link, marks
opt_outas TRUE for that email in Google Sheets, and returns an unsubscribe confirmation page.
Setup
- Create a Google Sheet with a βVisitsβ tab containing columns
visit_id, client_name, email, visit_end, timezone, status, review_requested_at, opt_outand ensurestatususescompletedfor eligible visits. - Add Google Sheets credentials and configure the spreadsheet URL/ID in both configuration steps used for sending and opt-out handling.
- Add SMTP/Email Send credentials and set the sender address, business name, review link, delay/max-age, timezone, and quiet hours in the configuration values.
- Activate the workflow, copy the Production webhook URL for the unsubscribe endpoint, and paste it into the
optout_urlvalue used to generate unsubscribe links.
π Nodes Used
Send Email, Google Sheets, Webhook, Schedule Trigger
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File