Back to Catalog

Transform spreadsheet data into smart charts with OpenAI, QuickChart & Google Drive

LeeWeiLeeWei
99 views
2/3/2026
Official Page

Overview of the n8n Workflow

This n8n workflow automates the transformation of spreadsheet data into professional charts and graphs using AI-driven analysis. Triggered via Slack, it processes uploaded files (Excel, CSV, Google Sheets, or Drive links), interprets the data with an AI agent to determine the best visualization type (e.g., bar, line, pie, doughnut, or bubble charts), generates images via QuickChart, uploads them to Google Drive, and delivers the results back to the user in Slack with titles and shareable links. It maintains conversation context in Postgres for seamless multi-turn interactions and handles audio or text inputs for chart requests.

image.png

What this workflow does:

  • Hooks up to Slack for seamless spreadsheet uploads
  • Automatically extracts your data and generates bar charts, line graphs, bubble charts, and more
  • Delivers stunning visualizations straight back to you in Slack
  • Makes it easy to spot trends, patterns, and insights—on demand

How it Works

• Users upload spreadsheets or share links via Slack, along with a natural language request (e.g., "Create a bar chart of sales by month"). • The workflow detects file types, extracts and aggregates data, then uses an AI agent to parse the request and select an appropriate chart type.

Screenshot 20250916 214838.png • Data is formatted and sent to QuickChart's API to generate the visualization image.

Screenshot 20250916 214822.png • Images are uploaded to Google Drive, and a confirmation message with titles and links is sent back to Slack.


Set Up Steps

Setup takes about 15-30 minutes, mainly for credential configuration. Detailed node instructions are in the workflow's sticky notes—focus on pasting API keys and testing triggers. Once cloned, the workflow runs plug-and-play; only tweak credentials and optional prompts as needed.


⚙️ Turn Spreadsheets Into Charts & Graphics

Automate turning uploaded spreadsheets into AI-generated charts (bar, line, pie, etc.) via Slack, with results shared as Google Drive links.

🧑‍💻 Author: LeeWei


🚀 Steps to Connect:

  1. Slack Bot Setup

    • Create a Slack app at api.slack.com/apps and add scopes for chat:write, files:read, channels:read.
    • Generate a Bot User OAuth Token and paste it into the Slack Trigger node's credentials in n8n.
    • Invite the bot to your desired channel for file uploads and messages.
  2. OpenAI API Key

    • Sign up at platform.openai.com and generate an API key.
    • Paste this key into the OpenAI (gpt-4o-mini) node's credentials.
    • 💡 For cost efficiency, monitor usage—basic charts use minimal tokens.
  3. Postgres Database Connection

    • Set up a Postgres instance (e.g., via Supabase or your host) with a table named n8n_rodger_chat for chat history.
    • Add connection details (host, database, user, password) to the Postgres nodes' credentials.
    • This enables thread memory; skip if not using multi-turn chats (but recommended for context).
  4. Google Sheets & Drive Setup

    • Create OAuth2 credentials at console.cloud.google.com with scopes for Sheets (read) and Drive (upload, share).
    • Paste the credentials into the Google Sheets and implied Drive upload nodes.
    • Test by sharing a sample sheet—ensures data extraction and image storage work.
  5. QuickChart Integration

    • No API key needed for free tier (up to 500 charts/month); visit quickchart.io to confirm.
    • For production (100k+ charts/month), upgrade to corporate plan ($40/month) and add any auth if required in the HTTP Request node.
    • The node is pre-configured for chart generation—edit URL params only for custom styling.

Plug and Play Instructions

Clone the workflow JSON directly into n8n—all nodes (triggers, AI agents, extractors, switches) are pre-wired and ready. No re-setup needed beyond the steps above. Key editable fields (found in sticky notes):

  • AI Agent Node: System Prompt
    Customize the chart interpretation (default: auto-selects bar/line/pie/etc. based on data). Example: Change to prioritize "scatter plots for correlations" if needed.

  • Switch Nodes (File Detection)
    Add rules for new formats (e.g., .ods for OpenDocument) in the conditions for XLS/XLSX/CSV/Sheets/Drive.

  • HTTP Request Node (QuickChart)
    Tweak chart params like width=800&height=600 for size, or colors via ?chart=... for branding.

  • Let User Know Upload Complete: Text
    Adjust the confirmation message template for tone (e.g., add emojis or custom phrasing).

Test with a sample Slack message: "Make a line graph from this sales CSV over months." Results appear instantly with links.


Potential Customizations

  • Add Chart Types: Duplicate a chart branch (e.g., Line Graph) and integrate new QuickChart endpoints for scatter or funnel charts.
  • Switch AI Provider: Replace OpenAI with OpenRouter in the Chat Model node for alternative LLMs.
  • Batch Size: Edit the Loop Over Items node's batch for larger datasets (default handles small files efficiently).
  • Error Handling: Add IF nodes post-extraction to notify on invalid data.

Considerations and Improvements

  • Rate Limits: QuickChart free tier suits testing; scale to paid for heavy use. OpenAI tokens add up for complex data.
  • File Limits: Supports up to ~10MB uploads; for larger, preprocess externally.
  • Privacy: Data passes through OpenAI—review for sensitive info.
  • Enhancements: Integrate image OCR for scanned tables, or export to PDF for reports.

This workflow streamlines data viz without coding, perfect for teams analyzing trends on the fly. Questions? Drop a Slack message in your bot channel!

Transform Spreadsheet Data into Smart Charts with OpenAI, QuickChart, and Google Drive

This n8n workflow automates the process of generating insightful charts from spreadsheet data using AI, visualizing them with QuickChart, and sharing them via Slack. It simplifies data analysis and reporting, making it easy to turn raw data into actionable visual insights.

What it does

This workflow performs the following key steps:

  1. Listens for a Slack Command: The workflow is triggered by a specific slash command in Slack (e.g., /chart).
  2. Parses Slack Message: It extracts relevant information from the Slack message, such as the Google Drive file ID and the user's request for data analysis.
  3. Downloads Spreadsheet from Google Drive: It retrieves the specified spreadsheet file from Google Drive.
  4. Extracts Data from File: The workflow extracts the data from the downloaded spreadsheet (e.g., CSV, Excel).
  5. Summarizes Data: It aggregates and summarizes the extracted data, preparing it for analysis.
  6. Generates Chart Prompt with OpenAI: It uses an OpenAI Chat Model to generate a QuickChart.io compatible JSON configuration based on the summarized data and the user's request.
  7. Creates Chart Image: It sends the generated JSON configuration to the QuickChart.io API via an HTTP Request node to create a chart image.
  8. Uploads Chart to Google Drive: The generated chart image is uploaded to a specified folder in Google Drive.
  9. Posts Chart to Slack: Finally, the workflow posts the generated chart image (with a link to the Google Drive file) back to the Slack channel where the command was initiated.

Prerequisites/Requirements

To use this workflow, you will need:

  • n8n Account: A running n8n instance.
  • Slack Account: With a Slack App and a slash command configured to trigger the n8n webhook.
  • OpenAI API Key: For the OpenAI Chat Model node to generate chart configurations.
  • Google Drive Account: For storing and retrieving spreadsheet data and generated charts.
  • QuickChart.io API: The workflow uses QuickChart.io for chart generation (no explicit API key needed for basic usage, but check QuickChart.io's terms).

Setup/Usage

  1. Import the Workflow: Download the provided JSON and import it into your n8n instance.
  2. Configure Credentials:
    • Slack Trigger: Configure your Slack API credentials to listen for the desired slash command.
    • Google Drive: Set up your Google Drive credentials to allow n8n to access files.
    • OpenAI Chat Model: Provide your OpenAI API Key.
    • Slack: Configure your Slack API credentials for posting messages and files.
  3. Customize Nodes:
    • Slack Trigger: Ensure the "Command" field matches your Slack slash command (e.g., /chart).
    • Google Drive (Download File): Specify the "File ID" of your target spreadsheet. This can be dynamically extracted from the Slack message if users provide it.
    • Google Drive (Upload File): Configure the "Folder ID" where you want to save the generated chart images.
    • OpenAI Chat Model: Review the prompt to ensure it effectively guides the AI to generate the desired chart configurations from your data.
    • HTTP Request (QuickChart.io): Verify the QuickChart.io API endpoint and parameters if you need custom chart types or features.
  4. Activate the Workflow: Once configured, activate the workflow.
  5. Trigger from Slack: Use your configured slash command in Slack (e.g., /chart <Google_Drive_File_ID> <Your_Chart_Request>) to trigger the workflow and generate charts.

Related Templates

AI-powered code review with linting, red-marked corrections in Google Sheets & Slack

Advanced Code Review Automation (AI + Lint + Slack) Who’s it for For software engineers, QA teams, and tech leads who want to automate intelligent code reviews with both AI-driven suggestions and rule-based linting — all managed in Google Sheets with instant Slack summaries. How it works This workflow performs a two-layer review system: Lint Check: Runs a lightweight static analysis to find common issues (e.g., use of var, console.log, unbalanced braces). AI Review: Sends valid code to Gemini AI, which provides human-like review feedback with severity classification (Critical, Major, Minor) and visual highlights (red/orange tags). Formatter: Combines lint and AI results, calculating an overall score (0–10). Aggregator: Summarizes results for quick comparison. Google Sheets Writer: Appends results to your review log. Slack Notification: Posts a concise summary (e.g., number of issues and average score) to your team’s channel. How to set up Connect Google Sheets and Slack credentials in n8n. Replace placeholders (&lt;YOURSPREADSHEETID&gt;, &lt;YOURSHEETGIDORNAME&gt;, &lt;YOURSLACKCHANNEL_ID&gt;). Adjust the AI review prompt or lint rules as needed. Activate the workflow — reviews will start automatically whenever new code is added to the sheet. Requirements Google Sheets and Slack integrations enabled A configured AI node (Gemini, OpenAI, or compatible) Proper permissions to write to your target Google Sheet How to customize Add more linting rules (naming conventions, spacing, forbidden APIs) Extend the AI prompt for project-specific guidelines Customize the Slack message formatting Export analytics to a dashboard (e.g., Notion or Data Studio) Why it’s valuable This workflow brings realistic, team-oriented AI-assisted code review to n8n — combining the speed of automated linting with the nuance of human-style feedback. It saves time, improves code quality, and keeps your team’s review history transparent and centralized.

higashiyama By higashiyama
90

Generate Weather-Based Date Itineraries with Google Places, OpenRouter AI, and Slack

🧩 What this template does This workflow builds a 120-minute local date course around your starting point by querying Google Places for nearby spots, selecting the top candidates, fetching real-time weather data, letting an AI generate a matching emoji, and drafting a friendly itinerary summary with an LLM in both English and Japanese. It then posts the full bilingual plan with a walking route link and weather emoji to Slack. 👥 Who it’s for Makers and teams who want a plug-and-play bilingual local itinerary generator with weather awareness — no custom code required. ⚙️ How it works Trigger – Manual (or schedule/webhook). Discovery – Google Places nearby search within a configurable radius. Selection – Rank by rating and pick the top 3. Weather – Fetch current weather (via OpenWeatherMap). Emoji – Use an AI model to match the weather with an emoji 🌤️. Planning – An LLM writes the itinerary in Markdown (JP + EN). Route – Compose a Google Maps walking route URL. Share – Post the bilingual itinerary, route link, and weather emoji to Slack. 🧰 Requirements n8n (Cloud or self-hosted) Google Maps Platform (Places API) OpenWeatherMap API key Slack Bot (chat:write) LLM provider (e.g., OpenRouter or DeepL for translation) 🚀 Setup (quick) Open Set → Fields: Config and fill in coords/radius/time limit. Connect Credentials for Google, OpenWeatherMap, Slack, and your LLM. Test the workflow and confirm the bilingual plan + weather emoji appear in Slack. 🛠 Customize Adjust ranking filters (type, min rating). Modify translation settings (target language or tone). Change output layout (side-by-side vs separated). Tune emoji logic or travel mode. Add error handling, retries, or logging for production use.

nodaBy noda
52

AI-powered document search with Oracle and ONNX embeddings for recruiting

How it works Create a user for doing Hybrid Search. Clear Existing Data, if present. Add Documents into the table. Create a hybrid index. Run Semantic search on the Documents table for "prioritize teamwork and leadership experience". Run Hybrid search for the text input in the Chat interface on the Documents table. Setup Steps Download the ONNX model allMiniLML12v2augmented.zip Extract the ZIP file on the database server into a directory, for example /opt/oracle/onnx. After extraction, the folder contents should look like: bash bash-4.4$ pwd /opt/oracle/onnx bash-4.4$ ls allMiniLML12_v2.onnx Connect as SYSDBA and create the DBA user sql -- Create DBA user CREATE USER app_admin IDENTIFIED BY "StrongPassword123" DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA UNLIMITED ON users; -- Grant privileges GRANT DBA TO app_admin; GRANT CREATE TABLESPACE, ALTER TABLESPACE, DROP TABLESPACE TO app_admin; Create n8n Oracle DB credentials hybridsearchuser → for hybrid search operations dbadocuser → for DBA setup (user and tablespace creation) Run the workflow Click the manual Trigger It displays Pure semantic search results. Enter search text in Chat interface It displays results for vector and keyword search. Note The workflow currently creates the hybrid search user, docuser with the password visible in plain text inside the n8n Execute SQL node. For better security, consider performing the user creation manually outside n8n. Oracle 23ai or 26ai Database has to be used. Reference Hybrid Search End-End Example

sudarshanBy sudarshan
211