How to Build an AI Data Analyst Chatbot with n8n
Last updated Apr 29, 2026

n8n is an open-source workflow automation platform with over 400 native integrations. Its AI Agent node lets you chain together a language model, data retrieval tools, and a Calculator into a workflow that answers questions about your actual data. The result is a chatbot a non-technical analyst can use to run queries against a live spreadsheet or database without writing SQL or code.
The setup below follows n8n's official workflow template 3050. It uses Google Sheets as the data source, but the same pattern works with Postgres, MySQL, or any other database n8n supports. According to n8n's 2025 community survey, the AI Agent node is the most-forked workflow component on their platform.
Prerequisites
Before building, confirm you have:
- An n8n instance (n8n Cloud free tier or self-hosted v1.x or later)
- An OpenAI API key (GPT-4o is recommended for multi-step reasoning)
- A Google account with Sheets access
- A spreadsheet with labeled column headers in the first row
The free n8n Cloud tier is sufficient for testing. Self-hosted setups require Docker or npm and are documented at docs.n8n.io.
Step 1: Create a New Workflow
Log in to n8n and click "New Workflow." Name it something descriptive like "Data Analyst Chatbot." A clear name matters once you have multiple workflows in production.
Step 2: Add the Chat Trigger
Click the "+" button on the canvas and search for "When chat message received." This is n8n's native chat trigger node. It opens a built-in browser chat interface you can use to send test messages without connecting any external messaging platform. Drag the node onto the canvas and leave all settings at their defaults for now.
Step 3: Add the AI Agent Node
Click "+" after the Chat Trigger and search for "AI Agent." In the settings panel that opens:
Set the Agent type to "Tools Agent." This is the mode where the agent decides which tools to call based on the incoming question rather than following a fixed sequence.
Leave the System Prompt field at the default for now. You will customize it in Step 8.
Step 4: Connect a Language Model
The AI Agent node has a "Chat Model" slot. Click it and search for "OpenAI Chat Model." Connect your OpenAI credentials and set the model to gpt-4o. This model handles function calling and multi-step reasoning reliably on analytical queries.
If you prefer a local model, n8n supports Ollama and LM Studio via the same connector. Swap in the relevant credential type without changing the rest of the workflow.
Step 5: Add Google Sheets Data Tools
The agent needs tools that give it access to the actual data. Click the "+" on the Tools section of the AI Agent node and add the following three nodes:
Get Many Rows: Connect your Google OAuth2 credential, select your spreadsheet and tab name, and set "Return All" to true. This gives the agent access to the full dataset in a single call.
Get Row by Number: Configure with the same spreadsheet and tab. The agent calls this tool when it needs one specific record, for example "Show me the entry for order ID 4821."
Lookup: Maps a search term to a row number. Useful if the spreadsheet has a name column or identifier the user might reference in natural language.
To connect Google Sheets, go to Settings > Credentials > New Credential > Google OAuth2 and follow the authorization flow. The same credential object is shared across all three tools.
Step 6: Add the Calculator Tool
In the Tools section of the AI Agent, click "+" and add the "Calculator" node. This built-in tool handles arithmetic so the language model does not need to compute numbers in its own context window. Without it, the agent will occasionally produce off-by-one errors or wrong totals on aggregation queries. With it, every calculation goes through a deterministic compute step.
The Calculator tool requires no configuration beyond adding it to the workflow.
Step 7: Add Window Buffer Memory
Without a memory node, every message the user sends is treated as a new conversation. The agent forgets what was discussed one turn earlier, which breaks follow-up questions like "What was the highest value you just mentioned?"
Click the Memory slot inside the AI Agent node and add "Window Buffer Memory." Set Context Window Length to 10, which covers five back-and-forth exchanges. Higher values increase token cost per request. Ten is a reasonable default for most analytical conversations.
Step 8: Tune the System Prompt
Open the AI Agent node and fill in the System Prompt field. A minimal effective prompt looks like this:
You are a data analyst assistant. Answer questions using only the data retrieved from the connected tools.
If the answer requires arithmetic, use the Calculator tool.
If you cannot find the data needed to answer a question, say so clearly. Do not guess or invent values.
This instruction prevents the agent from hallucinating numbers when the dataset does not contain what the user asked for, which is the most common failure mode in production.
Step 9: Test the Workflow
Click "Test Workflow." The chat interface opens at the bottom of the n8n canvas. Type a question relevant to your data. For a sales spreadsheet, try: "What was the total revenue in Q1?" or "Which sales rep had the highest average deal size last month?"
Watch the execution log on the left panel. It shows exactly which tools were called, what data was returned, and what calculation ran before the final answer was produced. If a step fails, the error appears at the node level with the exact message, making it straightforward to debug.
Step 10: Extend to Postgres or MySQL
For production data volumes, Google Sheets has row limits and API rate limits. The workflow pattern extends directly to any relational database. Replace the Google Sheets tool nodes with n8n's Postgres "Execute Query" tool (or the equivalent MySQL tool). Set the credential to your database connection string, and update each tool's description field to tell the agent what schema it can query. For example:
This tool runs a SQL SELECT query against a sales database.
Tables: orders (order_id, amount, date, rep_name), customers (id, name, region, tier).
The agent reads tool descriptions to decide which query to write. A precise schema description produces accurate queries. A vague one produces incorrect or empty results.
Step 11: Share the Chat Interface
The Chat Trigger node generates a shareable URL once the workflow is active. Go to the node settings and click "Create Chat" to get the link. Share it with teammates who need to query the dataset, or embed the chat widget in an internal dashboard using the provided iframe code.
For teams that work in Slack or Microsoft Teams, the same workflow logic applies. Swap the Chat Trigger for a Slack Trigger node and add a Slack node at the end to post the agent's response back to the channel. No other part of the workflow changes.
Common Issues and Fixes
Agent loops without answering: The system prompt is missing an explicit instruction to stop when data is unavailable. Add "If you cannot find the answer, say so. Do not retry more than twice."
Google Sheets returns no rows: The sheet tab name in the tool node does not match the actual tab name in your spreadsheet. Check for capitalization differences or trailing spaces.
Calculator not being used for math: The agent is not recognizing the Calculator as a math tool. Add "Use the Calculator tool for all arithmetic" to the system prompt.
Memory not persisting between tabs: Window Buffer Memory is session-scoped, not user-scoped. If two users open the chat at the same time, their memory windows are separate. For user-specific memory across sessions, replace Window Buffer Memory with a Postgres-backed memory node.
Summary
An n8n AI data analyst chatbot requires six components: a Chat Trigger, an AI Agent node set to Tools Agent mode, a language model, one or more data retrieval tool nodes, a Calculator tool, and a Window Buffer Memory node. The full setup runs under an hour for a Google Sheets source. The same pattern extends to Postgres or MySQL by swapping the data tool credential and updating the schema description in the tool node. If you want to skip the configuration entirely, VSLZ AI handles the same types of queries from a file upload with no node setup required.
FAQ
What is the n8n AI data analyst chatbot template?
It is an official n8n workflow template (ID 3050) that connects an AI Agent node to Google Sheets or a database, along with a Calculator tool and memory node, to create a chatbot that answers quantitative questions about your data in plain English. The template is available at n8n.io/workflows/3050.
Which language models work with n8n's AI Agent node?
n8n's AI Agent node supports OpenAI (GPT-4o, GPT-4-turbo), Anthropic (Claude 3.5 Sonnet and Claude 3 Opus), Google Gemini, Mistral, and local models via Ollama or LM Studio. GPT-4o is recommended for data analyst workflows because it handles multi-step function calling reliably.
Can the n8n data analyst chatbot connect to a Postgres database instead of Google Sheets?
Yes. Replace the Google Sheets tool nodes with n8n's Postgres Execute Query tool. Configure the database connection credential, and update the tool description field with your schema information (table names and columns). The AI Agent uses that description to generate correct SQL queries.
Why is the Calculator tool important in the n8n data analyst workflow?
Large language models handle arithmetic unreliably in their own context window, especially on aggregation tasks like totals, averages, or percentage changes. The Calculator tool routes all math operations through a deterministic compute step, which eliminates rounding errors and incorrect totals that the model would otherwise produce.
How do I share the n8n AI chatbot with my team?
Activate the workflow in n8n and open the Chat Trigger node settings. Click 'Create Chat' to generate a shareable URL. Team members can open the URL in any browser to access the chatbot. For Slack or Teams integration, replace the Chat Trigger with the relevant messaging platform trigger and add a response node at the end of the workflow.


