Automatic Task Synchronization: Todoist to Notion - n8n Workflow

Use this powerful n8n workflow to automatically sync designated Todoist tasks into a Notion database. This n8n template helps bridge quick task entry and structured knowledge management.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?


  • Project Managers needing a structured view of Todoist tasks in Notion.

  • Individual power users looking to centralize task tracking.

  • Anyone who wants to automate data transfer between Todoist and Notion using a reliable n8n workflow.

  • Developers or automators seeking practical n8n templates for productivity.

Overview

Managing tasks across multiple productivity tools can lead to fragmentation. This n8n workflow provides a robust solution by creating a seamless bridge between the quick capture functionality of Todoist and the structured database capabilities of Notion. It eliminates manual copying and pasting. When a user applies a specific label (e.g., send-to-notion) in Todoist, the n8n trigger initiates the synchronization. Not only does this n8n node setup create the corresponding entry in Notion, but it also intelligently updates the original Todoist task, adding the direct link back to the Notion page. This bidirectional context significantly boosts productivity and ensures data consistency across both applications, making this a highly valuable n8n template.

How it Works

This automation is initiated by a scheduled n8n trigger and executes a four-step process:


  1. Scheduled Check: The n8n trigger node (On schedule) starts the workflow at predefined intervals, ensuring timely synchronization checks.

  2. Task Retrieval: The first Todoist n8n node fetches all tasks currently tagged with the specified label (send-to-notion). This filtering ensures only intended tasks are processed by the n8n workflow.

  3. Notion Creation: For every task retrieved, the Notion n8n node creates a new page in the target database. It maps the Todoist task content to the Notion title and stores the unique Todoist ID in a number property for future reference.

  4. Task Update & Link Back: The final Todoist n8n node uses data from the previous step (specifically the URL of the new Notion page) to update the original Todoist task. It replaces the initial send-to-notion label with a sent label, preventing reprocessing, and crucially, appends the Notion URL to the task description. This completes the synchronization loop within the n8n workflow.

Installation Guide

To use this n8n template, follow these steps:


  1. Import: Copy the provided n8n workflow JSON and paste it into your n8n instance using the 'New' > 'Import from JSON' function.

  2. Credentials: You will need two types of credentials configured:

Todoist: Connect your Todoist account using OAuth2 credentials in the respective Todoist n8n node.
Notion: Set up a Notion API integration and connect it to the Notion n8n node. Ensure the integration has permission to read and write to your target database.

  1. Database Configuration: In the Add to Notion database n8n node, select the correct target Notion database (identified here by ID 5a98bd24-dd2b-41a3-b7e2-3b8a9ee21d41). Verify that your Notion database contains a property named Todoist ID of type 'Number' to store the task reference.

  2. Label Check: Ensure that the Todoist n8n node Get all tasks with specific label is configured with the correct input label ID that you use to flag tasks for syncing.

  3. Activation: Once credentials are set and configurations checked, activate the n8n workflow. Adjust the On schedule n8n trigger to a reasonable polling interval (e.g., every 5 minutes) rather than every second.

Node Details

This efficient n8n workflow utilizes four key nodes:

On schedule (n8n trigger):
Function: Serves as the primary n8n trigger, initiating the synchronization cycle based on a defined time interval.
Key Configuration: Currently set to run every second (users should adjust this interval).

Get all tasks with specific label (Todoist n8n node):
Function: Queries the Todoist API to retrieve tasks. This n8n node is crucial for filtering.
Key Configuration: Operation: getAll. Filters tasks based on the labelId containing the value send-to-notion.

Add to Notion database (Notion n8n node):
Function: Creates a new database item in Notion for each incoming Todoist task.
Key Configuration: The page title is set using an expression ={{ $json.content }} (the Todoist task name). Crucially, the Todoist ID is stored as a number property using the expression ={{ parseInt($json.id) }}.

Replace label on task (Todoist n8n node):
Function: Updates the task status in Todoist after successful creation in Notion, preventing duplicates.
Key Configuration: Operation: update. The labels property is set to ['sent']. The task description is updated to include the Notion URL: =Notion Link: {{ $json.url }} ensuring the synchronization is complete. This demonstrates the power of expression usage within an n8n node.

Related n8n Workflows

Free

Nodes: 5 Nodes
Updated: December 26 2025
View all
Created by
n8n Team
n8n Team

Meet the official n8n team. We specialize in building workflows that transform intricate tasks into seamless operations.

Featured*