Send weekly client performance reports via Gmail and Slack using Google Sheets, Meta Ads, Google Ads, GA4, and OpenAI
Needs changesWhat this workflow does
This workflow has 79 nodes and runs on a schedule (every week at 09:00) (plus 2 other triggers). Along the way it connects Gmail and Google Sheets. It also calls slack.com over HTTP.
How it runs
Trigger: On a schedule (every week at 09:00) (plus 2 other triggers).
- Workflow Config (Code): runs custom JavaScript code
- Demo config (fixture) (Code): runs custom JavaScript code
- Operator email (Code): runs custom JavaScript code
- Read config tab (Google Sheets): uses Google Sheets
- Read reports ledger (Google Sheets): uses Google Sheets
- Validate clients (Code): runs custom JavaScript code
- Format error alert (Code): runs custom JavaScript code
- Format digest email (Code): runs custom JavaScript code
- Collect sent keys (Code): runs custom JavaScript code
- Expand enabled sources (Code): runs custom JavaScript code
…plus 66 more steps. See the full node list below.
Services it uses
HTTP calls to: slack.com
Before you upgrade to n8n 3.0
1 thing in this workflow is removed in n8n 3.0. Fix it before you upgrade:
- OpenAI (legacy) in Write report narrative (AI): replace with OpenAI node (AI section).
| Removed in 3.0 | Replace with |
|---|---|
| OpenAI (legacy) Write report narrative (AI) | OpenAI node (AI section) |
Nodes used (11)
- Manual Trigger
n8n-nodes-base.manualTrigger - Code
n8n-nodes-base.code - Error Trigger
n8n-nodes-base.errorTrigger - Gmail
n8n-nodes-base.gmail - Schedule Trigger
n8n-nodes-base.scheduleTrigger - Google Sheets
n8n-nodes-base.googleSheets - If
n8n-nodes-base.if - Switch
n8n-nodes-base.switch - HTTP Request
n8n-nodes-base.httpRequest - Merge
n8n-nodes-base.merge - OpenAI
n8n-nodes-base.openAi
From the author
Quick overview This workflow runs every Monday, reads a Google Sheets config to fetch weekly metrics from Meta Ads, Google Ads, and GA4, uses OpenAI to write a narrative around deterministic week-over-week deltas, and delivers branded reports via Gmail and/or…