Intermediate~15 min setupProject Management & CommunicationVerified April 2026
ClickUp logo
Slack logo

How to Send ClickUp Task Alerts to Slack with Power Automate

Automatically posts Slack messages when ClickUp tasks change to Ready for Review or Blocked status.

Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.

Best for

Teams that live in Slack and need immediate visibility when tasks hit review or blocking states

Not ideal for

Teams that prefer digest notifications or need complex conditional logic beyond status matching

Sync type

real-time

Use case type

notification

Real-World Example

💡

A 12-person product team uses this to notify #dev-alerts whenever a ClickUp task moves to Ready for Review or Blocked. Before automation, developers checked ClickUp every 30 minutes and reviews sat idle for hours. Now the team sees review requests within seconds.

What Will This Cost?

Drag the slider to your expected monthly volume.

/mo
505005K50K

Each platform counts differently — Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.

Prices shown for annual billing. Based on published pricing as of April 2026.

Estimated ROI

1000

min saved/mo

$583

labor value/mo

Free

no platform cost

Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.

Implementation

Skip the setup

Import this workflow directly into Power Automate

Copy the pre-built Power Automate blueprint and paste it straight into Power Automate. All modules, filters, and field mappings are already configured — you just need to connect your accounts.

Before You Start

Make sure you have everything ready.

Admin access to your ClickUp Space to create webhooks
Permission to install apps in your Slack workspace
Microsoft 365 account with Power Automate access
Ability to identify which ClickUp statuses trigger notifications

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Task Name
New Status
Assignee Name
Task URL
4 optional fields▸ show
Due Date
Priority
Space Name
List Name

Step-by-Step Setup

1

My flows > New flow > Automated cloud flow

Create new automated flow

Navigate to make.powerautomate.com and sign in with your Microsoft account. Click My flows in the left sidebar, then New flow in the top toolbar. Select Automated cloud flow from the dropdown menu. Name your flow 'ClickUp Task Status Alerts' and click Create.

  1. 1Click My flows in the left navigation
  2. 2Click New flow button
  3. 3Select Automated cloud flow
  4. 4Enter flow name 'ClickUp Task Status Alerts'
  5. 5Click Create
What you should see: You should see the flow designer with an empty trigger step at the top.
2

Flow designer > Choose trigger > HTTP

Add HTTP webhook trigger

Click Choose your flow's trigger and search for 'HTTP'. Select 'When a HTTP request is received' trigger. This creates an endpoint that ClickUp will call when tasks change status. Leave the JSON schema blank for now - we'll configure it after setting up the ClickUp webhook.

  1. 1Click Choose your flow's trigger
  2. 2Type 'HTTP' in the search box
  3. 3Select When a HTTP request is received
  4. 4Leave Request Body JSON Schema empty
  5. 5Click New step
What you should see: You should see an HTTP POST URL generated in the trigger step.
Common mistake — Don't close this tab - you'll need the webhook URL for ClickUp configuration.
Power Automate
+
click +
search apps
ClickUp
CL
ClickUp
Add HTTP webhook trigger
ClickUp
CL
module added
3

Flow designer > New step > Condition

Add condition for status filtering

Click New step and search for 'Condition'. Add a condition to filter for the two status changes we want. Set the left value to click in the dynamic content and select 'Body' from the HTTP trigger. Choose 'contains' as the operator and enter 'Ready for Review' as the value.

  1. 1Click New step
  2. 2Search for and select Condition
  3. 3Click in the left value box
  4. 4Select Body from dynamic content
  5. 5Change operator to contains
  6. 6Enter 'Ready for Review' in right value
What you should see: You should see a condition box with Yes and No branches below it.
Common mistake — Use 'contains' not 'equals' because the webhook body includes more than just status.
ClickUp
CL
trigger
filter
Status
matches criteria?
yes — passes through
no — skipped
Slack
SL
notified
4

Condition > Add > Add row

Add second condition for Blocked status

In the condition settings, click Add condition to create an OR logic. Set this second condition to check if Body contains 'Blocked'. This ensures the flow triggers for both Ready for Review and Blocked status changes.

  1. 1Click Add in the condition box
  2. 2Select Add row
  3. 3Set the dropdown to Or
  4. 4Click Choose a value for the new row
  5. 5Select Body from dynamic content
  6. 6Set operator to contains and value to 'Blocked'
What you should see: You should see two condition rows connected with OR logic.
Common mistake — Filters are the most common place setups break. Double-check the field name and value exactly match what your app sends — a single capital letter difference will block everything.
5

ClickUp > Space Settings > Integrations > Webhooks

Configure ClickUp webhook

Open ClickUp in a new tab and go to your Space settings. Click Integrations, then Webhooks, then Create Webhook. Paste the HTTP POST URL from Power Automate into the Endpoint field. Select Task Status Updated as the event type and choose the specific statuses you want to monitor.

  1. 1Open ClickUp and navigate to Space settings
  2. 2Click Integrations tab
  3. 3Click Webhooks section
  4. 4Click Create Webhook
  5. 5Paste the Power Automate URL into Endpoint
  6. 6Select Task Status Updated event
What you should see: You should see a webhook created with Active status in ClickUp.
Common mistake — Webhook events are space-level, so you'll need separate webhooks for each ClickUp space.
6

Flow designer > HTTP trigger > Use sample payload

Test webhook and generate schema

In ClickUp, change a task to Ready for Review or Blocked status. Return to Power Automate and check the run history. Click on the successful run and copy the request body. Go back to your HTTP trigger and click Use sample payload to generate schema, then paste the copied body.

  1. 1Change a ClickUp task status to trigger the webhook
  2. 2Go to My flows > Run history in Power Automate
  3. 3Click the successful run and copy the body
  4. 4Return to flow designer
  5. 5Click Use sample payload to generate schema in HTTP trigger
  6. 6Paste the webhook body and click Done
What you should see: You should see individual fields appear in the dynamic content picker instead of just 'Body'.
Common mistake — If no run appears, check that your webhook URL matches exactly and ClickUp shows the webhook as Active.
Power Automate
▶ Test flow
executed
ClickUp
Slack
Slack
🔔 notification
received
7

Condition > Yes > Add an action > Slack

Add Slack connection

In the Yes branch of your condition, click Add an action and search for 'Slack'. Select the Slack connector and choose 'Post message' action. You'll be prompted to sign in to Slack and authorize Power Automate to access your workspace.

  1. 1Click Add an action in the Yes branch
  2. 2Search for and select Slack
  3. 3Choose Post message action
  4. 4Click Sign in when prompted
  5. 5Authorize Power Automate in Slack
What you should see: You should see a green connected badge next to the Slack action.
Common mistake — You need admin permissions in Slack to install the Power Automate app.
8

Slack action > Post message configuration

Configure Slack message

Select your target channel from the dropdown. Create a message template using dynamic content from the ClickUp webhook. Include the task name, status, assignee, and a direct link to the task. Use the task URL field from the webhook payload to create a clickable link.

  1. 1Select channel from Channel dropdown
  2. 2Click in Message text field
  3. 3Add dynamic content for task name and status
  4. 4Include assignee information
  5. 5Add task URL for direct access
  6. 6Format as: 'Task: [name] changed to [status] - [assignee] - [url]'
What you should see: You should see a formatted message with dynamic ClickUp fields populated.
Common mistake — Map fields using the variable picker — don't type field names manually. Hand-typed variable names often have invisible spacing errors that produce blank output.
9

Slack action > Settings > Configure run after

Add error handling

Click the three dots on your Slack action and select Settings. Turn on Configure run after and select 'has failed'. Add a Compose action in the failure branch to log webhook data for debugging. This prevents lost notifications when Slack is down.

  1. 1Click three dots menu on Slack action
  2. 2Select Settings
  3. 3Toggle Configure run after
  4. 4Check 'has failed'
  5. 5Add Compose action below
  6. 6Input the full webhook body for logging
What you should see: You should see a parallel path that runs only when the Slack action fails.
Common mistake — Without error handling, webhook failures can cause ClickUp to disable your endpoint after repeated failures.
10

Flow designer > Save

Save and test the flow

Click Save in the top toolbar to activate your flow. Test by changing a ClickUp task to Ready for Review or Blocked status. Check your Slack channel for the notification and verify all dynamic fields populate correctly. Monitor the run history for any errors.

  1. 1Click Save button in top toolbar
  2. 2Go to ClickUp and change a task status
  3. 3Check target Slack channel for message
  4. 4Verify all fields display correctly
  5. 5Check My flows > Run history for success
What you should see: You should see a formatted Slack message with task details appearing within 10 seconds of the status change.

Going live

Production Checklist

Before you turn this on for real, confirm each item.

Troubleshooting

Common errors and how to fix them.

Frequently Asked Questions

Common questions about this workflow.

Analysis

VerdictWhy n8n for this workflow

Use Power Automate for this if you're already in the Microsoft ecosystem and need tight integration with Teams alongside Slack. The webhook handling is solid and the condition logic works well for status filtering. Skip it if you need complex message formatting - Make handles rich Slack messages better.

Cost

This costs nothing at the free tier until you hit 750 runs per month. At 50 status changes daily, you'll use about 1,500 runs monthly = $15. Zapier would cost $20 for the same volume, while Make stays free up to 1,000 operations.

Tradeoffs

Zapier has better Slack formatting options with native support for blocks and attachments. Make offers more flexible webhook parsing and can handle multiple channel routing in one scenario. N8n gives you full JavaScript control over message templates. But Power Automate wins on enterprise security and compliance requirements that many IT departments demand.

You'll hit ClickUp's webhook reliability issues where endpoints go inactive without warning. Power Automate's condition logic gets clunky with complex status combinations - you'll end up with nested conditions that are hard to debug. The dynamic content picker sometimes loses webhook fields after editing, forcing you to regenerate the schema.

Ideas for what to build next

  • Add priority-based formattingUse different Slack message colors or emoji based on ClickUp task priority levels.
  • Create digest notificationsBuild a scheduled flow that sends daily summaries of all blocked tasks to management.
  • Expand to Teams integrationAdd Microsoft Teams actions alongside Slack for organizations using both platforms.

Related guides

Was this guide helpful?
ClickUp + Slack overviewPower Automate profile →