Slack to Todoist, capture requests without forgetting
Slack messages feel harmless until you realize your “to-do list” is scattered across DMs, threads, and that one channel you muted last week. You tell yourself you’ll circle back. Then a client nudge or internal request slips through, and you’re stuck apologizing.
This is the kind of mess that hits marketing managers first, but agency owners and ops leads deal with it too. With Slack Todoist automation, you stop relying on memory and start capturing requests the moment they show up.
This workflow turns a Slack ask into a Todoist task. Clean, consistent, and easy to scan. You’ll see what it automates, what you get back, and how to adjust it for your team.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Slack to Todoist, capture requests without forgetting
flowchart LR
subgraph sg0["Manual Run Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Manual Run Trigger", pos: "b", h: 48 }
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/todoist.svg' width='40' height='40' /></div><br/>Generate Todoist Task"]
n0 --> n1
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
classDef customIcon fill:none,stroke:none
class n1 customIcon
The Problem: Slack Requests Disappear
Slack is great for fast decisions. It’s terrible as a reliable task system. Requests arrive while you’re mid-work, you skim them, and you assume you’ll remember later. But later you’re in another call, another channel, another fire. A “quick favor” turns into a missed follow-up, duplicated work, or a last-minute scramble because nobody knows who owns what. The worst part is the mental load. You keep re-reading conversations just to feel safe.
It adds up fast. Here’s where it breaks down in real life.
- You end up copying messages into Todoist by hand, which is slow and easy to postpone.
- Important context stays in Slack, so the task in your list is vague and requires extra back-and-forth.
- Requests get buried when channels move quickly, especially when multiple people pile onto a thread.
- Your task list becomes inconsistent because everyone writes tasks differently, if they write them at all.
The Solution: Convert Slack Pings into Todoist Tasks
This n8n workflow creates a Todoist task from a request so it stops living only in Slack. Once the workflow is triggered, it takes the “ask” you want to capture and turns it into a properly formatted Todoist task, ready for triage. That means you can keep using Slack for conversation while using Todoist for execution. No more hunting through threads to figure out what you promised. The end result is a task you can sort, schedule, and actually complete, instead of a message you hope you’ll remember.
The workflow starts with a simple trigger inside n8n. From there, it creates a Todoist task in your chosen project (with the text you provide). Finally, you review it in Todoist like everything else you’re tracking.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you get around 15 actionable Slack pings a week (client tweaks, internal asks, quick fixes). Manually turning each one into a task takes maybe 3 minutes once you include context, project selection, and due dates, so that’s about 45 minutes of pure admin. With this workflow, triggering the capture and generating the Todoist task takes about 30 seconds each. That’s roughly 35 minutes back every week, and your tasks come out in a consistent format.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Todoist for creating and organizing tasks
- Slack as the source of incoming requests
- Todoist API token (get it from Todoist Settings → Integrations)
Skill level: Beginner. You’ll connect Todoist, set a project, and test a few runs.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
Manual capture trigger. You run the workflow when you have a message you want to turn into a task. This is useful for testing and for building the “task creation” piece first.
Task details are prepared. The workflow takes the text you provide and shapes it into a Todoist-friendly task name (and any other fields you choose to add later, like labels or priority).
Todoist task is created. n8n sends the task into Todoist, so it appears in the right project and can be scheduled like everything else you track.
Your list becomes the system of record. Instead of checking Slack to remember what you agreed to, you check Todoist. Slack stays for conversation. Todoist stays for work.
You can easily modify the task title and destination project to match your workflow. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Manual Trigger
This workflow starts with a manual trigger so you can test task creation on demand.
- Add a Manual Run Trigger node to your workflow.
- Leave all Manual Run Trigger settings at their defaults (no parameters are required).
Step 2: Connect Todoist
Set up the Todoist integration used to create new tasks.
- Add the Generate Todoist Task node.
- Credential Required: Connect your todoistApi credentials.
Step 3: Configure the Todoist Task Creation
Define the task content that will be created in Todoist.
- In Generate Todoist Task, set the Content field to the task name you want to create (the current value is empty).
- Keep Options empty unless you want to add due dates, priority, or project settings.
Step 4: Test and Activate Your Workflow
Run the workflow manually and verify the task appears in Todoist, then activate it for ongoing use.
- Click Execute Workflow to run the Manual Run Trigger.
- Confirm a new task is created in Todoist with the content you set in Generate Todoist Task.
- When ready for production, toggle the workflow to Active.
Common Gotchas
- Todoist credentials can expire or lose permission after password changes. If tasks stop creating, check the Todoist token in your n8n credentials first.
- If you later add Slack as a real trigger (message reactions, slash commands), Slack scopes matter. Missing permissions usually shows up as “not_allowed_token_type” or silent failures in the execution log.
- Task titles can get messy fast if you don’t standardize them. Decide early on a format like “Client / Request / Next action” or you will be cleaning up your Todoist inbox every day.
Frequently Asked Questions
About 20 minutes if your Todoist account is ready.
No. You’ll connect Todoist and map a few fields in n8n.
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 Todoist costs (usually $0 unless you’re on Pro for reminders and extras).
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.
Yes, but you’ll add a Slack trigger and keep the existing “create task” action. In n8n, you’d swap the manual trigger for a Slack event like a reaction added, then pass the message text into the Todoist task creation node. Common customizations include setting the Todoist project by Slack channel, adding labels like “follow-up,” and prefixing the task with the requester’s name so it’s obvious who asked.
Usually it’s an expired or wrong API token. Generate a fresh Todoist API token and update the credential inside n8n, then run a test execution to confirm it can create a task. If the error mentions permissions, double-check you’re using the right Todoist account and workspace. And if it works sometimes but not always, you may be hitting rate limits when creating lots of tasks quickly.
A lot for typical teams: hundreds of tasks a day is usually fine if you’re not hammering the API.
It depends on what you want to control. n8n is better when you want branching logic, richer data handling, and the option to self-host so executions don’t feel “metered” in the same way. It’s also easier to evolve over time, like adding Slack triggers, routing by channel, or creating different task templates. Zapier or Make can be simpler for a quick two-step setup, and that’s totally fine for basic capture. If you’re unsure, Talk to an automation expert and get a straight recommendation.
Once Slack stops being your task list, things get calmer. Capture the request, let Todoist hold it, and get back to work without that low-grade fear of forgetting something.
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.