

How to Send Zoho CRM Leads to Slack with Make
When a new lead is created in Zoho CRM, Make instantly posts a formatted notification to a designated Slack channel with the lead's name, company, source, and assigned owner.
Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.
Best for
Sales teams of 5-30 reps who need instant Slack alerts when leads hit Zoho CRM so they can assign and respond within minutes.
Not ideal for
Teams getting 1,000+ leads per day — at that volume, a digest (batched hourly summary) is less noisy and cheaper to operate.
Sync type
real-timeUse case type
notificationReal-World Example
A 12-person SaaS sales team routes all inbound demo requests into Zoho CRM from their website form. Before this automation, reps checked Zoho manually two or three times a day and leads sat uncontacted for up to four hours. Now a Slack message fires in #new-leads within 30 seconds of the record being created, and response time dropped 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
Import this workflow directly into Make
Copy the pre-built Make blueprint and paste it straight into Make. 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 | ||
| Lead Full Name | Full_Name | |
| Company | Company | |
Email | ||
| Lead Source | Lead_Source | |
| Lead Owner | Owner | |
| Created Time | Created_Time | |
4 optional fields▸ show
| Phone | Phone |
| Lead Status | Lead_Status |
| Annual Revenue | Annual_Revenue |
| Description / Lead Notes | Description |
Step-by-Step Setup
make.com > Scenarios > Create a new scenario
Create a new Make scenario
Log in at make.com and click the blue 'Create a new scenario' button in the top right of your Scenarios dashboard. You'll land on the visual canvas with a single empty module in the center. This is where you'll chain together the Zoho CRM trigger and the Slack action. Give the scenario a name immediately — click the default title text at the top and type something like 'Zoho CRM → Slack Lead Notifications' so you can find it later.
- 1Click the blue 'Create a new scenario' button in the top right
- 2Click the empty circle module on the canvas to open the app picker
- 3Type 'Zoho CRM' in the search bar
- 4Click the Zoho CRM app icon to select it
Zoho CRM Module > Watch Records > Leads
Configure the Zoho CRM trigger
From the Zoho CRM module list, select 'Watch Records' — this is the trigger that fires when a new record is created or updated in any Zoho CRM module. In the trigger configuration panel, set the Module dropdown to 'Leads'. Set the Trigger field to 'Created Time' so the scenario fires only on new leads, not edits. You can leave the Max number of records field at 1 for single-record processing.
- 1Select 'Watch Records' from the trigger list
- 2Click 'Add' next to the Connection field to authenticate Zoho CRM
- 3Set the Module field to 'Leads'
- 4Set Trigger to 'Created Time'
- 5Set Max number of records to '1'
Zoho CRM Module > Connection > Add
Connect your Zoho CRM account
Click 'Add' next to the Connection field if you haven't already. Make will prompt you to choose your Zoho data center region from a dropdown — pick the one that matches where your Zoho account was created (US, EU, AU, IN, or JP). Click 'Continue' and you'll be redirected to a Zoho OAuth authorization page. Log in with your Zoho admin credentials and click 'Accept' to grant Make read access to your CRM records.
- 1Click 'Add' next to the Connection field
- 2Select your Zoho data center region from the dropdown
- 3Click 'Continue' to open the Zoho OAuth page
- 4Log in with your Zoho admin credentials
- 5Click 'Accept' to authorize Make
Zoho CRM Trigger > Choose where to start
Set the trigger start point
After saving the trigger configuration, Make will ask 'From which record do you want to start?' Click 'Choose where to start' and select 'From now on'. This tells Make to ignore all existing leads in Zoho and only fire on leads created after you activate the scenario. If you pick 'All' or select a specific date in the past, Make will process every historical lead and spam your Slack channel.
- 1Click 'OK' to save the trigger configuration
- 2Click 'Choose where to start' in the dialog that appears
- 3Select 'From now on'
- 4Click 'OK' to confirm
Canvas > + icon > Slack > Create a Message
Add the Slack module
Click the small '+' icon on the right edge of the Zoho CRM module to add the next step in the chain. The app picker opens again. Search for 'Slack' and select it. From the list of Slack actions, choose 'Create a Message'. This action posts a message to any public or private Slack channel your bot has been added to. You'll configure the channel and message content in the next steps.
- 1Click the '+' icon on the right edge of the Zoho CRM module
- 2Type 'Slack' in the app search bar
- 3Click the Slack app icon
- 4Select 'Create a Message' from the action list
Slack Module > Connection > Add
Connect your Slack workspace
Click 'Add' next to the Connection field in the Slack module. Make will redirect you to Slack's OAuth page. Select the workspace you want to post notifications to and click 'Allow'. Make will request the chat:write and channels:read scopes — both are required. After authorizing, you'll return to the canvas and the Connection field will show your Slack workspace name.
- 1Click 'Add' next to the Connection field in the Slack module
- 2Select your Slack workspace from the dropdown on the Slack OAuth page
- 3Click 'Allow' to grant Make the required permissions
- 4Confirm you are returned to the Make canvas with the connection active
Slack Module > Channel ID > search and select
Select the target Slack channel
In the Slack module configuration, click the Channel ID field. Make will load a searchable list of all channels your bot has access to. Type the name of your target channel — for example, #new-leads or #sales-alerts — and select it from the dropdown. If the channel doesn't appear, your Slack bot hasn't been invited to it yet: go to Slack, open the channel, type /invite @Make, and then return to refresh the list.
- 1Click the Channel ID field
- 2Type the name of your target channel
- 3Select the correct channel from the dropdown list
- 4If missing, go to Slack, run /invite @Make in the channel, then re-open the dropdown
channel: {{channel}}
ts: {{ts}}
Slack Module > Text field
Build the Slack message
Click into the Text field and build your notification message using Zoho CRM field variables from the left-side data panel. Click the field name in the panel to insert it at your cursor position. A complete message should include lead name, company, lead source, phone, email, and assigned owner. Use Slack's mrkdwn formatting — wrap field labels in asterisks for bold, and separate fields with newlines using Shift+Enter. See the pro tip for a formula-based approach that handles blank fields gracefully.
- 1Click into the Text field
- 2Type '*New Lead:* ' then click 'Full Name' from the Zoho CRM data panel to insert the variable
- 3Press Shift+Enter to add a new line
- 4Continue adding fields: Company, Lead Source, Email, Phone, Lead Owner
- 5Wrap each label in asterisks for bold formatting, e.g. '*Company:* '
📬 New entry: {{1.name}}
Email: {{1.email}}
Details: {{1.description}}Canvas > Run once button (bottom left)
Test the scenario with a live lead
Click 'Run once' at the bottom left of the canvas to manually trigger the scenario in test mode. Then go to Zoho CRM and create a test lead with realistic data — use a real-looking name, company, and email address, not '[email protected]'. Return to Make within 60 seconds. The scenario should have executed, and you'll see green checkmarks on both modules showing how many records were processed. Click the Zoho CRM module bubble to inspect the raw data it received.
- 1Click 'Run once' at the bottom left of the canvas
- 2Switch to Zoho CRM in a new tab and create a new lead record
- 3Return to Make within 60 seconds
- 4Click the green number bubble on the Zoho CRM module to inspect the output data
- 5Check your Slack channel for the notification message
Zoho CRM module bubble > Output data panel
Fix field mapping issues from test output
After the test run, click the bubble on the Zoho CRM module and examine every field the trigger returned. Cross-reference this against your Slack message. Common issues: Lead Owner returns a numeric ID instead of a name, Lead Source returns an internal code instead of a display label, and phone numbers include country codes that may need reformatting. If Lead Owner is showing an ID, add a Zoho CRM 'Get a Record' module between the trigger and Slack to look up the owner's name by ID.
- 1Click the bubble on the Zoho CRM trigger module
- 2Scroll through the output fields in the data inspector panel
- 3Check that Full Name, Company, Lead Source, and Email show readable values
- 4If Lead Owner shows a numeric ID, add a 'Get a Record' module to resolve it
- 5Re-test after any mapping corrections
Canvas > Scheduling toggle (bottom left) > Immediately
Activate the scenario
Once the test run looks correct in Slack, click the toggle switch at the bottom left of the canvas to turn the scenario ON. The toggle turns blue. Set the scheduling interval — for real-time behavior, click the clock icon next to the toggle and set it to 'Immediately' (this means Make checks for new Zoho records as frequently as your plan allows, typically every 1-15 minutes depending on your Make tier). Your scenario is now live.
- 1Click the toggle switch at the bottom left to activate the scenario
- 2Click the clock icon next to the toggle
- 3Select 'Immediately' from the scheduling options
- 4Click 'Save' to lock in the schedule
- 5Confirm the toggle is blue and the status shows 'Active'
Paste this formula into the Slack module's Text field to handle blank fields gracefully and format the Created Time into a readable date. In Make's Text field, click the formula icon (fx) and enter this expression — it uses if() to substitute 'Not provided' when a field is empty and formatDate() to convert Zoho's ISO timestamp.
JavaScript — Custom Function{{if(1.Full_Name; 1.Full_Name; 'Unknown Lead')}}▸ Show code
{{if(1.Full_Name; 1.Full_Name; 'Unknown Lead')}}
*New Lead Notification*
━━━━━━━━━━━━━━━━━━━━... expand to see full code
{{if(1.Full_Name; 1.Full_Name; 'Unknown Lead')}}
*New Lead Notification*
━━━━━━━━━━━━━━━━━━━━
*Name:* {{if(1.Full_Name; 1.Full_Name; 'Not provided')}}
*Company:* {{if(1.Company; 1.Company; 'Not provided')}}
*Email:* {{if(1.Email; 1.Email; 'Not provided')}}
*Phone:* {{if(1.Phone; 1.Phone; 'Not provided')}}
*Source:* {{if(1.Lead_Source; replace(1.Lead_Source; '_'; ' '); 'Unknown')}}
*Owner:* {{if(2.Full_Name; 2.Full_Name; 'Unassigned')}}
*Status:* {{if(1.Lead_Status; 1.Lead_Status; 'Not Contacted')}}
*Created:* {{formatDate(1.Created_Time; 'MMM D, YYYY h:mm A'; 'America/New_York')}}
━━━━━━━━━━━━━━━━━━━━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 Make for this if your team wants real-time-ish notifications without writing a single line of code, and you're comfortable with a 1-minute polling delay instead of a true instant push. Make's visual canvas makes it easy to add conditional logic later — routing leads to different Slack channels by source or territory takes about 10 minutes to add with a Router module. The one scenario where you'd skip Make: if your team is already on Zapier and this is literally the only automation you need. The Zapier setup is marginally faster for this exact workflow and you avoid learning a new tool.
The cost math is straightforward. Each scenario run consumes 2 Make operations — one for the Zoho CRM trigger poll and one for the Slack message. If you get 300 new leads per month, that's 600 operations per month. Make's free plan includes 1,000 operations per month, so you're covered up to about 500 leads/month for free. At 1,000 leads/month you'd use 2,000 operations and need the Core plan at $9/month for 10,000 operations. Zapier's equivalent (Zap with 2 steps) costs $19.99/month on the Starter plan for 750 tasks — Make is meaningfully cheaper at this volume.
Zapier has a genuine edge here: its Zoho CRM 'New Lead' trigger is instant via webhook, not polling. That means a Slack notification in under 5 seconds versus Make's 1-minute minimum. If speed is the primary concern, that difference matters. n8n gives you more control over message formatting with JavaScript in a Code node, and self-hosted n8n has no per-operation cost — worth it if you have a developer and 1,000+ leads/month. Power Automate integrates better if your company runs on Microsoft 365 and wants notifications in Teams instead of Slack. Pipedream handles this with a real webhook and clean async code, but it requires someone comfortable with Node.js. Make is still the right call if you want visual logic, no code, and the occasional conditional branch — just accept the 1-minute delay.
Three things you'll run into after setup. First, Zoho CRM's Lead Source field returns underscore-separated keys like 'Web_Site' and 'Cold_Call' — your Slack messages will look sloppy until you add a replace() formula to swap underscores for spaces. Second, if your Zoho account has any automation rules that touch leads on creation (like auto-assignment workflows), Make will sometimes see the lead twice within the same minute and fire two Slack notifications — add a filter checking that Created Time and Modified Time are within 60 seconds of each other to prevent duplicates. Third, Make's Zoho CRM connection will silently expire if the connected Zoho user's password changes or their API token is revoked — check your scenario logs weekly for authentication errors because Make won't email you unless you configure error alert notifications manually.
Ideas for what to build next
- →Route leads to different channels by source — Add a Make Router module after the Zoho CRM trigger. Create separate paths for each Lead Source value — for example, 'Web' leads go to #inbound-leads and 'Cold Call' leads go to #outbound-sales. Each path posts to a different Slack channel with messaging tailored to that source.
- →Add a daily digest for missed or uncontacted leads — Build a second Make scenario that runs on a schedule (e.g., every morning at 8 AM), searches Zoho CRM for leads created in the last 24 hours with status 'Not Contacted', and posts a summary list to Slack. This catches any leads that didn't trigger a real-time notification and gives the team a daily safety net.
- →Update Zoho CRM lead status when a rep reacts to the Slack message — Add a Slack trigger module that watches for a specific emoji reaction (e.g., 👀) on messages in #new-leads. When a rep reacts, use a Zoho CRM 'Update a Record' module to set the lead's status to 'Attempted to Contact' and assign it to the reacting user — closing the loop without leaving Slack.
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