Automated Task Synchronization Between ClickUp and Google Calendar - n8n Workflow

Use this robust n8n workflow to automate bidirectional synchronization between ClickUp tasks and multiple Google Calendars, using Google Sheets for essential ID mapping and persistence.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?

A Markdown-formatted string describing the ideal user persona:
Project managers or individuals heavily relying on ClickUp for task tracking.
Users who need their professional and personal tasks segmented across different Google Calendars.
Automation specialists looking for advanced n8n templates featuring multi-path routing, data persistence, and careful handling of time formats.
Anyone needing reliable, self-hosted synchronization between task management and calendar applications.

Overview

This comprehensive n8n workflow solves the common challenge of keeping project management tasks in ClickUp perfectly synced with a personal or professional calendar view in Google Calendar. Unlike simpler integrations, this solution offers multi-calendar routing, intelligently placing tasks into specific Google Calendars (e.g., Personal, Internship, Tech Courses) based on the originating ClickUp list or space. It uses Google Sheets as a crucial persistence layer to map the unique ClickUp Task ID to the corresponding Google Calendar Event ID, ensuring accurate updates and deletions. This detailed n8n workflow ensures you never miss a deadline, as all task changes—creation, due date updates, or deletion—are reflected automatically in your calendar. This is a vital component of efficient task automation using n8n.

How it Works

The entire process is initiated by an n8n trigger listening for changes in ClickUp:


  1. ClickUp Trigger Activation: The n8n workflow starts whenever a task is created, updated, deleted, or has its due date modified in the specified ClickUp team.

  2. Event Routing (Switch3): An n8n node routes the flow based on the type of event (taskCreated, taskDeleted, taskUpdated, taskDueDateUpdated).

  3. Task Retrieval: The relevant ClickUp n8n node retrieves the full details of the affected task.

  4. CREATE Logic: If a task is created, a Switch2 n8n node routes the data based on the ClickUp list name (e.g., 'Tarefas Pessoais' or 'Estágio'). The correct calendarId is dynamically injected. The workflow performs a quick Google Calendar search to prevent duplicate events. If unique, the event is created, and the mapping (clickupTaskId and calendarEventId) is saved to Google Sheets.

  5. UPDATE Logic: If a task or due date is updated, the flow queries Google Sheets using the clickupTaskId to retrieve the associated calendarEventId. It then fetches the existing event details. A large series of comparison (If) n8n nodes checks if the update is necessary, differentiating between time-based and all-day events. The corresponding Google Calendar n8n node executes the update, and Google Sheets is updated.

  6. DELETE Logic: If a task is deleted, the workflow looks up the mapping row. It attempts to delete the event from all potential target calendars (using onError: continueErrorOutput) and then deletes the mapping row in Google Sheets, keeping the data clean. Every step relies on careful configuration of each n8n node.

Installation Guide

A Markdown-formatted string detailing the installation steps:


  1. Import the n8n workflow: Copy the provided JSON data and paste it into your n8n instance using the 'Import Workflow' function.

  2. Configure Credentials: Assign your existing credentials for ClickUp (OAuth2) and Google Sheets / Google Calendar (OAuth2) to the respective n8n node instances.

  3. Set Configuration Variables: Open the Configuration Set n8n node and update all placeholders (REPLACEWITH):

calendarIdpersonal, calendarIdfaculdade, etc.: Replace with the actual IDs of your Google Calendars.
sheetId: The ID of your Google Sheet used for mapping.
sheetTabName: The specific tab/sheet name (default is 'Sheet1').
* clickupTeamId: Your ClickUp Team ID.

  1. Set up ClickUp Webhook: Enable the ClickUp Trigger n8n node. n8n will provide a webhook URL that you must register within your ClickUp workspace to begin receiving real-time events.

  2. Test and Activate: Run the n8n workflow manually once or use the test feature to ensure connectivity and verify that new tasks are correctly routed and mapped.

Node Details

A Markdown-formatted string listing every major node used in the workflow:

ClickUp Trigger: Serves as the primary n8n trigger. Monitors taskCreated, taskUpdated, taskDeleted, and taskDueDateUpdated events.
Configuration (Set n8n node): Centralizes variables like various Google Calendar IDs, Google Sheet ID, and ClickUp Team ID, making future adjustments simple.
Switch3 (Switch n8n node): Routes the flow immediately based on the ClickUp event type (e.g., handles 'taskDeleted' differently from 'taskCreated').
ClickUp / ClickUp1 (ClickUp n8n node): Fetches detailed task information using the Task ID provided by the trigger payload.
Switch1 / Switch2 (Switch n8n nodes): Crucial for multi-calendar routing. Switch2 directs creation events based on the ClickUp list name to the corresponding Edit Fields node to assign the correct calendarId.
Google Calendar9 (Get All): Used during the creation path to search for existing events (deduplication check) based on the task name in the last five minutes.
Google Calendar10 (Create): Creates the new event using dynamic data for summary, description, start date, and due date.
Google Sheets (Append): Adds a new row to the mapping sheet containing the clickupTaskId and calendarEventId.
Google Sheets2 (Read/Lookup): Used in the delete path to find the relevant calendar event ID based on the ClickUp Task ID.
Google Calendar11-14 (Delete): Executes the deletion of the calendar event. These n8n node instances are configured to 'continue on error' in case the event was already manually deleted from the calendar.
If / If* (If n8n nodes): Used extensively in the Update logic to compare the current ClickUp task data against the existing Google Calendar event data, preventing unnecessary API calls if no relevant field has changed. Also used to separate all-day events from timed events.

Related n8n Workflows

Free

Nodes: 9 Nodes
Updated: December 26 2025
View all
Created by
R4wd0G
R4wd0G

Feel free to send me an email if you have any questions: [email protected]

Featured*