🔓 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 21, 2026

Google Docs + Slack weekly reports, ready to share

Lisa Granqvist Partner Workflow Automation Expert

Weekly reporting is where good marketing time goes to die. You pull numbers from tabs, paste into a doc, rewrite the same “what happened” paragraph, then Slack it out and hope nobody asks for “just one more breakdown.”

Marketing managers feel it every Monday. Agency owners feel it when clients want updates “by noon.” And the ops person who has to chase screenshots feels it too. This Docs Slack reports automation turns your recurring performance update into a repeatable, ready-to-share report.

Below you’ll see how the workflow collects metrics, uses AI to write an executive summary, publishes a Google Doc, and posts a clean Slack update with the link.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Google Docs + Slack weekly reports, ready to share

The Challenge: Weekly reporting that steals your Monday

Reporting sounds simple until it’s your job to ship it every week. You’re not just “copy-pasting metrics.” You’re reconciling totals, explaining why one channel dipped, finding the one campaign that carried results, and formatting it so it doesn’t look like a dump from a spreadsheet. Then someone asks for the link, someone else asks for an email version, and suddenly you’re doing distribution work instead of analysis. The worst part is the mental load: you rebuild the same structure repeatedly, which makes consistency almost impossible.

It adds up fast. Here’s where it usually breaks down.

  • You spend about 2 hours collecting metrics across channels, even before you start writing.
  • The narrative changes based on who writes it, so execs stop trusting the “story” and only scan the numbers.
  • Formatting gets re-done every week, which means the report looks different each time and small errors sneak in.
  • Sharing happens in three places (Docs, Slack, email), and you end up sending “latest version” messages all day.

The Fix: An AI-generated weekly report that publishes itself

This workflow runs on a schedule (think Monday morning) and builds your weekly performance report end-to-end. It starts by collecting campaign performance metrics (the template includes demo data, and it can be connected to real sources like ad platforms via APIs). Next, it sends those metrics to an OpenAI-powered step that writes an executive summary: what improved, what slipped, and what to do next. Then it assembles everything into a structured Markdown report with totals, channel performance, and top campaigns. Finally, it creates a Google Doc, inserts the formatted content, and posts a Slack message with topline numbers and a direct link to the report. Optional email delivery is also supported if you want stakeholders to get it in their inbox.

The workflow begins with a scheduled trigger. AI turns raw metrics into readable insights. Google Docs becomes the single “source of truth,” and Slack gets a quick update that points everyone to the same document.

What Changes: Before vs. After

Real-World Impact

Say you report on 4 channels each week and you normally spend about 20 minutes pulling and checking numbers per channel, plus about 45 minutes writing and formatting. That’s roughly 2 hours every Monday, and it’s easy to lose more when someone wants a “quick tweak.” With this workflow, you spend maybe 10 minutes reviewing the Doc after it generates, then you’re done. The Slack message ships automatically with the link, so distribution stops being its own mini-project.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Docs for storing the weekly report.
  • Slack to notify your team with the report link.
  • OpenAI API key (get it from your OpenAI dashboard).

Skill level: Beginner. You’ll connect accounts, paste an API key, and adjust a few fields like channel names and the schedule.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

A weekly schedule kicks it off. The workflow runs automatically on the day/time you choose, so reporting doesn’t depend on someone remembering to start it.

Metrics are gathered and prepared. It pulls campaign performance data (the included “Mock Ads Metrics” node provides demo data), then shapes the fields so the summary step receives clean, predictable inputs.

AI writes the executive summary. The OpenAI chat model analyzes the numbers and generates a clear recap: wins, problems worth noticing, and a few practical recommendations.

A Google Doc is created and shared via Slack. The automation assembles the report in Markdown, generates the Doc, inserts the report content, then posts a Slack update with topline numbers and a direct link.

You can easily modify the report sections to match your KPIs based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Scheduled Trigger

Set the workflow to run weekly so the report is generated on a consistent schedule.

  1. Add and open Scheduled Run Trigger.
  2. Set the schedule rule to an interval with Days Interval of 7 and Trigger At Hour of 7.
  3. Connect Scheduled Run Trigger to Mock Ads Metrics to start the data flow.

Step 2: Connect the Data Generation Step

Generate the weekly metrics dataset used by the report and the LLM summary.

  1. Open Mock Ads Metrics and keep the JavaScript Code block as provided (it generates 7 days of reproducible demo metrics).
  2. Confirm Mock Ads Metrics connects to LLM Summary Request in the canvas.
  3. Verify the output includes period, summary, and byChannel objects (used in later nodes).

Step 3: Set Up the AI Summary

Use the LLM to generate an executive summary from the metrics.

  1. Open LLM Summary Request and set Model to gpt-4o-mini.
  2. In the first message, keep the content as the expression-driven prompt (e.g., Period: {{ $json.period.start }} → {{ $json.period.end }} and Totals: {{ $json.summary }}).
  3. Credential Required: Connect your openAiApi credentials.
  4. Connect LLM Summary Request to Assemble Report Markdown.

Step 4: Assemble the Report Markdown

Combine the metrics and LLM summary into a single markdown report.

  1. Open Assemble Report Markdown and keep the node references set to Mock Ads Metrics and LLM Summary Request.
  2. Ensure the output includes a report field used downstream (created by the JavaScript code).
  3. Connect Assemble Report Markdown to Generate Doc File.

Tip: If you rename nodes, update the constants in Assemble Report Markdown to match the exact node names or it will throw a “node not found” error.

Step 5: Configure the Google Docs Output

Create a new Google Doc and insert the report content.

  1. Open Generate Doc File and set Title to =Weekly Performance Report – {{ $json.period.start }} to {{ $json.period.end }}.
  2. Set Folder ID to your target folder (replace [YOUR_ID] with a real Drive folder ID).
  3. Credential Required: Connect your googleDocsOAuth2Api credentials.
  4. Open Insert Report Content and set Operation to update.
  5. Set Document URL to ={{ $json.id }} and the insert text to ={{ $('Assemble Report Markdown').item.json.report }}.
  6. Credential Required: Connect your googleDocsOAuth2Api credentials.

⚠️ Common Pitfall: Leaving [YOUR_ID] in Generate Doc File will cause the workflow to fail. Always replace it with a real folder ID.

Step 6: Configure the Slack Notification

Post a summary and document link to Slack when the report is ready.

  1. Open Post Slack Update and keep Authentication set to oAuth2.
  2. Set Text to the existing message template, including the expressions like {{ $('Assemble Report Markdown').item.json.period.start }} and {{ $json.documentId }}.
  3. Select a Slack channel by setting Channel to your target channel ID (replace [YOUR_ID]).
  4. Credential Required: Connect your slackOAuth2Api credentials.

Step 7: Test and Activate Your Workflow

Validate the end-to-end flow and then enable the schedule.

  1. Click Execute Workflow to run a manual test.
  2. Confirm Generate Doc File creates a Google Doc with the correct title and Insert Report Content inserts the markdown report.
  3. Check Slack to verify Post Slack Update sends a message with the correct period, topline metrics, and document link.
  4. When everything looks correct, toggle the workflow to Active to enable the weekly schedule.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Google Docs credentials can expire or need specific permissions. If things break, check the Google connection in n8n’s Credentials and confirm the account can create and edit Docs.
  • 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.

Common Questions

How quickly can I implement this Docs Slack reports automation?

About 30 minutes if your Google Docs, Slack, and OpenAI accounts are ready.

Can non-technical teams implement this Docs Slack reports automation?

Yes. You won’t write code, but you will connect accounts and paste an OpenAI API key into n8n.

Is n8n free to use for this Docs Slack reports 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 usage, which is usually a few cents per report depending on length.

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.

How do I adapt this Docs Slack reports solution to my specific challenges?

You can keep the same skeleton and swap the inputs. Replace the “Mock Ads Metrics” step with live connectors (for example, HTTP Request calls to your ad platforms), then adjust the “LLM Summary Request” prompt to match your KPIs and definitions. Common customizations include adding a branded intro section, splitting results by client or region, and changing the Slack message to include the exact topline metrics your leadership asks for.

Why is my Google Docs connection failing in this workflow?

Usually it’s expired Google credentials or the wrong Google account connected in n8n. Reconnect the Google Docs credential, then confirm the account can create files and edit document content. If it still fails, check whether your organization blocks third-party OAuth access or requires admin approval.

What’s the capacity of this Docs Slack reports solution?

Plenty for most teams running weekly reporting.

Is this Docs Slack reports automation better than using Zapier or Make?

Often, yes, especially if you want the report to feel “made,” not stitched together. n8n is great when you need a real workflow: shaping data, merging fields, generating Markdown, then creating a Doc and pushing Slack updates in one run. Self-hosting also means you’re not paying per task in the same way, which matters once you scale to multiple clients or multiple reports. That said, Zapier or Make can be quicker for very simple two-step alerts. Talk to an automation expert if you want a recommendation based on your reporting volume.

Once this is running, Monday reporting becomes a quick review instead of a half-day project. The workflow handles the repeatable work so you can spend your time on decisions.

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