Intermediate~15 min setupCommunication & Project ManagementVerified April 2026
Slack logo
Trello logo

How to Broadcast Trello Updates to Slack with Pipedream

Automatically post Trello card moves and comments to specific Slack channels in real-time.

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

Best for

Development teams with multiple projects who need instant visibility into card progress without manual Trello checking

Not ideal for

Teams that prefer daily digest summaries over real-time notifications

Sync type

real-time

Use case type

notification

Real-World Example

πŸ’‘

A 12-person product team uses this to notify #product-updates when Trello cards move from 'In Progress' to 'Review' or receive new comments. Before automation, project managers checked 4 different boards manually every 2 hours and stakeholders missed critical updates for half a day.

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 Pipedream

Copy the pre-built Pipedream blueprint and paste it straight into Pipedream. 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.

Trello board admin access to configure webhooks on monitored boards
Slack workspace admin permissions to install apps and authorize bot posting
Pipedream account with webhook execution credits available
Slack channels created where you want to receive Trello notifications

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Card Name
Action Type
Member Name
Board Name
Card URL
Timestamp
3 optional fieldsβ–Έ show
Source List
Destination List
Comment Text

Step-by-Step Setup

1

Dashboard > New > Workflow

Create New Pipedream Workflow

Log into pipedream.com and click the blue 'New' button in the top navigation. Select 'Workflow' from the dropdown menu. You'll land on the workflow builder with an empty trigger step ready to configure.

  1. 1Click the blue 'New' button in top navigation
  2. 2Select 'Workflow' from the dropdown
  3. 3Name your workflow 'Trello to Slack Broadcaster'
βœ“ What you should see: You should see the workflow builder interface with an empty trigger step labeled 'trigger'.
2

Workflow > trigger > Apps

Add Trello Webhook Trigger

Click the trigger step and search for 'Trello' in the app selector. Choose 'New Card Activity (Instant)' which fires on card moves, comments, and updates. This creates a dedicated webhook URL that Trello will call.

  1. 1Click the empty trigger step
  2. 2Search for 'Trello' in the app list
  3. 3Select 'New Card Activity (Instant)' trigger
  4. 4Click 'Save and continue'
βœ“ What you should see: You should see a webhook URL displayed and a 'Connect Trello Account' button.
⚠
Common mistake β€” Don't test the trigger yet - you need to connect your account and configure the board first.
Pipedream
+
click +
search apps
Slack
SL
Slack
Add Trello Webhook Trigger
Slack
SL
module added
3

trigger > Connect Account

Connect Trello Account

Click 'Connect Trello Account' and authorize Pipedream to read your boards and cards. You'll be redirected to Trello's OAuth screen to grant permissions. After authorization, you'll return to Pipedream with your account connected.

  1. 1Click 'Connect Trello Account'
  2. 2Click 'Allow' on Trello's permission screen
  3. 3Wait for redirect back to Pipedream
  4. 4Verify your Trello username appears in the account dropdown
βœ“ What you should see: You should see your Trello username in the connected account field with a green checkmark.
Pipedream settings
Connection
Choose a connection…Add
click Add
Slack
Log in to authorize
Authorize Pipedream
popup window
βœ“
Connected
green checkmark
4

trigger > Board > Lists

Select Board and Configure Webhook

Choose which Trello board to monitor from the dropdown. Select the specific lists you want to track - you can monitor all lists or just specific ones like 'In Progress' and 'Done'. The webhook will register automatically with Trello.

  1. 1Select your target board from the 'Board' dropdown
  2. 2Choose 'All Lists' or select specific lists to monitor
  3. 3Check 'Card moves between lists' and 'New comments'
  4. 4Click 'Save and continue'
βœ“ What you should see: You should see 'Webhook configured successfully' message and the trigger step turns green.
⚠
Common mistake β€” If you select specific lists, card moves to unselected lists won't trigger the workflow.
5

Workflow > + > Code > Node.js

Add Node.js Code Step for Message Formatting

Click the '+' button below the trigger to add a new step. Search for 'Code' and select 'Run Node.js code'. This step will format the Trello data into a readable Slack message with card details, member info, and action type.

  1. 1Click the '+' button below trigger step
  2. 2Search for 'Code' in the apps list
  3. 3Select 'Run Node.js code'
  4. 4Name the step 'Format Slack Message'
βœ“ What you should see: You should see a code editor with a basic Node.js template and access to the trigger data.
⚠
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.

This code handles multiple Trello action types and formats them into readable Slack messages with appropriate emojis. Paste it into the Node.js code step to replace the default template.

JavaScript β€” Code Stepexport default defineComponent({
β–Έ Show code
export default defineComponent({
  async run({ steps, $ }) {
    const { action, model } = steps.trigger.event;

... expand to see full code

export default defineComponent({
  async run({ steps, $ }) {
    const { action, model } = steps.trigger.event;
    const card = model || action.data.card;
    const member = action.memberCreator?.fullName || 'Unknown';
    
    let message = '';
    let emoji = '';
    
    if (action.type === 'updateCard' && action.data.listAfter) {
      // Card moved between lists
      const fromList = action.data.listBefore?.name;
      const toList = action.data.listAfter?.name;
      emoji = toList.toLowerCase().includes('done') ? 'βœ…' : 'πŸ”„';
      message = `${emoji} ${member} moved **${card.name}** from ${fromList} β†’ ${toList}`;
    } else if (action.type === 'commentCard') {
      // New comment added
      emoji = 'πŸ’¬';
      const comment = action.data.text.substring(0, 200);
      message = `${emoji} ${member} commented on **${card.name}**: "${comment}"`;
    } else {
      // Other actions (member added, due date changed, etc.)
      emoji = 'πŸ“';
      message = `${emoji} ${member} updated **${card.name}**`;
    }
    
    const boardName = action.data.board?.name || 'Unknown Board';
    const channelMap = {
      'Development Sprint': '#dev-updates',
      'Client Projects': '#client-work',
      'Marketing Tasks': '#marketing-updates'
    };
    
    const targetChannel = channelMap[boardName] || '#general-updates';
    
    return {
      text: message,
      channel: targetChannel,
      card_url: card.shortUrl,
      board: boardName,
      timestamp: action.date
    };
  }
});
message template
πŸ”” New Record: {{text}} {{user}}
channel: {{channel}}
ts: {{ts}}
#sales
πŸ”” New Record: Jane Smith
Company: Acme Corp
6

Code Step > Editor

Write Message Formatting Logic

Replace the default code with logic to parse the Trello webhook payload. The code extracts card name, action type, member who made the change, and formats it into a structured Slack message with appropriate emoji and formatting.

  1. 1Clear the default code in the editor
  2. 2Paste the message formatting code
  3. 3Click 'Test' to validate syntax
  4. 4Click 'Save and continue'
βœ“ What you should see: The code should run without errors and show a formatted message object in the test output.
⚠
Common mistake β€” Make sure to handle cases where card members or comments might be null to avoid runtime errors.
7

Workflow > + > Slack > Send Message

Add Slack Send Message Step

Add another step and search for 'Slack'. Select 'Send Message to Channel' action. This will post your formatted message to the specified Slack channel with the card details and action information.

  1. 1Click '+' below the code step
  2. 2Search for 'Slack' in apps
  3. 3Select 'Send Message to Channel'
  4. 4Name it 'Post to Slack Channel'
βœ“ What you should see: You should see Slack step configuration with channel and message fields to fill.
⚠
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.
8

Slack Step > Account > Channel

Connect Slack Account and Configure Channel

Click 'Connect Slack Account' and authorize Pipedream to post messages. Select the target channel from the dropdown - you can choose any public channel or private channel where the bot has access. Map the formatted message from the previous step.

  1. 1Click 'Connect Slack Account'
  2. 2Authorize Pipedream in Slack workspace
  3. 3Select target channel from dropdown
  4. 4Map 'text' field to the formatted message from code step
βœ“ What you should see: You should see your Slack workspace connected and the channel selected with mapped message content.
⚠
Common mistake β€” The bot needs to be invited to private channels before it can post messages there.
9

Trello Board > Move Card

Test the Complete Workflow

Move a card between lists in your selected Trello board or add a comment to trigger the webhook. The workflow should execute within 10 seconds and post a formatted message to your Slack channel with card details and action information.

  1. 1Go to your monitored Trello board
  2. 2Move a test card to a different list
  3. 3Check Pipedream workflow executions tab
  4. 4Verify message appears in Slack channel
βœ“ What you should see: You should see a new execution in Pipedream and a formatted message in Slack within 10 seconds.
⚠
Common mistake β€” If the message doesn't appear, check the execution logs for authentication or permission errors.
Pipedream
β–Ά Deploy & test
executed
βœ“
Slack
βœ“
Trello
Trello
πŸ”” notification
received
10

Code Step > Add Routing Logic

Configure Channel Routing Rules

Add conditional logic to route different boards or card types to specific channels. Modify the code step to check board names or card labels and send to appropriate channels like #dev-updates or #client-work based on the context.

  1. 1Edit the formatting code step
  2. 2Add if/else logic for board-based routing
  3. 3Update Slack step to use dynamic channel selection
  4. 4Test with cards from different boards
βœ“ What you should see: Cards from different boards should route to their designated Slack channels automatically.
⚠
Common mistake β€” Ensure all target channels exist and the bot has posting permissions before deploying.

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 Pipedream for this if your team needs instant webhook responses and custom message formatting logic. The Node.js code steps let you parse Trello's complex webhook payloads and create rich Slack messages with conditional routing. Pipedream's instant webhook processing means notifications arrive within 10 seconds of card changes. Skip this for simple notifications - Zapier's pre-built templates are faster to set up.

Cost

Pipedream charges 1 credit per workflow execution. At 200 card moves per month, you'll spend $2 on the Developer plan. Zapier costs $19.99/month for the same volume on their Starter tier. Make.com handles 200 operations for free, making it the cheapest option if you don't need advanced formatting.

Tradeoffs

Zapier wins for setup speed with pre-built Trello-to-Slack templates that work in 3 clicks. Make offers better visual debugging when your message formatting breaks. n8n gives you more webhook customization options and better error handling for failed deliveries. Power Automate integrates naturally if you're already using Microsoft Teams instead of Slack. But Pipedream's instant webhooks and flexible Node.js formatting beat everyone for complex conditional logic.

You'll hit Trello's webhook quirks where moving cards triggers multiple events for position and list changes. The member data sometimes comes as IDs instead of names, breaking your message formatting. Slack's bot permissions are finicky - it needs explicit channel invites for private channels even with workspace admin approval. Plan for 30 minutes of debugging permission issues.

Ideas for what to build next

  • β†’
    Add Digest Mode β€” Create a scheduled version that sends hourly or daily summaries instead of real-time notifications for less active channels.
  • β†’
    Include Card Assignments β€” Enhance messages to mention specific Slack users when they're assigned to moved cards using @-mentions.
  • β†’
    Add Due Date Alerts β€” Extend the webhook to notify when cards approach due dates or become overdue with escalating urgency.

Related guides

Was this guide helpful?
← Slack + Trello overviewPipedream profile β†’