

How to Send Salesforce Lead Notifications to Slack with N8n
Automatically post new Salesforce leads to #sales-leads with source, company, title, and phone number for instant rep follow-up.
Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.
Slack for Salesforce exists as a native integration, but it limited to record notifications without custom logic. This guide uses an automation platform for full control. View native option →
Best for
Teams that want customizable lead notifications and plan to add lead scoring or routing logic later.
Not ideal for
Teams needing instant notifications under 1 minute or simple plug-and-play setup without technical customization.
Sync type
pollingUse case type
notificationReal-World Example
A 25-person B2B software company uses this to alert #sales-leads whenever a new lead enters Salesforce from their website or trade shows. Before automation, reps checked Salesforce manually every hour and missed hot inbound leads during lunch breaks or meetings, losing follow-up speed to competitors. Now they get instant Slack pings with phone numbers ready to dial.
What Will This Cost?
Drag the slider to your expected monthly volume.
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
Import this workflow directly into n8n
Copy the pre-built n8n blueprint and paste it straight into n8n. 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.
Field Mapping
Map these fields between your apps.
| Field | API Name | |
|---|---|---|
| Required | ||
| Company Name | Company | |
| Full Name | FirstName, LastName | |
| Lead Source | LeadSource | |
| Email Address | Email | |
2 optional fields▸ show
| Job Title | Title |
| Phone Number | Phone |
Step-by-Step Setup
Dashboard > New Workflow
Create New N8n Workflow
Start a fresh workflow from the N8n dashboard. This creates the canvas where you'll build the lead notification automation.
- 1Click 'New workflow' button on the N8n dashboard
- 2Name it 'Salesforce Lead to Slack Notifications'
- 3Click 'Save' to create the workflow
Canvas > Add Node > Salesforce
Add Salesforce Trigger Node
Configure the Salesforce node to listen for new lead records. This polls Salesforce every 3 minutes by default for changes.
- 1Click the + button on the canvas
- 2Search for 'Salesforce' and select it
- 3Choose 'Get All' operation from the dropdown
- 4Set Resource to 'Lead'
- 5Select 'Return All' for the limit field
Salesforce Node > Credentials > New
Connect Salesforce Account
Authenticate with your Salesforce org using OAuth. N8n stores the refresh token securely for ongoing access.
- 1Click 'Create New Credential' in the Salesforce node
- 2Select 'OAuth2' authentication method
- 3Click 'Connect my account' button
- 4Log into Salesforce in the popup window
- 5Click 'Allow' to grant N8n access
Salesforce Node > Conditions
Filter for New Leads Only
Add date filtering to catch only leads created in the last 5 minutes. This prevents processing old records on each run.
- 1Scroll down to 'Conditions' section in the Salesforce node
- 2Click 'Add Condition'
- 3Set Field to 'CreatedDate'
- 4Set Operation to 'Greater Than'
- 5Set Value to '{{ $now.minus({minutes: 5}).toISO() }}'
Salesforce Node > Execute Node
Test Salesforce Connection
Execute the node to verify it can fetch lead data and see the field structure you'll map to Slack.
- 1Click 'Execute Node' button on the Salesforce node
- 2Wait for the execution to complete
- 3Review the output data in the right panel
- 4Note the field names like Company, LeadSource, Title, Phone
Canvas > Add Node > IF
Add IF Conditional Node
Insert a conditional check to only proceed when leads exist. This prevents empty Slack messages when no new leads are found.
- 1Click + button after the Salesforce node
- 2Search for 'IF' and select the IF node
- 3Set Condition to 'Number'
- 4Set Value 1 to '{{ $json.length }}'
- 5Set Operation to 'Larger'
- 6Set Value 2 to '0'
IF Node True > Add Node > Item Lists
Add Item Lists Node
Split the lead array into individual items so each lead gets its own Slack message instead of one bulk message.
- 1Click + on the 'True' output of the IF node
- 2Search for 'Item Lists' and select it
- 3Choose 'Split Out Items' operation
- 4Leave 'Field Name' empty to process the root array
Item Lists > Add Node > Slack
Add Slack Node
Configure Slack to post formatted lead notifications to your sales channel with all the key details reps need.
- 1Click + after the Item Lists node
- 2Search for 'Slack' and select it
- 3Choose 'Post Message' operation
- 4Set Channel to '#sales-leads'
- 5Leave other settings as default for now
Slack Node > Credentials > New
Connect Slack Account
Authenticate with Slack using a bot token that has permissions to post in your sales channels.
- 1Click 'Create New Credential' in the Slack node
- 2Select 'Access Token' method
- 3Go to api.slack.com/apps in a new tab
- 4Create a new app or select existing one
- 5Copy the 'Bot User OAuth Token' starting with xoxb-
- 6Paste the token into N8n's Access Token field
Slack Node > Text Field
Format Lead Message
Create a structured Slack message with lead source, company, title, and phone using Salesforce field mappings.
- 1Click in the 'Text' field of the Slack node
- 2Enter this template: 'New Lead Alert! \n*Company:* {{ $json.Company }} \n*Name:* {{ $json.FirstName }} {{ $json.LastName }} \n*Title:* {{ $json.Title }} \n*Source:* {{ $json.LeadSource }} \n*Phone:* {{ $json.Phone }}'
- 3Click 'Add Field' button
- 4Add 'Username' field and set it to 'Salesforce Bot'
Toolbar > Execute Workflow
Test Complete Workflow
Execute the entire workflow to verify lead data flows from Salesforce to Slack with proper formatting.
- 1Click 'Execute Workflow' button in the top toolbar
- 2Wait for all nodes to complete execution
- 3Check the Slack channel for the formatted message
- 4Verify all lead fields populated correctly
Workflow Header > Active Toggle
Activate Workflow
Enable automatic execution so the workflow runs every 3 minutes to check for new leads without manual intervention.
- 1Click the 'Inactive' toggle in the top right
- 2Confirm activation in the dialog box
- 3Set execution logging to 'Errors Only' to reduce log volume
- 4Save the workflow one final time
Drop this into an n8n Code node.
Copy this template{{ $json.Phone ? $json.Phone.replace(/[^\d]/g, '').replace(/(\d{3})(\d{3})(\d{4})/, '($1) $2-$3') : 'No phone' }}▸ Show code
{{ $json.Phone ? $json.Phone.replace(/[^\d]/g, '').replace(/(\d{3})(\d{3})(\d{4})/, '($1) $2-$3') : 'No phone' }}... expand to see full code
{{ $json.Phone ? $json.Phone.replace(/[^\d]/g, '').replace(/(\d{3})(\d{3})(\d{4})/, '($1) $2-$3') : 'No phone' }}Scaling Beyond 50+ leads/day+ Records
If your volume exceeds 50+ leads/day records, apply these adjustments.
Batch Process Leads
Set a limit of 20 leads per execution in the Salesforce node. This prevents API timeouts and keeps Slack messages manageable during lead spikes.
Increase Polling Interval
Change the trigger interval to 5 minutes instead of 3 to reduce API calls. Sales teams won't notice the extra 2-minute delay but you'll save 40% on executions.
Add Lead Scoring Filter
Use N8n's IF node to only notify on qualified leads with specific criteria like company size or lead score. This reduces noise in the sales channel during high-volume periods.
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
Use N8n for this if you want full control over the message format and need to add custom logic like lead scoring or routing rules later. N8n's code nodes let you manipulate the data however you want, and the self-hosted option keeps your lead data internal. Skip N8n if you need real-time notifications under 30 seconds - go with Zapier's webhooks instead since N8n polls every 3 minutes minimum.
This workflow uses 1 execution per run, checking every 3 minutes. At 100 new leads/month, that's 14,400 executions monthly (480 per day). That fits N8n's Starter plan at $20/month with executions to spare. Make would cost $9/month for the same volume, and Zapier would run $20/month on their Professional plan. Make wins on pure cost, but N8n gives you more flexibility for the same price as Zapier.
Make handles this workflow better with native Salesforce webhooks that trigger instantly instead of polling every 3 minutes - their Salesforce integration is more mature. Zapier beats both with the easiest setup and better error handling out of the box. But N8n shines when you need custom JavaScript in the workflow, like calculating lead scores or formatting phone numbers. The code nodes and self-hosting option make it worth the extra complexity if you plan to extend beyond basic notifications.
You'll hit Salesforce's API limits faster than expected if you have multiple workflows polling leads - each query counts against your daily allocation. N8n's polling can drift from exactly 3 minutes to 4-5 minutes under load, so don't rely on precise timing. Lead records sometimes have null values for Title and Phone that break message formatting, requiring null checks in your Slack template. The biggest gotcha: Salesforce stores CreatedDate in UTC but your sales team thinks in local time, leading to confusion about when leads actually arrived.
Ideas for what to build next
- →Add Lead Assignment Notifications — Create a second workflow that notifies individual reps when leads are assigned to them in Salesforce, including their personal Slack DM.
- →Build Lead Conversion Tracking — Set up a follow-up notification when leads convert to opportunities, posting to #sales-wins with deal value and expected close date.
- →Create Lead Response SLA Alerts — Add a delayed workflow that checks if leads were contacted within 2 hours and pings sales managers about overdue follow-ups.
Related guides
How to Share Notion Meeting Notes to Slack with Pipedream
~15 min setup
How to Share Notion Meeting Notes to Slack with Power Automate
~15 min setup
How to Share Notion Meeting Notes to Slack with n8n
~20 min setup
How to Send Notion Meeting Notes to Slack with Zapier
~8 min setup
How to Share Notion Meeting Notes to Slack with Make
~12 min setup
How to Create Notion Tasks from Slack with Pipedream
~15 min setup