Skip to main content

Generate daily sales reports from Google Sheets with formatted email summaries

Workflow preview

Workflow preview
100%
Generate daily sales reports from Google Sheets with formatted email summaries preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Description: Automate your daily sales reporting process with this powerful n8n workflow that reads data from Google Sheets, summarizes key metrics, and sends a beautifully formatted email report. ...

Best for

  • CRM automation workflows
  • intermediate n8n builders looking for reusable templates

Tools used

n8n-nodes-base.googlesheets, n8n-nodes-base.if, n8n-nodes-base.code, n8n-nodes-base.manualtrigger, n8n-nodes-base.emailsend, n8n-nodes-base.stickynote

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Rahul Joshi.

Original n8n.io source

1.1 Workflow description

Title
Generate daily sales reports from Google Sheets with formatted email summaries
Workflow name
Generate daily sales reports from Google Sheets with formatted email summaries

Description:

Automate your daily sales reporting process with this powerful n8n workflow that reads data from Google Sheets, summarizes key metrics, and sends a beautifully formatted email report. Perfect for sales teams, operations managers, founders, or marketing leads who want a hands-free update on team performance every day.

This template intelligently parses sales activity, validates if meaningful data is present (like calls or prospecting counts), and dynamically generates both HTML and plain-text reports. Whether you're logging outbound efforts or tracking pipeline-building activities, this automation ensures you never miss a beat.

What This Template Does (Step-by-Step)

🚀 Trigger: Manually triggered (can be scheduled with Cron) to kickstart the report generation process.

📊 Read Google Sheet:

  • Pulls your daily outreach or sales data from a connected Google Sheet.
  • Sheet contains records with fields like Name, Email, Calls, and Prospecting.

🔍 Check for Valid Records: Filters to ensure at least some records contain meaningful activity (non-empty calls or prospecting fields).

🧠 Generate Report (Conditional Logic) If data exists:

➤ Creates a detailed and styled HTML table + summary ➤ Prepares a plain-text version for fallback or archival ➤ Computes total calls, total prospecting, and record count If no data exists: ➤ Sends a default “No data available” message with a timestamp

📧 Send Email

  • Sends the report to the designated email address using SMTP.
  • Email subject includes date and total number of records.
  • Includes a clean, professional report layout ideal for daily standups or performance reviews.

Use Cases

🏢 Daily reporting for sales or inside sales teams 📈 Prospecting activity summaries for managers 🧾 Recordkeeping for outreach performance 📬 Auto-notification of zero-activity days 📊 Daily visibility into team or campaign-level performance

Required Integrations

  • Google Sheets (OAuth) – for reading activity logs
  • SMTP (Gmail or custom provider) – for sending the report

Why Use This Template?

✅ Save time with no-code daily reporting ✅ Great for remote teams, async check-ins, or performance reviews ✅ Mobile-friendly, styled HTML reports ✅ Smart fallback when no data is present ✅ Plug-and-play Google Sheet integration

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Read Google Sheet

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.4

Block 2 - Check Data Exists

Type / Role
n8n-nodes-base.if - if
Config choices
Version 1

Block 3 - Format Report

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 4 - No Data Handler

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 5 - When clicking ‘Execute workflow’

Type / Role
n8n-nodes-base.manualTrigger - manualTrigger
Config choices
Version 1

Block 6 - Send email

Type / Role
n8n-nodes-base.emailSend - emailSend
Config choices
Version 2.1

Block 7 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 8 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 9 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 10 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 11 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 12 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

3. Summary Table

Workflow Generate daily sales reports from Google Sheets with formatted email summaries
Complexity intermediate
Nodes 12
Categories CRM
Author Rahul Joshi
Published 24 Jul 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/6370/6370.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Generate daily sales reports from Google Sheets with formatted email summaries do?

Description: Automate your daily sales reporting process with this powerful n8n workflow that reads data from Google Sheets, summarizes key metrics, and sends a beautifully formatted email report. ...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your CRM use case.