Who’s it for
Who’s it for Teams that monitor traffic, signups, or conversions in Google Analytics 4 and want automatic Slack/email alerts when a channel suddenly spikes or drops. What it does This n8n template pulls daily GA4 metrics, detects outliers with a rolling mean and z-score, and sends alerts with a sparkline chart. It supports per-channel analysis (e.g., sessionDefaultChannelGroup) and consolidates multiple anomalies into a single email while posting each one to Slack. How it works HTTP Request (GA4 Data API)** fetches sessions, newUsers, conversions, bounceRate by date + channel. Code** calculates 7-day moving average and z-scores, flags anomalies, and builds QuickChart links. If** filters on alert === true and optional ALERT_ME toggle. Slack** posts an alert + chart. Email** sends one summary email (subject + HTML table + charts). Requirements GA4 OAuth2 credential in n8n. Slack API credential (bot with chat\:write). Email credential (SMTP or service). GA4 property ID and at least several recent days of data. Where to find your GA4 Property ID In the GA UI:** Open Google Analytics → bottom-left Admin (gear). In the Property column, click Property settings. Copy Property ID — it’s a numeric value (e.g., 481356553). From the URL (quick way):** When you’re inside the GA4 property, the URL looks like: …/analytics/web/#/p123456789/… → the digits after p are your Property ID (123456789 in this example). What not to use:** Measurement ID (looks like G-XXXXXXX) — that’s the data stream ID, not the property ID. Universal Analytics IDs (UA-XXXXX-Y) — those are legacy and won’t work with GA4 Data API. In this template:** Put that numeric ID into the Set → PROPERTY_ID field. The HTTP node path properties/{{ $json.PROPERTY_ID }}:runReport expects only the number, no prefixes. How to set up Open the Set (Define variables) node and fill: PROPERTY_ID, LOOKBACK_DAYS, ALERT_PCT, Z_THRESHOLD, CHANNEL_DIM, ALERT_ME. Connect your Google Analytics OAuth2, Slack, and Email credentials. In Email Send, map Subject → {{$json.emailSubject}} and HTML body → {{$json.emailHtml}}. Keep Execute once enabled. Run the workflow. How to customize Change the moving-average window (WINDOW/MA_WINDOW) and chart range (LAST_N_DAYS_CHART). Swap CHANNEL_DIM (e.g., source/medium) to analyze different dimensions. Add/remove metrics in the GA4 request and the metrics list in the Code node. Tweak thresholds to reduce noise: raise Z_THRESHOLD or ALERT_PCT. Output example. An n8n automation workflow template by Artur.
Artur
web
paid
Others in the same category, ranked by how often they are opened.