Google Business Profile to Slack, review replies ready
You shouldn’t find out about a one-star review three days later. But it happens. Someone forgets to check the dashboard, notifications get buried, and suddenly you’re replying when the customer has already told everyone else.
This hits local business owners first, honestly. But restaurant managers and small reputation teams feel the same pressure. This GBP review alerts automation gets new reviews into Slack fast, with an AI reply draft so you’re not starting from scratch.
Below you’ll see exactly what the workflow does, what you get out of it, and how to run it without turning review management into a daily fire drill.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Google Business Profile to Slack, review replies ready
flowchart LR
subgraph sg0["Monitor Google Reviews Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Monitor Google Reviews", pos: "b", h: 48 }
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Business Configuration", pos: "b", h: 48 }
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "Format Google Reviews", pos: "b", h: 48 }
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/aitransform.svg' width='40' height='40' /></div><br/>Generate AI Response"]
n4@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Negative Review?", pos: "b", h: 48 }
n5["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Alert Team - Negative"]
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Notify Team - Positive"]
n7@{ icon: "mdi:database", form: "rounded", label: "Log to Google Sheets", pos: "b", h: 48 }
n4 --> n5
n4 --> n6
n3 --> n4
n5 --> n7
n2 --> n3
n1 --> n2
n0 --> n1
n6 --> n7
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n4 decision
class n7 database
class n5,n6 api
classDef customIcon fill:none,stroke:none
class n3,n5,n6 customIcon
The Problem: Reviews arrive, but your response is late
Reviews don’t wait for you to “get to it.” A customer posts feedback, it shows up on your Google Business Profile, and that moment is when you either calm the situation down or let it escalate in public. Manually checking reviews is annoying, so it slips. Then you’re scrambling: writing replies that sound rushed, trying to remember what happened that day, and chasing teammates on Slack to confirm details. Worse, you can’t even see patterns because the data is scattered across screenshots, tabs, and memory.
It adds up fast. Here’s where the process usually breaks.
- You spot negative reviews late, which means the thread turns into a pile-on before you reply.
- Reply quality swings wildly depending on who responds and how busy they are.
- There’s no clean log, so reporting on trends takes about 2 hours every month.
- Even good reviews get ignored, and that’s a missed chance to build loyalty publicly.
The Solution: Send Slack alerts, draft replies, and log every review
This n8n workflow watches your Google Business Profile for new reviews, then turns each one into a ready-to-handle “ticket” for your team. When a review lands, it pulls the details you actually need (rating, author, comment, and time), formats them into consistent fields, and asks an AI agent to draft a response that fits the situation. A low rating gets routed as an urgent Slack message so it’s hard to miss. Positive feedback gets a different Slack message, because you want celebration and visibility, not panic. Finally, every review and its drafted reply are appended into a Google Sheet so you have a clean history for training, reporting, and follow-ups.
The workflow starts with a Google Business Profile review trigger. Then it standardizes the review fields and generates an AI reply draft based on the rating and text. Slack gets the right alert, and Google Sheets becomes your running source of truth.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say your location gets 20 reviews a week. Manually, you might check Google twice a day (about 10 minutes each time), then spend another 10 minutes per review writing replies, which is roughly 5 hours a week. With this workflow, the “checking” time drops to basically zero because Slack alerts you, and drafting is handled automatically; you’ll usually spend about 2 minutes reviewing and posting the response. That’s closer to 40 minutes of real work, not a recurring chore.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Google Business Profile to detect and read new reviews
- Slack to send team notifications via webhook
- Google Sheets to log reviews and AI reply drafts
- Google API credentials (create a service account in Google Cloud)
Skill level: Intermediate. You’ll connect Google credentials, set a few environment variables, and test Slack webhooks.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
A new review appears on your Google Business Profile. The workflow is triggered as soon as the review is detected, so you’re not relying on someone to “remember to check.”
Your business context and review fields are standardized. A configuration step sets details like your business name and preferred tone, then the review is mapped into consistent fields (rating, text, reviewer, timestamps) so downstream actions behave predictably.
An AI agent drafts a reply that fits the situation. The workflow composes a response suggestion based on what the customer actually said and how they rated you, which means a one-star complaint gets a different style than a quick five-star compliment.
Slack gets the right notification, and Sheets gets the permanent log. Low ratings go to an “urgent” Slack message, positive ones get a more celebratory alert, and both paths end by appending the full record (including the AI draft) to your Google Sheet.
You can easily modify the rating threshold to change what counts as “urgent” based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Google Business Profile Trigger
Set up the trigger so the workflow starts when a new Google Business Profile review is detected.
- Add the Track GMB Reviews node as the trigger.
- Set Account to
={{ $env.GOOGLE_BUSINESS_ACCOUNT_ID }}. - Set Location to
={{ $env.GOOGLE_BUSINESS_LOCATION_ID }}. - Set Poll Times to
everyMinuteto check for new reviews continuously.
GOOGLE_BUSINESS_ACCOUNT_ID and GOOGLE_BUSINESS_LOCATION_ID are set before testing.Step 2: Connect Business Profile and Map Review Fields
Normalize incoming review data and set workspace-level settings for downstream nodes.
- In Set Business Profile, set businessName to
Your Business Name. - Set responseTone to
professional and friendly. - Set slackWebhookUrl to
={{ $env.SLACK_WEBHOOK_URL }}and notificationEmail to={{ $env.NOTIFICATION_EMAIL }}. - In Map Review Fields, map rating to
={{ $json.starRating }}and reviewText to={{ $json.comment }}. - Map reviewerName to
={{ $json.reviewer.displayName }}, reviewDate to={{ $json.createTime }}, and reviewId to={{ $json.reviewId }}.
$env.SLACK_WEBHOOK_URL or $env.NOTIFICATION_EMAIL are missing, the Slack and notification outputs will fail silently because Set Business Profile uses these expressions.Step 3: Set Up the AI Response Generation
Create the AI-generated reply based on review sentiment and the business tone.
- Open Compose AI Reply and set Instructions to the provided prompt text in the node.
- Confirm the prompt references the mapped fields, including
{{ $json.source }},{{ $json.rating }},{{ $json.reviewerName }}, and{{ $json.reviewText }}. - Verify the response tone is pulled from Set Business Profile with
{{ $('Set Business Profile').item.json.responseTone }}.
Step 4: Configure Routing and Output Actions
Route low ratings to urgent alerts and log every review in Google Sheets.
- In Check Low Rating, set the condition to Number lte with Left Value
={{ $json.rating }}and Right Value3. - Configure Send Urgent Slack with URL set to
={{ $('Set Business Profile').item.json.slackWebhookUrl }}and MethodPOST. - Set the Send Urgent Slack body text to the provided template, including
{{ $json.output }}for the AI response. - Configure Send Positive Slack with the same webhook URL expression and the positive template text.
- In Append Sheet Log, set Operation to
append, Sheet Name toReviews, and Document ID to={{ $env.GOOGLE_SHEET_ID }}. - Credential Required: Connect your googleApi credentials to Append Sheet Log with Authentication set to
serviceAccount.
Step 5: Test and Activate Your Workflow
Run a manual test to confirm Slack alerts and sheet logging work as expected before going live.
- Use Execute Workflow and simulate a review payload to trigger Track GMB Reviews.
- Confirm that Compose AI Reply returns a response in
$json.outputand that Check Low Rating routes correctly. - Verify you receive a message in Slack from either Send Urgent Slack or Send Positive Slack.
- Check that Append Sheet Log adds a new row in the
Reviewssheet with all mapped fields. - Once validated, toggle the workflow to Active for production use.
Common Gotchas
- Google Business Profile credentials can expire or lack the right scopes. If things break, check your Google Cloud service account access and enabled APIs first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.
Frequently Asked Questions
About 30 minutes if your Google and Slack access is ready.
No. You’ll mostly paste credentials, set environment variables, and test one review through the flow.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in AI usage costs from your provider, plus any Google Cloud costs if your setup requires paid APIs.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, and it’s straightforward. Update the Set Business Profile node to change your business name and tone preferences, then adjust the Check Low Rating IF condition to treat 3-star (or even 4-star) reviews as urgent. You can also tweak the Slack message content in the two HTTP Request nodes so your channel gets exactly the wording you want. Many teams add a second Slack webhook too, like sending negatives to #ops and positives to #marketing.
Usually it’s the service account lacking access to the right Business Profile location, or the API isn’t enabled in Google Cloud. Regenerate credentials if needed, confirm the Business Profile API and Sheets API are enabled, and double-check your Business Account ID and Location ID environment variables match the correct listing. Also check that the service account has edit access to the target Google Sheet, because the workflow ends by appending rows there.
A typical small business can run this all month without thinking about limits.
Often, yes, if you care about control and consistency. n8n makes it easier to branch logic (like “urgent vs positive”), keep the AI drafting step flexible, and log everything without paying extra for every little filter. Self-hosting is the other big deal, because you’re not boxed into execution caps the same way. Zapier or Make can be quicker for a simple two-step “new review → Slack message,” though, and that’s totally fine. If you’re torn, Talk to an automation expert and you’ll get a straight recommendation.
Fast alerts, consistent replies, and a clean log in Sheets changes how review management feels. Set it up once, then let Slack tap you on the shoulder when it actually matters.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.