πŸ”¬ Monthly Google Ads performance report sync to Google Sheets

⚑ 905 views Β· πŸ”¬ Document Extraction & Analysis

πŸ’‘ Pro Tip β€” For lead enrichment, ScraperNode can pull LinkedIn profiles, company data, and job listings directly into your pipeline β€” useful for building prospect lists without manual research.

View All Scrapers

Description

Quick overview

πŸ“Ί Full walkthrough video: https://youtu.be/62QIMjT2u-E

Automatically pulls monthly Google Ads campaign metrics for multiple clients via the API and appends the data into dedicated Google Sheets tabs β€” triggered on the 3rd of each month.

How it works

  1. A Schedule Trigger fires on the 3rd of each month at 10 AM to kick off the reporting process.
  2. A Google Sheets node reads the full client list (with their Google Ads Customer IDs) from a source sheet.
  3. A SplitInBatches loop iterates over each client one by one, sending a POST request to the Google Ads searchStream API endpoint to fetch last month’s campaign metrics (cost, clicks, impressions, conversions, conversion value).
  4. A JavaScript Code node flattens the raw API response, converts cost from micros to euros, rounds numeric values, and normalizes the month format.
  5. The processed rows are appended to a dedicated per-client tab (named Data {Client}) in the same Google Sheet.
  6. A Wait node pauses execution between each client to respect API rate limits before looping to the next.

Setup

  1. Duplicate the template spreadsheet β€” Google Sheets Template β€” and save it to your Google Drive.
  2. Connect your Google Sheets OAuth2 credentials and point the β€œRead Clients from Sheets” node to your spreadsheet and the β€œClient” source sheet.
  3. Connect your Google Ads OAuth2 credentials in the HTTP Request node.
  4. Replace the developer-token and login-customer-id header values in the HTTP Request node with your own.
  5. Ensure each client tab in the spreadsheet is named Data {Client} to match the dynamic sheet name expression.
  6. Adjust the Wait node delay if needed to avoid hitting API rate limits.

Requirements

Customization

Additional info

Template maintained by Growth AI β€” a Lyon-based automation agency specializing in n8n workflows. For custom enterprise reporting pipelines, reach out via LinkedIn.

πŸ”— Nodes Used

Google Sheets, HTTP Request, Schedule Trigger

πŸ“₯ Import

Download workflow.json and import into n8n: Workflow menu β†’ Import from File

πŸ“– Importing guide Β· πŸ”‘ Credential setup