

How to Send Copper Lead Alerts to Slack with Zapier
Automatically sends a Slack direct message or channel post to the assigned sales rep whenever a new lead is created or reassigned in Copper.
Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.
Best for
Small to mid-size sales teams using Copper as their primary CRM who need reps notified in Slack the moment a lead lands in their queue.
Not ideal for
Teams reassigning leads in bulk — Zapier polls every 1-15 minutes and at high reassignment volume you'll burn tasks fast; use Make instead.
Sync type
real-timeUse case type
notificationReal-World Example
A 12-person B2B SaaS sales team uses this to ping reps in Slack the moment a new inbound lead gets assigned in Copper. Before this, reps checked Copper manually two or three times a day and routinely missed hot leads for 3-4 hours. Now the average first-touch response dropped from 4 hours to under 20 minutes.
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 | ||
| Lead Name | name | |
| Assignee Email | assignee_id | |
| Lead Email | email | |
5 optional fields▸ show
| Lead Phone | phone_numbers |
| Company Name | company_name |
| Lead Source | source_id |
| Lead Status | status |
| Created At | date_created |
Step-by-Step Setup
zapier.com > Dashboard > Create Zap
Create a new Zap in Zapier
Log into zapier.com and click the orange 'Create Zap' button in the left sidebar. You'll land on the Zap editor canvas. The editor has two panes: Trigger on the left and Action on the right. Give your Zap a name at the top — something like 'Copper Lead Assigned → Slack Alert' — so it's easy to find later.
- 1Log into zapier.com
- 2Click 'Create Zap' in the left sidebar
- 3Click the name field at the top of the editor and type 'Copper Lead Assigned → Slack Alert'
- 4Click the Trigger box to begin configuring it
Zap Editor > Trigger > Choose App > Copper > New Lead
Set Copper as the trigger app
In the Trigger step, click 'Choose App' and type 'Copper' in the search box. Select the Copper app from the results — it shows the Copper logo and says 'Copper CRM'. Then click 'Choose Trigger Event' and select 'New Lead' from the dropdown. This trigger fires whenever a lead is created in Copper. Zapier polls Copper every 5-15 minutes depending on your plan.
- 1Click 'Choose App' inside the Trigger step
- 2Type 'Copper' in the search field
- 3Select 'Copper CRM' from the results
- 4Click 'Choose Event'
- 5Select 'New Lead' from the event list
Copper > Settings > Integrations > API Key
Connect your Copper account
Click 'Sign in to Copper' in the account connection panel. A popup window will open asking for your Copper email address and API key. Find your API key in Copper under Settings > Integrations > API Key. Copy it and paste it into Zapier's popup along with your Copper login email. Click 'Yes, Continue' to authorize.
- 1Click 'Sign in to Copper' in the Zapier trigger panel
- 2Open a new tab and go to Copper > Settings > Integrations > API Key
- 3Copy your API key
- 4Return to Zapier and paste the API key and your Copper email into the popup
- 5Click 'Yes, Continue' to confirm
Zap Editor > Trigger > Test Trigger
Test the Copper trigger
Click 'Test Trigger' to pull in a sample lead record from Copper. Zapier will fetch the three most recently created leads. You'll see a list of fields including lead name, email, phone, assigned user ID, and status. Click on one record to expand it and review the available fields — you'll map these in the Slack action step. If no leads appear, create a test lead in Copper first.
- 1Click 'Test Trigger'
- 2Review the list of returned lead records
- 3Click on the most recent record to expand the field list
- 4Confirm that 'Assignee' or 'Assigned To' fields are present
Zap Editor > Action > Choose App > Slack > Send Direct Message
Add a Slack action step
Click the '+' button below the Trigger step to add an Action. Search for 'Slack' and select it. For the event, choose 'Send Direct Message' if you want to alert the specific assigned rep, or 'Send Channel Message' if your team monitors a shared #leads channel. Direct message is recommended here — it creates personal accountability and cuts notification noise for the rest of the team.
- 1Click the '+' button below the Trigger step
- 2Type 'Slack' in the app search field
- 3Select 'Slack' from the results
- 4Click 'Choose Event'
- 5Select 'Send Direct Message' (or 'Send Channel Message' for shared channel)
Zap Editor > Action > Sign in to Slack > Authorize
Connect your Slack workspace
Click 'Sign in to Slack'. A browser popup opens asking you to authorize Zapier for your Slack workspace. Select the correct workspace from the dropdown if you belong to multiple. Click 'Allow'. You only need to do this once — future Zaps reuse the same connection. Make sure the Slack account you connect has permission to send DMs to other workspace members.
- 1Click 'Sign in to Slack'
- 2Select the correct Slack workspace from the dropdown
- 3Click 'Allow' on the Zapier permissions screen
- 4Return to the Zap editor
Zap Editor > Action > Configure > To Username
Configure the Slack message recipient
In the 'To Username' field for the DM, you need to map the assignee's Slack username or email. Click the field and select the dynamic field from your Copper trigger data — look for 'Assignee Email' or 'Assigned User Email'. Slack accepts email addresses to resolve users when sending DMs through the API. If Copper only returns an assignee ID, insert a Zapier 'Lookup' step before this action to resolve the ID to an email using Copper's user list.
- 1Click the 'To Username' field
- 2Click the insert data icon (lightning bolt)
- 3Search for and select 'Assignee Email' from the Copper trigger fields
- 4Confirm the mapped email address appears in the field preview
📬 New entry: {{1.name}}
Email: {{1.email}}
Details: {{1.description}}Zap Editor > Action > Configure > Message Text
Write the Slack message text
In the 'Message Text' field, compose the alert using dynamic data from Copper. Click the lightning bolt icon to insert tokens. A clear message includes the lead's name, company, email, phone, and the source. Keep it under 300 characters so it renders cleanly on mobile. Use line breaks to separate fields — Zapier supports newline characters in message text.
- 1Click inside the 'Message Text' field
- 2Type '🔔 New lead assigned to you:' as the opening line
- 3Press Enter and insert the 'Name' token from Copper
- 4Add company, email, phone, and source fields on separate lines using the lightning bolt insert
- 5Add a final line with a direct Copper link if available
📬 New entry: {{1.name}}
Email: {{1.email}}
Details: {{1.description}}Zap Editor > Action > Test Action
Test the full Zap
Click 'Test Action' at the bottom of the Slack configuration panel. Zapier will send a real Slack DM using the sample Copper data from Step 4. Open Slack on your phone or desktop and confirm the message arrived in the correct person's DMs. Check that all dynamic fields resolved correctly — no blank spots or raw IDs showing up in the message.
- 1Click 'Test Action'
- 2Open Slack and navigate to the target user's DMs
- 3Confirm the message arrived with correct lead data
- 4Check that no fields show as blank or show a raw Copper ID
Zap Editor > Publish Zap > Toggle On
Turn on the Zap
Click 'Publish Zap' in the top-right corner of the editor. Zapier will ask you to confirm the trigger and action one more time. After confirming, toggle the Zap to 'On'. Zapier will immediately begin polling Copper for new leads on your plan's polling interval — every 5 minutes on Starter, every 15 minutes on Free. You'll see the Zap listed as 'On' in your Zap dashboard.
- 1Click 'Publish Zap' in the top-right corner
- 2Review the summary screen
- 3Click 'Publish & Turn On'
- 4Confirm the Zap shows 'On' status in your dashboard
This Code by Zapier step formats the raw Copper 'date_created' Unix timestamp into a readable string and constructs a clean, pre-formatted Slack message block so you don't juggle 8 separate dynamic field tokens in the message composer. Paste this into a 'Code by Zapier' step (JavaScript) inserted between the Copper trigger and the Slack action. Map the output variable 'slackMessage' into your Slack 'Message Text' field.
JavaScript — Code Step// Code by Zapier — JavaScript▸ Show code
// Code by Zapier — JavaScript // Formats Copper lead data into a clean Slack alert message // Insert this step BETWEEN the Copper trigger and Slack action
... expand to see full code
// Code by Zapier — JavaScript
// Formats Copper lead data into a clean Slack alert message
// Insert this step BETWEEN the Copper trigger and Slack action
// Map inputData fields from your Copper trigger step
const leadName = inputData.leadName || 'Unknown Lead';
const companyName = inputData.companyName || 'No Company';
const leadEmail = inputData.leadEmail || 'No email provided';
const leadPhone = inputData.leadPhone || 'No phone provided';
const leadSource = inputData.leadSource || 'Unknown source';
const assigneeEmail = inputData.assigneeEmail || '';
const rawTimestamp = inputData.dateCreated; // Unix timestamp in seconds from Copper
// Convert Unix timestamp to readable date
const createdDate = rawTimestamp
? new Date(rawTimestamp * 1000).toLocaleString('en-US', {
month: 'short',
day: 'numeric',
hour: 'numeric',
minute: '2-digit',
hour12: true
})
: 'Unknown time';
// Build the formatted Slack message
const slackMessage = [
`🔔 *New lead assigned to you:*`,
`*${leadName}* | ${companyName}`,
`📧 ${leadEmail}`,
`📞 ${leadPhone}`,
`🔗 Source: ${leadSource}`,
`🕐 Created: ${createdDate}`
].join('\n');
output = [{ slackMessage, assigneeEmail }];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 sales team is non-technical, already uses Zapier for other workflows, and can tolerate a 5-15 minute alert delay. Setup genuinely takes under 30 minutes. The Copper and Slack apps are both stable in Zapier's library, the trigger works reliably, and you don't need to write a single line of code. The one scenario where you'd skip Zapier: if your team reassigns leads frequently throughout the day and immediate notification is the whole point. A 15-minute lag on a hot inbound lead is a real business problem, not just an inconvenience.
The cost math is straightforward. Each lead creation fires one Zap task. One task = one Slack message. At 200 new leads per month, you're at 200 tasks — comfortably inside Zapier's Free tier (100 tasks) only if you're a very small team; realistically you'll need Starter at $19.99/month for 750 tasks. At 500 leads/month, Starter still covers you. At 1,000+ leads/month, you're looking at the Professional plan at $49/month. Make handles this same workflow for free up to 1,000 operations/month on its free tier — that's a $19.99-$49/month difference for the same outcome.
Make fires this workflow faster because it supports Copper webhooks via the HTTP/Webhook module, cutting latency from 5-15 minutes to under 60 seconds. n8n gives you the most control over the Slack message format — you can build full Block Kit payloads with buttons natively in the node, which Zapier's Slack action doesn't support without Code by Zapier. Power Automate has a Copper connector but it's through a third-party premium connector that costs extra and has documented reliability issues — skip it for this use case. Pipedream lets you write the entire workflow in Node.js and deploy in under 10 minutes if you're comfortable with code, and Copper's REST API is clean enough that the trigger setup is trivial. Zapier still wins here if your team has zero coding tolerance and you're already paying for a Zapier subscription — the marginal cost is zero and the setup is the fastest of any platform.
Three things you'll hit after setup. First: the assignee field. Copper's API returns a numeric user ID for assignees in some response formats — your Slack message will show '5829341' instead of a name until you add a lookup step. Test with real data before going live, not just the canned sample. Second: email mismatches. Reps who signed up for Slack with a personal Gmail but have their work email in Copper will cause silent DM failures — Zapier won't surface this as a hard error, it just won't deliver. Audit both systems before launch. Third: the reassignment gap. If your workflow involves reassigning leads between reps — not just creating and assigning — you need a second Zap with the 'Updated Lead' trigger. A lot of teams build this, go live, and only discover three weeks later that reassignment alerts were never being sent.
Ideas for what to build next
- →Build a Lead Reassignment Alert Zap — Create a second Zap using Copper's 'Updated Lead' trigger filtered to fire only when the assignee field changes — this covers the full assignment lifecycle, not just new leads.
- →Add a Slack Button to Log First Contact — Upgrade the Slack message to an interactive Block Kit message with a 'Mark as Contacted' button that writes back to Copper via a separate Zapier webhook Zap, giving you response tracking without leaving Slack.
- →Build a Daily Unworked Lead Digest — Create a scheduled Zap that queries Copper for leads assigned more than 24 hours ago with no activity and sends each rep a morning Slack summary — catches leads that fell through the cracks despite the initial alert.
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