Automated GA4 analytics data backfill to BigQuery with Telegram alerts
Workflow preview
$20/month : Unlimited workflows
2500 executions/month
THE #1 IN WEB SCRAPING
Scrape any website without limits
HOSTINGER
Early Deal
DISCOUNT 20% Try free
DISCOUNT 20%
Self-hosted n8n
Unlimited workflows - from $4.99/mo
#1 hub for scraping, AI & automation
6000+ actors - $5 credits/mo
Important notice
This workflow is provided as-is. Please review and test before using in production.
Overview
This workflow automates the daily backfill of Google Analytics 4 (GA4) data into BigQuery. It fetches 13 essential pre-processed reports (including User Acquisition, Traffic, and E-commerce) and uploads them to automatically created tables in BigQuery, and then send an alert in telegram.
How it works
- Configuration: You define your Project ID, Dataset, and Date Range in a central "Config" node.
- Parallel Fetching: The workflow runs 13 parallel API calls to GA4 to retrieve key reports (e.g.,
ga4_traffic_sources,ga4_ecommerce_items). - Dynamic Tables: It automatically checks if the target BigQuery table exists and creates it with the correct schema if it's missing.
- Telegram Alerts: After execution, it sends a summary message to Telegram indicating success or failure for the day's run.
Set up steps
- Google Credentials (OAuth): This workflow uses n8n's built-in "Google OAuth2 API" credential. You do not need a Service Account key. Connect your Google account and ensure you grant scopes for Google Analytics API and BigQuery API.
- Config Node: Open the "Backfill Config" node and fill in:
GA4 Property IDGoogle Cloud Project IDBigQuery Dataset ID
- Telegram Setup (Optional): If you want alerts, configure the Telegram node with your Bot Token and Chat ID. If not, you can disable/remove this node.
- Schedule: By default, this is set to run daily. It is recommended to use a date expression (e.g.,
Today - 2 Days) to allow GA4 time to process data fully before fetching.