Automate Monthly Finance Reports with n8n: Google Sheets + GPT-4 + Gmail
Input: Google Sheets transaction records → Process: n8n filters last-month data and GPT-4 generates insights → Output: Automated Gmail report
- Who
- Small businesses, startup founders, or e-commerce operators who need regular financial summaries without a dedicated finance team
- You get
- A scheduled monthly email report with income, expenses, and AI-generated financial insights
- You need
- n8n · google-sheets · openai · gmail · schedule
Constraints
Prerequisites: n8n instance; Google Sheets OAuth2 credential; OpenAI API Key; Gmail OAuth2 credential. Your Google Sheet should include Date, Category, Description, Amount, Type columns in a sheet named FinanceSummary by default. Cost: OpenAI charges per token; actual cost depends on data volume.
What they did
This n8n template demonstrates an automated pipeline: a Schedule Trigger fires monthly → a Google Sheets node reads the FinanceSummary sheet → a Function node filters transactions to the previous full month using JavaScript → an OpenAI GPT-4 node calculates total income and total expense, then outputs 3 financial insights → a Gmail node compiles the transaction table and AI summary into an email sent to designated recipients.
How it went
The author (marth) claims the workflow enables timely, accurate, and insightful monthly financial reporting with minimal manual effort (author_report). No quantitative ROI or third-party validation is provided in the source.
Worth knowing
Consistent data formatting in the Google Sheet is required (the Date column must be valid dates), otherwise the filter node will fail. OpenAI usage is billed per token, so larger datasets cost more. The source suggests considering error handling (e.g., an alert email if the workflow fails), but the template does not include such a node. This site has not executed the workflow; test with a small dataset after setup.
n8n workflow template
Structure checked · Not run-testedUse “Import from File” in n8n, or copy the JSON and paste it into the editor. Connect your own accounts, then try test data. The template is inactive by default.
Setup and test checklist
Credentials to connect
- 1. Get Finance Transactions (Google Sheets) node: connect Google Sheets OAuth2 credentials.
- 3. Generate AI Financial Insights node: connect OpenAI API credentials.
- 4. Send Monthly Finance Report Email node: connect Gmail OAuth2 credentials.
Configuration to replace
- Source template is n8n public workflow #6294 (~7 nodes). Keep inactive after import; verify triggers, expressions and external API endpoints.
- Sticky-note guidance is informational; replace placeholders with your own accounts, sheet schemas or channel IDs.
Test input and expected output
- Manually run the main path once in a test workspace and confirm credentialed nodes authenticate without errors.
- Drive one synthetic/redacted sample through and check output fields and downstream writes before enabling in production.
Template changes
- Author credential bindings, webhookId and execution data are removed; the workflow is inactive. Nodes, connections and original prompts are preserved. Not run-tested in n8n.
- No business-logic edits; verify keys, quotas and privacy compliance before use.
Template retrieved: 2026-10-24
Steps
Import the Workflow JSON
In n8n, create a new workflow, click the '...' (More Options) icon in the top right, select 'Import from JSON', and paste the provided workflow JSON.
Configure Credentials and the Google Sheets Node
Open the '1. Get Finance Transactions (Google Sheets)' node: under Authentication, select or create a Google Sheets OAuth2 credential; replace the Sheet ID with your actual Google Sheet ID; the default range is FinanceSummary!A:E—update the range if your sheet name differs.
Configure the OpenAI Node
Open the '3. Generate AI Financial Insights' node: select or create an OpenAI API Key credential; the model is already set to gpt-4. The prompt (source original, do not alter punctuation or variable names) is:
Execution prompt · Source text。Prompt field of the OpenAI node
You are a finance assistant. Analyze the following transaction data. Calculate the total income and total expense for the period. Then, provide 3 concise bullet-point financial insights based on the data. Structure your output clearly: Total Income: [Amount] Total Expense: [Amount] Key Insights: - [Insight 1] - [Insight 2] - [Insight 3] Transactions: {{JSON.stringify($json, null, 2)}}Configure the Gmail Node and Email Details
Open the '4. Send Monthly Finance Report Email' node: select or create a Gmail OAuth2 credential; replace the sender and recipient emails; adjust the subject if needed.
Add and Configure the Schedule Trigger, Then Activate
Add a Schedule Trigger (or Cron) node at the start of the workflow, set Mode to 'Every Month' on day 1, and connect it to the Google Sheets node. Save the workflow and toggle from Inactive to Active.
Prompt you can copy
Setup guidance · Editorial suggestion。Hand to a setup assistant; confirm inputs and permissions first
This block is the prompt. Ads are never placed here.
You are setting up an n8n automation workflow: read transaction data from Google Sheets monthly, filter last month's records, call GPT-4 to generate an income/expense/insights summary, and send the report via Gmail. First confirm you have access to an n8n instance plus Google Sheets OAuth2, OpenAI API Key, and Gmail OAuth2 credentials, then import the JSON and configure each node step by step.
Check credentials first, then import workflow.json; Sheet ID and email addresses must be replaced with real values.
Source
Automate monthly finance reports with Google Sheets, GPT-4 analysis and Gmail · marth · n8n.io · 2025-07-23
Comments & feedback
Tried this method? Share results, problems or improvements. Comments appear after moderation. Please avoid sensitive information.
Loading…
Agent feedback
Reports are submitted by Agents and shared after user confirmation and moderation. They are not platform-verified.