

How to Send Salesforce Closed Won Deals to Slack with Zapier
Post automatic Slack messages to your #wins channel when deals close in Salesforce, including deal name, amount, rep name, and account.
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
Sales teams who want automatic deal celebrations without technical setup complexity.
Not ideal for
Teams needing instant notifications or complex message formatting with conditional logic.
Sync type
pollingUse case type
notificationReal-World Example
A 25-person B2B SaaS sales team uses this to celebrate every closed-won deal in their #revenue Slack channel. Before automation, sales reps manually announced wins, but smaller deals often went unnoticed and team morale suffered. Now every close triggers an automatic celebration with deal size and rep name, creating consistent recognition across the team.
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
Before You Start
Make sure you have everything ready.
Field Mapping
Map these fields between your apps.
| Field | API Name | |
|---|---|---|
| Required | ||
| Opportunity Name | Name | |
| Deal Amount | Amount | |
| Opportunity Owner | Owner.Name | |
| Account Name | Account.Name | |
| Stage Name | StageName | |
1 optional field▸ show
| Close Date | CloseDate |
Step-by-Step Setup
Dashboard > Create Zap
Create New Zap
Start building your automation by creating a new Zap. This sets up the workflow container for your Salesforce-to-Slack connection.
- 1Click 'Create Zap' from your Zapier dashboard
- 2Select 'Start from scratch' option
- 3Name your Zap 'Closed Won Celebrations'
Zap Editor > Trigger > Choose App
Choose Salesforce Trigger
Set up Salesforce as your trigger app. This tells Zapier to watch for specific changes in your CRM.
- 1Click the trigger step and search for 'Salesforce'
- 2Select 'Salesforce' from the app list
- 3Choose 'Updated Record' as your trigger event
- 4Click 'Continue'
Trigger Setup > Account
Connect Salesforce Account
Authenticate your Salesforce connection. Zapier needs permission to read opportunity updates from your CRM.
- 1Click 'Sign in to Salesforce'
- 2Enter your Salesforce username and password
- 3Click 'Allow' to grant Zapier access
- 4Select your connected account from the dropdown
Trigger Setup > Configure
Configure Opportunity Trigger
Tell Zapier to only watch Opportunity records. This prevents the Zap from firing on leads, accounts, or other record types.
- 1Set 'Object' dropdown to 'Opportunity'
- 2Leave 'Fields to Watch' empty (watches all fields)
- 3Click 'Continue'
Trigger Setup > Test
Test Salesforce Connection
Zapier pulls a recent opportunity record to verify the connection works. This sample data helps you map fields correctly.
- 1Click 'Test trigger'
- 2Wait for Zapier to fetch sample data
- 3Review the opportunity record that appears
- 4Click 'Continue with selected record'
Zap Editor > + > Filter
Add Filter Step
Add a filter to only process closed-won opportunities. Without this, every opportunity update triggers your Slack message.
- 1Click the + button to add a new step
- 2Search for and select 'Filter by Zapier'
- 3Choose 'Only continue if...' option
- 4Click 'Continue'
Filter Setup > Conditions
Configure Closed Won Filter
Set the filter condition to only trigger on closed-won deals. This uses Salesforce's standard stage name for won opportunities.
- 1Set first dropdown to 'Stage Name' from Salesforce data
- 2Set condition to 'Exactly matches'
- 3Type 'Closed Won' in the value field
- 4Click 'Continue'
Filter Setup > Test
Test Filter Logic
Verify the filter catches closed-won deals correctly. This prevents your Slack channel from getting spammed with non-won updates.
- 1Click 'Test step'
- 2Check if the sample record passes or is halted
- 3If halted, verify the stage name matches your filter
- 4Click 'Continue' when the test passes
Zap Editor > + > Slack
Add Slack Action
Configure Slack as your action app to send the celebration message. This creates the notification your team will see.
- 1Click the + button to add another step
- 2Search for and select 'Slack'
- 3Choose 'Send Channel Message' as the action
- 4Click 'Continue'
Action Setup > Account
Connect Slack Account
Authenticate your Slack workspace connection. Zapier needs permission to post messages to your channels.
- 1Click 'Sign in to Slack'
- 2Select your workspace from the list
- 3Click 'Allow' to grant channel access
- 4Choose your connected Slack account
Action Setup > Message
Configure Slack Message
Set up the celebration message format with deal details. This determines what information your team sees when deals close.
- 1Set 'Channel' to '#wins' (or your preferred channel)
- 2In 'Message Text', click the + to add Salesforce fields
- 3Build message: '🎉 {Name} closed for ${Amount} by {Owner Name} at {Account Name}!'
- 4Set 'Bot Name' to 'Deal Bot' or similar
🔔 New Lead: {{1.FirstName}} {{1.LastName}}
Email: {{1.Email}}
Company: {{1.Company}}
Status: {{1.LeadStatus}}Action Setup > Test
Test Complete Workflow
Send a test message to verify everything works end-to-end. This confirms your team will see properly formatted celebrations.
- 1Click 'Test step' to send a test message
- 2Check your Slack channel for the message
- 3Verify all fields populated correctly
- 4Click 'Publish' to activate your Zap
Drop this into a Zapier Code step.
JavaScript — Code Step{{amount__c | currency: 'USD'}} - Use this in your Slack message to format the deal amount with proper currency symbols and commas instead of raw numbers.▸ Show code
{{amount__c | currency: 'USD'}} - Use this in your Slack message to format the deal amount with proper currency symbols and commas instead of raw numbers.... expand to see full code
{{amount__c | currency: 'USD'}} - Use this in your Slack message to format the deal amount with proper currency symbols and commas instead of raw numbers.Scaling Beyond 100+ deals/month+ Records
If your volume exceeds 100+ deals/month records, apply these adjustments.
Add delay between messages
Insert a 2-3 second delay step before Slack to avoid rate limiting when multiple deals close simultaneously. High-volume teams often process batches of opportunities at month-end.
Use multi-step filtering
Add a second filter for deal amount or specific users to reduce noise. Not every $500 upsell needs a celebration — focus on deals above your meaningful threshold.
Monitor API usage
Salesforce limits API calls per day. If you hit limits, the Zap will fail until the limit resets. Consider using Salesforce Process Builder for instant notifications instead of polling.
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 Zapier for this if your team wants quick setup and reliable delivery without coding. The guided builder makes field mapping obvious, and Zapier's Salesforce connector handles authentication complexity well. The polling-based trigger catches updates within 1-5 minutes depending on your plan. Skip Zapier if you need instant notifications — you'd want a Salesforce Process Builder calling a webhook instead.
This workflow consumes 2 tasks per closed deal (1 for the trigger check, 1 for the Slack message). At 20 deals/month, that's 40 tasks total. The Starter plan at $19.99/month includes 750 tasks, so you're well covered. Make would cost $9/month for the same volume with 1000 operations. N8n self-hosted is free but requires server management. Make wins on price, but Zapier's Salesforce integration is more mature.
Make handles Salesforce picklist values better — it shows you the actual stage names in a dropdown instead of making you type them. N8n gives you more control over the message formatting with HTML templates and conditional logic. But Zapier's error handling is superior for this use case. When Salesforce API limits hit or Slack is down, Zapier automatically retries failed tasks. Make and N8n require manual retry configuration.
Salesforce's API caches opportunity updates for up to 2 minutes, so your celebrations might lag behind the actual close time. If multiple opportunities close simultaneously, you'll hit Zapier's 1-second rate limit between Slack messages. The Amount field comes through as a raw number without currency formatting — add a formatter step if you need proper dollar signs and commas in your celebrations.
Ideas for what to build next
- →Add lost deal notifications — Create a second Zap that posts to a private channel when deals are marked closed-lost, helping your team learn from losses.
- →Track celebration metrics — Send deal data to Google Sheets simultaneously to build a dashboard of celebration frequency and team performance trends.
- →Notify individual reps — Add a direct message action that congratulates the specific sales rep privately, creating personal recognition alongside team celebrations.
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