🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Google Ads to Gmail, weekly insights without spreadsheets

Lisa Granqvist Partner Workflow Automation Expert

Your Monday shouldn’t start with exports, pivot tables, and that nagging feeling you missed something important in Google Ads. But it does. One filter wrong, one column pasted into the wrong tab, and your “weekly report” becomes a week-old guess.

This Google Ads insights automation hits marketing managers first, because they’re the ones asked “what changed?” before coffee. Agency leads feel it too when clients want clarity, not screenshots. And founders who run ads themselves? They usually don’t have time for any of it.

This workflow pulls two weeks of Google Ads performance, compares week over week, asks AI to explain what’s happening, then emails you a clean HTML report. You’ll see what it does, what you need, and how to make it fit your accounts.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Google Ads to Gmail, weekly insights without spreadsheets

The Problem: Weekly Google Ads reporting becomes a time trap

Google Ads data is easy to access, but turning it into a decision-ready story is where the time disappears. You pull the last 7 days, then you realize you need the previous 7 days to compare. Now you’re exporting twice, reconciling dates, and rebuilding the same tables you built last week. Meanwhile, performance changes don’t wait for your spreadsheet to catch up. A campaign can quietly burn budget with zero conversions for days, and you only notice after the money’s gone. Honestly, the worst part is mental load: you’re doing analysis while also doing data cleaning.

The friction compounds fast. Here’s where it usually breaks down.

  • You spend about 2–3 hours every week just assembling numbers before you can even think.
  • Week-over-week comparisons get skipped, so “trend” becomes whatever you remember from last Monday.
  • Small mistakes creep in, like mismatched date ranges or missing campaigns, and they skew decisions.
  • Insights live in someone’s head, which makes it hard to share progress with clients or stakeholders.

The Solution: A Monday-morning Google Ads report that writes itself

This workflow runs automatically every Monday at midnight and builds your weekly Google Ads report for you. It pulls the last 7 days of performance data (impressions, clicks, cost, conversions, CTR, CPA), then pulls the previous 7 days to create a clean comparison window. Next, it summarizes each week, merges the two sets, and aggregates everything into one “analysis payload” that’s easy to interpret. Then an AI analyst (powered by GPT-5.1 through the OpenAI Chat Model) looks for anomalies, explains likely causes, and generates prioritized recommendations you can actually act on. Finally, n8n formats the output into a professional HTML email and sends it straight to your Gmail inbox, ready to forward to a client or drop into a Monday standup.

The workflow starts on a weekly schedule, then collects two consecutive weeks of Google Ads data in parallel. After that, it condenses the raw rows into week summaries, asks AI to produce an executive-friendly interpretation, and emails the finished report to your chosen recipient.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you manage 12 campaigns and you build a weekly view for yourself and one client. Manually, you’ll usually export two date ranges, clean them up, and write notes, which is easily about 2–3 hours once you include checking anomalies. With this workflow, your “work” is basically zero minutes after setup: the trigger fires on Monday, the API pulls and AI analysis run in the background (often within about 10–20 minutes), and the report lands in Gmail ready to forward. That’s a chunk of your Monday back, every week.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Ads to provide weekly performance metrics.
  • Gmail to send the finished report to your inbox.
  • OpenAI API key (get it from the OpenAI Platform API Keys page).

Skill level: Intermediate. You’ll paste IDs/tokens, connect OAuth, and test the first run.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A weekly schedule kicks things off. Every Monday at midnight (or whenever you choose), n8n starts the workflow without anyone clicking a thing.

Two Google Ads pulls happen in parallel. One request fetches the most recent week. A second request fetches the week before that so your comparison is consistent instead of “vibes-based.”

The raw rows get turned into summaries. The workflow splits out results, calculates totals and key metrics, then merges both weeks into one combined view that highlights changes.

AI writes the narrative and recommendations. The aggregated dataset is sent to the AI analyst, which produces insights, flags risks (like spend with no conversions), and suggests what to do next in priority order.

The report lands in Gmail. n8n formats everything into an HTML email with tables and a clear executive summary, then sends it to your chosen recipient.

You can easily modify the schedule and analysis emphasis to match your goals. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Schedule Trigger

Set the weekly automation kickoff so the workflow runs on a consistent cadence.

  1. Add and open Weekly Schedule Start.
  2. Set the schedule rule to run weekly with interval field weeks and triggerAtDay set to 1.
  3. Confirm the node outputs to both branches: Weekly Schedule Start outputs to both Fetch Recent Week Metrics and Fetch Prior Week Metrics in parallel.

Tip: Keep the weekly trigger aligned with your reporting week to ensure the date windows in the Google Ads queries match your business reporting period.

Step 2: Connect Google Ads and Fetch Weekly Data

Configure both HTTP requests to pull last week and prior week performance data from Google Ads.

  1. Open Fetch Recent Week Metrics and set URL to =https://googleads.googleapis.com/v20/customers/[YOUR_ID]/googleAds:search.
  2. Set Method to POST and Specify Body to json.
  3. Set JSON Body to the query with date expressions: ={ "query": "SELECT campaign.id, campaign.name, campaign.status, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.average_cpc, metrics.conversions, metrics.conversions_value, metrics.all_conversions, metrics.search_impression_share, metrics.search_budget_lost_impression_share FROM campaign WHERE segments.date BETWEEN '{{ $now.minus(7, 'days').format('yyyy-MM-dd') }}' AND '{{ $now.format('yyyy-MM-dd') }}' AND campaign.status = 'ENABLED' ORDER BY metrics.cost_micros DESC" }.
  4. Add headers in Fetch Recent Week Metrics: Content-Type = application/json and developer-token = [CONFIGURE_YOUR_API_KEY].
  5. Repeat the same configuration for Fetch Prior Week Metrics, but set JSON Body date range to {{ $now.minus(14, 'days').format('yyyy-MM-dd') }} through {{ $now.format('yyyy-MM-dd') }}.
  6. Credential Required: Connect your googleAdsOAuth2Api credentials in both Fetch Recent Week Metrics and Fetch Prior Week Metrics.

⚠️ Common Pitfall: If you leave [YOUR_ID] or [CONFIGURE_YOUR_API_KEY] unchanged, the Google Ads API request will fail with authorization errors.

Step 3: Parse and Summarize Weekly Results

Split the API results and compute weekly summaries for both the recent and prior week.

  1. Open Split Recent Results and set Field To Split Out to results.
  2. Open Summarize Recent Week and paste the provided JavaScript in JS Code to calculate totals, CTR, CPA, and top/problem campaigns.
  3. Open Split Prior Results and set Field To Split Out to results.
  4. Open Summarize Prior Week and paste the provided JavaScript in JS Code to generate the same summary for the prior week.
  5. Ensure Summarize Recent Week connects to Combine Week Metrics and Summarize Prior Week connects to Combine Week Metrics as the second input.

Tip: The summary outputs are wrapped as arrays (e.g., last_week_data) so downstream aggregation expects consistent structure.

Step 4: Aggregate Payload and Configure AI Analysis

Merge the two week summaries, then pass them into the AI analyst for a full HTML performance review.

  1. Open Combine Week Metrics to merge the two inputs (recent and prior week summaries).
  2. Open Aggregate Payload and set Fields To Aggregate to include last_week_data and last_2_weeks_data.
  3. Open Ad Performance Analyst and keep the full prompt in Text as provided, including the embedded expressions like {{ $json.last_week_data[0].total_spend }} and {{ JSON.stringify($json.last_2_weeks_data[0].top_campaigns, null, 2) }}.
  4. Credential Required: Connect your openAiApi credentials in OpenAI Chat Engine, which is the language model powering Ad Performance Analyst.
  5. Note that Math Utility is an AI tool attached to Ad Performance Analyst—if you add credentials for tool usage, attach them to the parent node configuration, not the tool itself.

⚠️ Common Pitfall: If the AI output is not valid HTML, check that the Ad Performance Analyst prompt still starts with the exact instructions and that no extra text was added before the prompt.

Step 5: Configure the Email Output

Send the HTML report by email after the AI analysis finishes.

  1. Open Send Weekly Email and set Send To to [YOUR_EMAIL].
  2. Set Subject to Weekly Report.
  3. Set Message to the expression ={{ $json.output }} so the HTML document from Ad Performance Analyst is sent as the email body.
  4. Credential Required: Connect your gmailOAuth2 credentials in Send Weekly Email.

Tip: Use a test inbox first to verify the HTML rendering before sending to stakeholders.

Step 6: Test and Activate Your Workflow

Run a manual test to confirm data pulls, AI analysis, and email delivery, then activate for weekly production use.

  1. Click Execute Workflow and confirm both parallel branches run from Weekly Schedule Start.
  2. Verify Fetch Recent Week Metrics and Fetch Prior Week Metrics return results and are split by Split Recent Results and Split Prior Results.
  3. Check Summarize Recent Week and Summarize Prior Week outputs for populated last_week_data and last_2_weeks_data arrays.
  4. Confirm Ad Performance Analyst returns a complete HTML document starting with <!DOCTYPE html> and ending with </html>.
  5. Ensure Send Weekly Email delivers the report to [YOUR_EMAIL] with correct HTML rendering.
  6. Switch the workflow to Active to enable the weekly schedule.

⚠️ Common Pitfall: If the email is empty, recheck that Aggregate Payload collects both last_week_data and last_2_weeks_data before Ad Performance Analyst runs.

🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Ads API access can fail silently if your developer token isn’t approved or your OAuth scope is wrong. If the data pull comes back empty, check the HTTP Request node response and your Google Ads API Center settings first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.

Frequently Asked Questions

How long does it take to set up this Google Ads insights automation?

About 30–60 minutes if you already have Google Ads API access.

Do I need coding skills to automate Google Ads insights?

No. You’ll connect accounts, paste a few IDs/tokens, and run a test execution.

Is n8n free to use for this Google Ads insights workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API costs, which are usually a few cents per weekly report.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this Google Ads insights automation for multiple accounts or clients?

Yes, but you’ll want to duplicate the two Google Ads fetch nodes (the “Fetch Recent Week Metrics” and “Fetch Prior Week Metrics” HTTP requests) per account and pass each payload through the same AI analyst step. A common setup is one workflow per client, because it keeps credentials, recipient emails, and prompts clean. You can also customize the “Ad Performance Analyst” prompt to focus on your KPIs, like lead volume, ROAS, or keeping CPA under a threshold. If you share reports externally, tweak the email template once and reuse it.

Why is my Google Ads connection failing in this workflow?

Most of the time it’s a Google Ads API issue, not n8n. Check that your developer token is present in both HTTP Request nodes, your Customer ID is in the right format, and your OAuth credentials have access to that ad account. If the API responds with rate limits or permission errors, rerun after a short pause and confirm the token status in your Google Ads API Center.

How many campaigns can this Google Ads insights automation handle?

Plenty for most small and mid-size accounts. On n8n Cloud, your limit is based on executions per month, while self-hosting has no fixed execution cap (it depends on your server). If you have very large accounts, the main constraint is API response size and how long you want the analysis to take.

Is this Google Ads insights automation better than using Zapier or Make?

Often, yes. This workflow isn’t just “send data from A to B”; it pulls two time windows, merges them, runs calculations, and then generates a structured report with AI. n8n handles branching and data shaping without turning it into a fragile chain of paid steps, and you can self-host if you want unlimited runs. Zapier or Make can be quicker for very simple notifications, but they get clunky once you need real comparisons and a long-form email. If you’re on the fence, Talk to an automation expert and describe what you’re trying to report on.

Once this is running, your weekly Google Ads review stops being a recurring project and becomes a simple inbox habit. The workflow handles the repetitive stuff, so you can spend your time on changes that actually move performance.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal