Generate portfolio exposure risk summaries with Sheets, Gemini, Slack, and Gmail
Portfolio Exposure Risk Summary Generator
> n8n + Google Sheets + Gemini + Slack + Gmail
This workflow automatically analyzes portfolio data from Google Sheets on a scheduled basis, calculates exposure metrics such as sector allocation and concentration and generates a professional risk summary using Google Gemini. The report is then sent via email, shared on Slack and logged for historical tracking.
Quick Implementation Steps
Connect your Google Sheets portfolio data Add Gemini API credentials Configure Gmail and Slack nodes Set schedule trigger timing Run once to verify output and logging
What It Does
This workflow performs a complete portfolio risk analysis pipeline. It starts by fetching portfolio data from a Google Sheet and validating whether the required data exists. If valid data is present, it calculates key exposure metrics such as total portfolio value, sector allocation and concentration levels using a Code node.
These calculated metrics are then passed to an AI model (Google Gemini), which generates a concise and professional risk summary. The workflow ensures the output is structured properly before preparing a final report.
The final output is distributed through multiple channels: an email report, a Slack notification and a log entry in Google Sheets. If no portfolio data is available, the workflow gracefully handles the scenario by generating a fallback report and logging it.
Who It's For
Financial analysts monitoring portfolio risk Investment advisors managing client portfolios Business owners tracking asset exposure Automation enthusiasts building financial workflows
Requirements to Use This Workflow
n8n account (cloud or self-hosted) Google Sheets with portfolio data Google Gemini API credentials Gmail account connected in n8n Slack workspace connected in n8n
How It Works & Setup Guide
Step 1: Schedule Trigger
Configure the "Schedule Risk Review" node Default: Weekly run (Monday at 9 AM)
Step 2: Connect Portfolio Data
Use "Read Portfolio From Sheet" node Ensure sheet contains columns like:
Asset Name Sector Quantity Price Market Value (optional)
Step 3: Validate Data
"Check Portfolio Data Exists" ensures valid entries exist If no data → fallback branch executes
Step 4: Calculate Exposure Metrics
Code node calculates:
Total portfolio value Sector exposure and percentages Top holding concentration Top 3 holdings
Step 5: Generate AI Risk Summary
"Generate Risk Summary" uses Gemini model Input includes calculated metrics Output is structured JSON with risk summary
Step 6: Parse AI Output
"Parse Risk Summary" ensures valid JSON output Handles fallback parsing if needed
Step 7: Prepare Final Report
"Prepare Risk Report Data" formats final fields:
Total value Top sector and exposure Top holding and concentration Risk summary Run date and ID
Step 8: Deliver Report
Email sent via Gmail node Slack message posted Data logged in Google Sheets
Step 9: Fallback Handling
If no portfolio data exists:
Default summary is generated Logged to sheet for consistency
How To Customize Nodes
Modify schedule timing in Schedule node Update Google Sheet structure as per your data Adjust Code node logic for additional metrics Customize AI prompt for different analysis styles Change email/Slack message formatting
Add‑ons
Add risk scoring system (low/medium/high) Integrate historical trend analysis Add client-specific reporting Include asset-level risk breakdown Connect dashboards (e.g., Google Data Studio)
Use Case Examples
Weekly portfolio risk monitoring Client portfolio reporting for advisors Internal investment review automation Risk alerts for concentrated holdings Portfolio diversification analysis
Troubleshooting Guide
| Issue | Possible Cause | Solution | | --------------------------- | ------------------------- | ----------------------------------- | | No data processed | Empty Google Sheet | Ensure portfolio data exists | | AI output not parsed | Invalid JSON response | Check prompt format or parsing node | | Email not sent | Gmail credentials missing | Reconnect Gmail account | | Slack message not delivered | Incorrect channel setup | Verify Slack channel ID | | Incorrect calculations | Missing numeric values | Validate sheet data types |
Need Help?
If you need assistance setting up this workflow, customizing it for your business or building advanced automation solutions, feel free to reach out to our n8n automation developers at WeblineIndia / Global. Our team specializes in building scalable and production-ready automation workflows tailored to your needs.
We can help you extend this workflow with advanced analytics, dashboards, integrations and enterprise-grade solutions.
Related Templates
AI Email Classifier & Auto-Delete for Gmail (SPAM/OFFER Cleaner)
This workflow is designed for freelancers, solopreneurs, and business owners who receive a high volume of irrelevant mes...
Generate Food Recipes from Gmail & Form Requests with Ollama & Llama 3.2
This n8n template demonstrates how to create an intelligent food recipe assistant that accepts requests via Gmail and we...
Automatic News Summarization & Email Digest with GPT-4, NewsAPI and Gmail
📰 AI News Digest Agent: Auto News Summarizer & Email Newsletter Create an intelligent news curation system that automat...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments