🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Notion meets Slack for daily task DMs that land

Lisa Granqvist Partner Workflow Automation Expert

Tasks live in Notion. Work happens in Slack. And somehow you’re still the one chasing updates, re-pinging people, and digging through databases to find what’s due.

This Notion Slack reminders setup hits project managers hardest, but team leads and small agency owners feel it too. You get daily, automated DMs that tell each person what’s open and when it’s due, so fewer things slip quietly past deadline.

Below, you’ll see exactly how this workflow pulls incomplete Notion tasks, matches assignees to Slack users, and sends a clean morning message at 9:00 AM on weekdays.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Notion meets Slack for daily task DMs that land

The Challenge: Keeping Notion tasks from going stale

If your tasks are stored in Notion but your day runs through Slack, reminders tend to fall into a weird gap. People don’t open the database first thing. They skim messages. So tasks sit “in progress” for days, due dates creep up, and you end up doing the unglamorous work of follow-up. Honestly, it’s not just the time. It’s the constant mental load of remembering who owes what and when, then wording yet another nudge so it doesn’t sound passive-aggressive.

It adds up fast. Here’s where it breaks down in real teams.

  • You spend about 10 minutes each morning checking Notion and writing reminders in Slack.
  • Assignees miss tasks because the “source of truth” isn’t where they live all day.
  • Manual pings are inconsistent, which means some work gets chased while other work quietly stalls.
  • When due dates are buried, you discover problems late, usually in a meeting.

The Fix: Daily Slack DMs pulled straight from Notion

This workflow turns your Notion database into a daily, personalized Slack reminder system. Every weekday morning at 9:00 AM, it pulls your tasks from Notion, filters out anything already marked “Done,” and then figures out who owns what. Next, it looks up your Slack user directory, matches the Notion assignee to the right Slack account (using email/name mapping you control), and sends each person a direct message with their open tasks and due dates. The result is simple: people start the day seeing what they need to move forward, without you acting as the human router.

The workflow starts on a schedule (weekday mornings). Then Notion tasks are retrieved and filtered. Finally, Slack user matching routes tasks to the correct person, and each owner gets a DM that feels personal because it is.

What Changes: Before vs. After

Real-World Impact

Say you have a 6-person team and each person carries about 5 open tasks in Notion. Manually, a lead might spend 10 minutes pulling tasks plus another 5 minutes writing pings, so roughly 15 minutes per weekday (about an hour a week). With this workflow, the “work” is basically zero after setup: it triggers at 9:00 AM, pulls tasks, and sends the DMs automatically. People get the list before standup, and you stop playing reminder-whack-a-mole.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Notion for the tasks database and assignees.
  • Slack to deliver DMs to each task owner.
  • Notion + Slack credentials (create/connect inside n8n credential settings)

Skill level: Beginner. You’ll mostly be connecting accounts and updating a few fields for user mapping.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

Weekday morning schedule trigger. A Cron node runs the automation at 9:00 AM, Monday through Friday, so reminders arrive at a predictable time.

User mapping is defined upfront. The workflow sets known Notion user emails and the Slack naming you want to match against, which keeps routing reliable when people have nicknames or display-name quirks.

Notion tasks are retrieved and cleaned. It pulls tasks from your chosen Notion database, then filters out anything already marked “Done” so people only see what still needs attention.

Slack users are fetched, then each task gets routed. The workflow grabs the Slack directory, checks who the Notion assignee is, matches that person to the right Slack user, and sends a DM with task details and due dates.

You can easily modify the schedule time or the message format based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Cron Trigger

Set the schedule that kicks off the workflow each weekday morning.

  1. Add or open the Weekday Morning Trigger node.
  2. Set Trigger TimescronExpression to 0 9 * * 1,2,3,4,5.
  3. Confirm the trigger connects to Define Notion User Emails as the first step in the flow.

Tip: The schedule runs at 9:00 AM Monday–Friday in your n8n instance time zone. Adjust the cron expression if your team is in a different time zone.

Step 2: Connect Notion

Define Notion user emails and connect to the task database.

  1. Open Define Notion User Emails and set User 1 Notion Email to [YOUR_EMAIL].
  2. Set User 2 Notion Email to [YOUR_EMAIL] in the same node.
  3. Open Retrieve Tasks from Notion and set Resource to databasePage and Operation to getAll.
  4. Set Database ID to your tasks database (currently [YOUR_ID]).
  5. Credential Required: Connect your notionApi credentials in Retrieve Tasks from Notion.

⚠️ Common Pitfall: If the Notion database lacks a Status field or an assignee field labeled Notion User, the filtering and routing will fail.

Step 3: Set Up Processing and Routing

Map Slack names, filter completed tasks, and route tasks to the right assignee.

  1. Open Map Slack User Names and set User 1 Slack Full Name to User A and User 2 Slack Full Name to User B.
  2. In Exclude Completed Tasks, keep the filter condition: Value 1 to {{ $json.Status }}, Operation to notEqual, and Value 2 to Done.
  3. In Route by Notion Assignee, verify the rules use these expressions: {{ $('Exclude Completed Tasks').item.json['Notion User'].toString() }} compared against {{ $('Define Notion User Emails').item.json['User 1 Notion Email'] }} and {{ $('Define Notion User Emails').item.json['User 2 Notion Email'] }}.
  4. Confirm Route by Notion Assignee outputs to both Match Slack User A and Match Slack User B in parallel.

Step 4: Configure Slack Outputs

Fetch Slack users, match assignees, and send direct messages.

  1. Open Fetch Slack User Directory and set Resource to user, Operation to getAll, and Authentication to oAuth2.
  2. Credential Required: Connect your slackOAuth2Api credentials in Fetch Slack User Directory.
  3. In Match Slack User A, set the comparison to {{ $json.profile.real_name }} equals {{ $('Map Slack User Names').item.json['User 1 Slack Full Name'] }}.
  4. In Match Slack User B, set the comparison to {{ $json.profile.real_name }} equals {{ $('Map Slack User Names').item.json['User 2 Slack Full Name'] }}.
  5. Open Send DM to User A and set Channel to {{ $json.id }} and Text to # TO DO.
  6. Set the attachment title to =☑️ {{ $('Exclude Completed Tasks').item.json.Task }} (Due: {{ $('Exclude Completed Tasks').item.json.Due.start }}) and keep mrkdwn enabled.
  7. Credential Required: Connect your slackOAuth2Api credentials in Send DM to User A and Send DM to User B.
  8. Mirror the same configuration in Send DM to User B with Channel set to {{ $json.id }} and the same attachment expression.

Tip: If Slack display names don’t match exactly, update the full name strings in Map Slack User Names to prevent the filters from excluding users.

Step 5: Test and Activate Your Workflow

Run a manual test, verify Slack messages, and activate the workflow for daily use.

  1. Click Execute Workflow to run the flow from Weekday Morning Trigger.
  2. Verify Retrieve Tasks from Notion returns tasks and Exclude Completed Tasks filters out those with Status equal to Done.
  3. Confirm that Send DM to User A and Send DM to User B post messages to the correct Slack users with the task title and due date.
  4. When results look correct, toggle the workflow to Active for scheduled weekday runs.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Notion credentials can expire or need specific permissions. If things break, check your Notion integration access and the selected database sharing settings first.
  • Slack DMs can fail if the app is missing scopes like reading users or posting messages. If you see user-matching issues, re-check the Slack OAuth scopes and refresh the connection in n8n.
  • The workflow routes by mapped users (it currently supports two). If you add more teammates but don’t expand the “Route by Notion Assignee” logic, some tasks will never get a DM.

Common Questions

How quickly can I implement this Notion Slack reminders automation?

About 30 minutes if your Notion database and Slack workspace are ready.

Can non-technical teams implement this task reminder automation?

Yes. There’s no coding, but you will need to connect Notion and Slack and confirm how assignees map to Slack users.

Is n8n free to use for this Notion Slack reminders workflow?

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 Notion and Slack being free/paid depending on your team plan.

Where can I host n8n to run this automation?

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.

How do I adapt this Notion Slack reminders solution to my specific challenges?

You can change the Notion database in the “Retrieve Tasks from Notion” node, then tweak filtering rules in “Exclude Completed Tasks” to match your statuses. If you have more than two assignees, expand the routing in “Route by Notion Assignee” (or replace it with a more general mapping approach based on email). Many teams also customize the DM text so it includes priority, a direct Notion link, or a “due today” callout.

Why is my Slack connection failing in this workflow?

Most of the time it’s an expired OAuth connection or missing Slack scopes for reading users and posting messages. Reconnect Slack in n8n, then confirm the workflow is allowed to fetch the user directory. If user matching is off, check display names versus full names and adjust the “Map Slack User Names” values so they match what Slack returns.

What’s the capacity of this Notion Slack reminders solution?

For most small teams, it’s plenty.

Is this Notion Slack reminders automation better than using Zapier or Make?

Often, yes, if you care about routing logic and keeping costs predictable. This workflow relies on pulling a directory of Slack users, filtering tasks, and routing by assignee, and n8n handles that kind of branching without turning it into a giant pile of paid “tasks.” Self-hosting is also a big deal if you want unlimited runs. Zapier or Make can be simpler for very basic two-step reminders, but matching people reliably (especially at scale) tends to get fiddly. Talk to an automation expert if you want a quick recommendation based on your team.

Once this is running, your mornings get quieter. The workflow handles the repetitive follow-up so your team can start work instead of starting a thread.

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.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal