Slack + Google Sheets: qualified leads, logged fast
Leads slip through the cracks for boring reasons. A chat transcript sits in someone’s inbox, a call note lives in a rep’s head, and by the time it’s “logged,” the customer has already moved on.
Marketing managers feel it when follow-up speed kills conversion. Sales reps feel it when they’re stuck rewriting the same notes. And operators get dragged in when routing is messy. This Slack Sheets leads automation turns raw conversations into a quick qualification, with clean fields you can actually trust.
Below you’ll see how the workflow classifies transcripts with an AI agent, shapes the output into structured data, and pushes it where your team already works (Slack and Google Sheets).
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Slack + Google Sheets: qualified leads, logged fast
flowchart LR
subgraph sg0["When chat message received Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "When chat message received", pos: "b", h: 48 }
n5@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model2", pos: "b", h: 48 }
n6@{ icon: "mdi:memory", form: "rounded", label: "Simple Memory", pos: "b", h: 48 }
n9@{ icon: "mdi:robot", form: "rounded", label: "Ecommerce Chatbot", pos: "b", h: 48 }
n10@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Test if conversation is comp..", pos: "b", h: 48 }
n11@{ icon: "mdi:cog", form: "rounded", label: "Respond to User", pos: "b", h: 48 }
n12["<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/code.svg' width='40' height='40' /></div><br/>End the Conversation"]
n6 -.-> n9
n9 --> n10
n5 -.-> n9
n0 --> n9
n10 --> n12
n10 --> n11
end
subgraph sg1["When clicking ‘Test workflow’ Flow"]
direction LR
n1@{ icon: "mdi:play-circle", form: "rounded", label: "When clicking ‘Test workflow’", pos: "b", h: 48 }
n2@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model1", pos: "b", h: 48 }
n3@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser", pos: "b", h: 48 }
n4@{ icon: "mdi:swap-vertical", form: "rounded", label: "Edit Fields1", pos: "b", h: 48 }
n7["<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/code.svg' width='40' height='40' /></div><br/>Create Sample Data"]
n8@{ icon: "mdi:robot", form: "rounded", label: "Lead Qualifier Agent", pos: "b", h: 48 }
n7 --> n8
n2 -.-> n8
n8 --> n4
n3 -.-> n8
n1 --> 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,n1 trigger
class n9,n3,n8 ai
class n5,n2 aiModel
class n6 ai
class n10 decision
class n12,n7 code
classDef customIcon fill:none,stroke:none
class n12,n7 customIcon
The Problem: Lead notes are messy, slow, and inconsistent
Call transcripts and website chats are full of value, but they arrive as walls of text. Someone has to read them, guess intent, pull out the name, the quantity, the timeline, then decide if it’s even worth a follow-up. When your day is busy, that “someone” becomes nobody. Or it becomes a half-done copy-paste into a sheet with vague notes like “wants pricing.” The real cost isn’t just time. It’s delayed responses, missed bulk-order opportunities, and a team that can’t agree on what “qualified” even means.
The friction compounds. Here’s where it breaks down most often.
- A transcript can take 10 minutes to review, and you might have several a day.
- Different people summarize the same call differently, which makes reporting basically useless.
- Routing happens late, so hot leads wait while internal Slack messages bounce around.
- Manual logging invites small errors (names, quantities, phone numbers) that create awkward follow-ups.
The Solution: An AI agent that qualifies leads and outputs clean fields
This n8n workflow uses two beginner-friendly AI agent patterns to turn unstructured conversations into decisions your team can act on. For lead qualification, it starts with call transcript text (the template includes sample transcripts for testing), sends that text to an AI Agent powered by GPT‑4o‑mini, and asks for a structured JSON response. Then it parses and cleans that response into consistent fields, so you get the same format every time. In parallel, it also includes an ecommerce chat assistant: a webhook-based chat trigger, the same model with short-term memory, and a simple “completion check” to decide whether to confirm an order or keep the conversation open. The outcome is simple: faster triage, cleaner notes, and fewer missed follow-ups.
The workflow begins when you run a manual test or receive a website chat message via webhook. From there, an AI Agent classifies intent and extracts the key details. Finally, the clean output is ready to send into Slack for routing and into Google Sheets for logging and reporting.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you get 10 conversations a day across calls and site chat. If each one takes about 8 minutes to read, summarize, and log, that’s roughly 80 minutes daily just to keep notes usable (and that’s on a good day). With this workflow, you drop the transcript in or let the webhook capture the chat, then the AI returns structured fields in a minute or two and you post the result to Slack and Google Sheets. Net result: about an hour back a day, plus cleaner routing.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- OpenAI for GPT‑4o‑mini lead classification
- Slack to route qualified leads to the right channel
- Google Sheets to log leads for tracking and reporting
- OpenAI API key (get it from the OpenAI API dashboard)
Skill level: Beginner. You will connect credentials, paste a webhook URL into your chat tool, and tweak a prompt to match your lead criteria.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
A chat message or transcript kicks it off. The workflow can start from a webhook-based chat trigger for your website, or from a manual test run that feeds sample call transcripts (useful for validating your prompts before going live).
The AI agent extracts meaning and forces structure. GPT‑4o‑mini reads the text and returns a predictable JSON payload (for example: name, “Is Good Lead,” and the reasoning). n8n’s structured output parser helps keep responses consistent, so you’re not fighting random formatting.
Fields get cleaned for downstream tools. A Set/Edit Fields step maps the AI output into neat columns and labels you can reuse across Slack, Sheets, or even a CRM like Pipedrive or a board in Monday.com if you extend the workflow.
Results get routed and logged. Post the qualification summary to Slack for immediate follow-up, and write the structured fields into Google Sheets so you can sort, filter, and review performance without hunting through transcripts.
You can easily modify the qualification criteria to match your own definition of “good lead” based on order size, urgency, or product type. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Chat Trigger
Set up the workflow entry point for live chat conversations and keep the manual trigger for test runs.
- Add or select Incoming Chat Trigger and set Public to
true. - Confirm Incoming Chat Trigger is connected to Storefront Chat Assistant as shown in the execution flow.
- Keep Manual Execution Start connected to Generate Sample Records for offline testing.
Step 2: Connect the AI Models
Attach OpenAI credentials to the chat models used by the agents.
- Open Primary Chat Model and confirm the model is set to
gpt-4o-mini. - Credential Required: Connect your openAiApi credentials in Primary Chat Model.
- Open Secondary Chat Model and confirm the model is set to
gpt-4o-mini. - Credential Required: Connect your openAiApi credentials in Secondary Chat Model.
- Verify Primary Chat Model is connected to Lead Qualification Agent, and Secondary Chat Model is connected to Storefront Chat Assistant.
Step 3: Set Up Lead Qualification Processing
Prepare the sample input data, agent prompt, structured parsing, and field mapping for lead qualification.
- Open Generate Sample Records and keep the JavaScript Code as provided to generate test transcripts.
- In Lead Qualification Agent, set Text to
=Name: {{$json["name"]}} Transcript: {{$json["transcript"]}}. - Ensure Lead Qualification Agent has Prompt Type set to
defineand Has Output Parser enabled. - In Structured Result Parser, keep the JSON Schema Example exactly as shown to enforce structured output.
- In Map Output Fields, map the assignments using the expressions: Name →
={{$json["output"]["Name"]}}, Good Lead →={{$json["output"]["Is Good Lead"]}}, Reasoning →={{ $json.output.Reasoning }}.
Step 4: Configure the Storefront Chat Assistant
Set up the customer-facing assistant with memory and the system instructions.
- Open Storefront Chat Assistant and keep the detailed System Message content for product info, pricing, and bulk order logic.
- Connect Conversation Memory Buffer to Storefront Chat Assistant and set Context Window Length to
10. - Verify that Incoming Chat Trigger flows into Storefront Chat Assistant.
***** when a customer confirms an order—this marker is used for routing in the next step.Step 5: Configure the Conversation Routing Logic
Route the conversation based on whether the order confirmation marker is present.
- Open Conversation Completion Check and set the condition to check if Left Value
={{ $json.output }}contains Right Value*****. - Confirm Conversation Completion Check connects to Finalize Conversation on the “true” branch and Return User Reply on the “false” branch.
Step 6: Configure the Output Actions
Deliver the final response or pass the assistant’s reply back to the user.
- In Finalize Conversation, keep the JavaScript Code that returns
Your order has been placed. - Leave Return User Reply as a pass-through node for the assistant’s response when the order is not finalized.
Step 7: Test and Activate Your Workflow
Run manual tests, verify outputs, then turn on the workflow for production chat traffic.
- Click Execute Workflow and use Manual Execution Start to generate the sample records from Generate Sample Records.
- Confirm Lead Qualification Agent produces JSON output that Structured Result Parser can parse, and that Map Output Fields shows Name, Good Lead, and Reasoning.
- Test a live chat message through Incoming Chat Trigger and verify that Conversation Completion Check routes correctly based on the
*****marker. - When successful, toggle the workflow to Active for production use.
Common Gotchas
- OpenAI credentials can expire or be pasted incorrectly. If responses suddenly fail, check the OpenAI credential selected in both Chat Model nodes first.
- If you rely on the webhook chat trigger, the payload shape matters. When replies look wrong, confirm your chat tool is sending a plain “message” field like the template expects.
- Default AI prompts are generic, honestly. Add your lead criteria and brand voice early, or you will keep rewriting summaries and explanations every day.
Frequently Asked Questions
About 30 minutes if your tools are already set up.
No. You’ll mostly connect accounts and edit a prompt to match your lead criteria.
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 OpenAI API costs (often a few dollars a month at small volumes).
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 you should. Update the Lead Qualification Agent instructions to reflect your real criteria (minimum quantity, product line, delivery timeline, budget signals). If you want additional fields in Sheets, extend the Structured Result Parser to include them, then map them in the “Map Output Fields” step. Common tweaks include adding a “Lead Type,” capturing phone/email, and setting a priority tag for Slack routing.
Most of the time it’s an API key issue or the wrong credential selected in the Chat Model nodes. Regenerate the key, confirm billing is active in OpenAI, then reselect the credential in n8n. If it fails only during bursts, you may be hitting rate limits; slow down how many transcripts you send at once or add basic queueing.
On a typical n8n Cloud plan, it can handle thousands of runs per month, and self-hosting mainly depends on your server. For most small teams, the limiting factor is usually OpenAI throughput and cost, not n8n. If you start processing hundreds of transcripts a day, add batching and simple error retries so nothing gets dropped.
Often, yes. This workflow leans on AI Agent patterns, structured parsing, and branching logic, which n8n handles cleanly without turning every “if” into another paid step. Zapier or Make can still work if you want a very simple “send message to Slack” flow, but you’ll usually fight formatting and pay more once you add conditional routing and retries. Another practical point: n8n can be self-hosted, which is handy when volume grows. If you’re unsure, Talk to an automation expert and get a straight recommendation for your setup.
Once this is running, every conversation turns into a decision and a clean record automatically. That’s real follow-up speed, without adding more busywork to your week.
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.