
Sheets Automation
- 4.3k installs
- 357 repo stars
- Updated January 31, 2026
- claude-office-skills/skills
How to build automated Google Sheets workflows for data sync, task management, reporting, and multi-platform integrations using n8n.
About
Google Sheets Automation enables developers to build multi-source data synchronization, task management, and reporting workflows integrated with n8n. Developers use this skill to aggregate CRM, payment, and analytics data into unified dashboards; send Slack reminders for overdue tasks; generate weekly business reports; track inventory with auto-alerts; and capture form responses into CRM systems. Core workflows include automated data sync from HubSpot, Stripe, and Google Analytics; task tracking with 15-minute reminder checks; scheduled report generation with charts; stock-level monitoring with supplier notifications; and lead capture pipelines. The skill provides sheet templates, formula references, and n8n configuration examples for immediate deployment across operations teams. Multi-source data aggregation from HubSpot, Stripe, Google Analytics into unified Sheets dashboards with daily scheduled syncs. Task reminder system with 15-minute polling, Slack DM notifications for overdue/due-today items, and 6pm daily recaps.
- Multi-source data aggregation from HubSpot, Stripe, Google Analytics into unified Sheets dashboards with daily scheduled
- Task reminder system with 15-minute polling, Slack DM notifications for overdue/due-today items, and 6pm daily recaps
- Automated weekly report generation with calculated metrics (revenue, win rate, CPL, CSAT) and distributed PDF/Slack deli
- Inventory alert workflow triggered on stock changes, with reorder notifications to Slack and email supplier integration
- Google Forms to CRM pipeline: capture leads, enrich with Clearbit, create HubSpot contacts, notify sales Slack channel
Sheets Automation by the numbers
- 4,278 all-time installs (skills.sh)
- +63 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #86 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
- Security screen: MEDIUM risk (skills.sh audit)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
sheets-automation capabilities & compatibility
- Capabilities
- automated data synchronization from multiple sou · scheduled task reminders and notifications · report generation and distribution · inventory and stock tracking with alerts · form response capture and crm integration · chart and dashboard creation · email and slack notifications
- Works with
- n8n · slack · stripe · gmail
- Use cases
- data analysis · project management
- Platforms
- macOS · Windows · Linux
- Runs
- Local or remote
- Pricing
- Freemium
What sheets-automation says it does
Based on n8n's 7,800+ workflow templates
npx skills add https://github.com/claude-office-skills/skills --skill sheets-automationAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 4.3k |
|---|---|
| repo stars | ★ 357 |
| Security audit | 2 / 3 scanners passed |
| Last updated | January 31, 2026 |
| Repository | claude-office-skills/skills ↗ |
What it does
Automate Google Sheets data sync, task tracking, and reporting dashboards across multiple business systems with scheduled workflows.
Who is it for?
Operations teams, sales operations, marketing teams, support teams, and any developer managing cross-platform data workflows and task coordination.
Skip if: Real-time trading systems, high-frequency data processing, or use cases requiring sub-second latency.
When should I use this skill?
Need to sync multiple data sources into Sheets, automate task reminders, generate recurring reports, track inventory, or capture form leads into CRM.
What you get
Developers deploy no-code/low-code Sheets automation to unify data sources, send intelligent reminders, generate reports daily, track stock levels, and capture leads into CRM systems.
- synced sheet datasets
- automated report tabs
- dashboard layouts
By the numbers
- Based on n8n's 7,800+ workflow templates
- Supports 5+ core workflow patterns: data aggregation, task tracking, reporting, inventory alerts, form-to-CRM
- Workflows can poll data every 15 minutes or trigger on Sheets changes
Files
Google Sheets Automation
Automate Google Sheets workflows for data synchronization, task management, reporting dashboards, and multi-platform integrations. Based on n8n's 7,800+ workflow templates.
Overview
This skill covers:
- Automated data sync from multiple sources
- Task management with Slack reminders
- Real-time reporting dashboards
- CRM/Marketing data aggregation
- Scheduled report generation
---
Core Workflows
1. Multi-Source Data Aggregation
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ HubSpot │ │ Stripe │ │ Google │
│ (CRM) │ │ (Payments) │ │ Analytics │
└──────┬──────┘ └──────┬──────┘ └──────┬──────┘
│ │ │
└─────────────────┼─────────────────┘
│
▼
┌──────────────────┐
│ Google Sheets │
│ (Master Dashboard)│
└──────────────────┘
│
▼
┌──────────────────┐
│ Slack/Email │
│ (Daily Report) │
└──────────────────┘n8n Configuration:
workflow: "Daily Business Metrics Sync"
schedule: "6:00 AM daily"
steps:
1. fetch_crm_data:
source: hubspot
data:
- new_leads_today
- deals_closed
- pipeline_value
2. fetch_revenue_data:
source: stripe
data:
- mrr
- new_subscriptions
- churn
3. fetch_traffic_data:
source: google_analytics
data:
- sessions
- conversions
- bounce_rate
4. update_sheets:
spreadsheet: "Business Dashboard"
sheet: "Daily Metrics"
action: append_row
data:
- date: today
- leads: "{hubspot.new_leads}"
- deals: "{hubspot.deals_closed}"
- mrr: "{stripe.mrr}"
- sessions: "{ga.sessions}"
5. update_charts:
refresh: automatic (Sheets built-in)
6. send_summary:
slack:
channel: "#daily-metrics"
message: |
📊 Daily Metrics - {date}
💰 Revenue: ${mrr} MRR
👥 New Leads: {leads}
🎯 Deals Closed: {deals}
📈 Website Sessions: {sessions}---
2. Task Management with Reminders
workflow: "Sheets Task Tracker"
trigger:
type: schedule
frequency: every_15_minutes
sheet_structure:
columns:
- A: Task
- B: Assignee
- C: Due Date
- D: Priority (High/Medium/Low)
- E: Status (Todo/In Progress/Done)
- F: Slack ID
steps:
1. read_tasks:
filter: |
Status != "Done" AND
Due Date <= TODAY() + 1
2. categorize_urgency:
overdue: Due Date < TODAY()
due_today: Due Date == TODAY()
due_tomorrow: Due Date == TODAY() + 1
3. send_reminders:
for_each: task
overdue:
slack_dm:
to: "{assignee_slack_id}"
message: |
🚨 *OVERDUE*: {task_name}
Due: {due_date} ({days_overdue} days ago)
Priority: {priority}
due_today:
slack_dm:
to: "{assignee_slack_id}"
message: |
⏰ *Due Today*: {task_name}
Priority: {priority}
4. daily_recap:
schedule: "6:00 PM"
slack_channel: "#team"
message: |
📋 *Daily Task Recap*
✅ Completed: {completed_count}
⏳ In Progress: {in_progress_count}
🚨 Overdue: {overdue_count}
Top priorities for tomorrow:
{tomorrow_tasks}---
3. Automated Report Generation
workflow: "Weekly Report Generator"
schedule: "Friday 5:00 PM"
steps:
1. collect_data:
sheets:
- "Sales Data"
- "Marketing Metrics"
- "Support Tickets"
2. calculate_metrics:
sales:
- total_revenue: SUM(revenue_column)
- deals_closed: COUNT(won_deals)
- avg_deal_size: AVG(deal_value)
- win_rate: won / (won + lost)
marketing:
- leads_generated: COUNT(new_leads)
- cost_per_lead: spend / leads
- conversion_rate: conversions / visitors
support:
- tickets_resolved: COUNT(resolved)
- avg_response_time: AVG(first_response)
- csat_score: AVG(satisfaction)
3. generate_report:
format: google_doc
template: "Weekly Report Template"
sections:
- executive_summary
- sales_performance
- marketing_metrics
- customer_support
- next_week_priorities
4. create_charts:
google_sheets:
- revenue_trend: line_chart
- deal_funnel: bar_chart
- lead_sources: pie_chart
5. distribute:
email:
to: leadership_team
subject: "Weekly Business Report - Week {week_number}"
attach: [report_doc, charts_pdf]
slack:
channel: "#leadership"
message: "📊 Weekly report ready: {doc_link}"---
4. Inventory/Stock Tracker
workflow: "Inventory Alert System"
trigger:
type: sheets_change
sheet: "Inventory"
sheet_structure:
columns:
- Product
- SKU
- Current Stock
- Reorder Level
- Supplier
- Lead Time (days)
steps:
1. check_stock_levels:
condition: Current Stock <= Reorder Level
2. generate_alerts:
for_each: low_stock_item
actions:
- update_cell:
column: "Status"
value: "REORDER NEEDED"
format: red_background
- slack_alert:
channel: "#inventory"
message: |
⚠️ *Low Stock Alert*
Product: {product_name}
SKU: {sku}
Current: {current_stock}
Reorder Level: {reorder_level}
Supplier: {supplier}
- email_supplier:
if: auto_reorder == true
template: "reorder_request"
3. daily_summary:
schedule: "9:00 AM"
report:
- total_skus: count
- low_stock_items: count
- out_of_stock: count
- pending_orders: list---
5. Form Responses → CRM + Slack
workflow: "Google Form Lead Capture"
trigger:
type: google_forms
form: "Contact Us Form"
steps:
1. capture_response:
fields: [name, email, company, message, source]
2. append_to_sheet:
spreadsheet: "Lead Tracker"
data:
- timestamp: NOW()
- name: "{name}"
- email: "{email}"
- company: "{company}"
- message: "{message}"
- status: "New"
3. enrich_lead:
clearbit:
lookup_by: email
append: [company_size, industry, linkedin]
4. create_in_crm:
hubspot:
object: contact
properties:
email: "{email}"
firstname: "{name}"
company: "{company}"
lead_source: "Website Form"
5. notify_sales:
slack:
channel: "#new-leads"
message: |
🎉 *New Lead!*
👤 {name}
🏢 {company} ({company_size} employees)
📧 {email}
💬 "{message}"
[View in HubSpot]({hubspot_link})
6. auto_respond:
email:
to: "{email}"
template: "thank_you_for_contacting"---
Sheet Templates
Sales Dashboard
┌────────────────────────────────────────────────────────────────┐
│ SALES DASHBOARD - {Month} │
├────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Revenue │ │ Deals │ │ Avg Deal│ │ Win Rate│ │
│ │ $125K │ │ 23 │ │ $5,400 │ │ 34% │ │
│ │ ▲ 15% │ │ ▲ 8% │ │ ▲ 12% │ │ ▼ 2% │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ │
│ [Revenue Trend Chart - Line] │
│ [Pipeline by Stage - Funnel] │
│ [Top Sales Reps - Bar] │
│ │
├────────────────────────────────────────────────────────────────┤
│ Date │ Deal │ Value │ Rep │ Stage │ Prob │
│ 1/30 │ Acme Corp │ $15,000 │ Alice │ Proposal │ 60% │
│ 1/29 │ Tech Inc │ $8,500 │ Bob │ Demo │ 40% │
│ ... │ ... │ ... │ ... │ ... │ ... │
└────────────────────────────────────────────────────────────────┘Marketing Tracker
┌────────────────────────────────────────────────────────────────┐
│ MARKETING METRICS │
├────────────────────────────────────────────────────────────────┤
│ Channel │ Spend │ Leads │ CPL │ Conv % │ Revenue │
├─────────────┼──────────┼───────┼────────┼────────┼───────────┤
│ Google Ads │ $5,000 │ 150 │ $33 │ 3.2% │ $45,000 │
│ Facebook │ $3,000 │ 200 │ $15 │ 1.8% │ $28,000 │
│ LinkedIn │ $2,500 │ 50 │ $50 │ 5.5% │ $35,000 │
│ Organic │ $0 │ 300 │ $0 │ 2.1% │ $52,000 │
├─────────────┼──────────┼───────┼────────┼────────┼───────────┤
│ TOTAL │ $10,500 │ 700 │ $15 │ 2.8% │ $160,000 │
└────────────────────────────────────────────────────────────────┘
ROAS: 15.2x
Best Channel: LinkedIn (highest conversion)
Action: Increase LinkedIn budget by 20%---
Formulas Reference
Common Automation Formulas
# Auto-status based on date
=IF(C2<TODAY(), "OVERDUE", IF(C2=TODAY(), "DUE TODAY", "UPCOMING"))
# Days until due
=DATEDIF(TODAY(), C2, "D")
# Auto-assign based on criteria
=IFS(B2="Enterprise", "Alice", B2="Mid-Market", "Bob", TRUE, "Carol")
# Calculate conversion rate
=IFERROR(D2/C2, 0)
# Running total
=SUMIF($A$2:A2, "<="&A2, $B$2:B2)
# Conditional formatting trigger
=AND($E2="High", $F2<TODAY())
# VLOOKUP from another sheet
=VLOOKUP(A2, 'Reference Data'!$A:$C, 3, FALSE)
# Query for dashboard
=QUERY(Data!A:F, "SELECT A, SUM(C) WHERE B='Closed Won' GROUP BY A")---
Output Example
Request: "Set up automated task reminders from Google Sheets"
Output:
# Task Reminder System Setup
## Sheet Structure
Create a sheet named "Tasks" with these columns:
| A | B | C | D | E | F |
|---|---|---|---|---|---|
| Task | Assignee | Due Date | Priority | Status | Slack ID |
| Review proposal | Alice | 2026-01-31 | High | In Progress | U12345 |
| Update docs | Bob | 2026-02-01 | Medium | Todo | U67890 |
## Automation Workflow
trigger: Every 15 minutes actions: 1. Check for tasks due within 24 hours 2. Send Slack DM to assignee 3. Post daily summary at 6pm
## Sample Reminders
**Overdue Alert:**🚨 OVERDUE: Review proposal Due: Jan 29 (1 day ago) Priority: High
Please update status or mark complete.
**Due Today:**⏰ Due Today: Update documentation Priority: Medium
You've got this! 💪
**Daily Recap (6pm):**📋 Daily Task Recap
✅ Completed today: 5 ⏳ In Progress: 3 🚨 Overdue: 1
Tomorrow's priorities: • Review proposal (High) - Alice • Client call prep (High) - Bob
## Setup Steps
1. Create Google Sheet with structure above
2. Set up n8n workflow with Schedule trigger
3. Connect Google Sheets and Slack nodes
4. Test with sample tasks
5. Activate workflow
Would you like the complete n8n workflow JSON?---
Sheets Automation Skill - Part of Claude Office Skills
Related skills
How it compares
Choose sheets-automation when spreadsheet-native ops reporting beats standing up a dedicated ETL service.
FAQ
What data sources can be synced into Sheets?
HubSpot (leads, deals, pipeline), Stripe (MRR, subscriptions, churn), Google Analytics (sessions, conversions, bounce rate), and any n8n-compatible API via webhook.
How often can workflows run?
Schedule triggers support daily, hourly, 15-minute, and custom intervals. Event triggers (form submission, Sheets change) run immediately.
Do I need to code?
No - workflows use n8n's visual node-based editor. Formulas in Sheets (QUERY, VLOOKUP, IF) handle calculations; n8n handles orchestration and API calls.
Is Sheets Automation safe to install?
skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.