Before you start
- A Salesforce edition with API access. Salesforce Help's article "Salesforce editions with API access" names Enterprise, Unlimited, Developer and Performance, and Professional only with API access bought as an add-on.
- A Make account, which is free, or a paid Zapier plan.
- Permission to create Lead records.
Steps
- In Make, create a new scenario, add the Webhooks module, choose Custom webhook, create one and copy its address. Make's free plan includes webhooks; Zapier's does not.
- In your dashboard, open Integrations, find "Zapier, Make and CRMs" and paste the address in. Save it, then press "Send a test lead".
- Go back to Make and it will have learned the shape of a lead. If it's still waiting, press "Send a test lead" again.
- Add a Salesforce module, choose "Create a record" and pick the Lead object.
- Map Last Name to lead.name and Company to your business name. Salesforce requires both and rejects the record without them.
- Map Phone to lead.phone, Email to lead.email, and put lead.serviceType, lead.addressOrArea and lead.preferredTime into Description.
- Set Lead Source to something you'll recognize later, such as Website Chat.
- Switch the scenario on. A scenario that's saved but switched off receives nothing, which is the step almost everyone forgets.
- Look in your CRM for a contact named "Test lead" on +44 7700 900000, then delete it. Then leave a real inquiry on your own website and watch that arrive too.
Platform steps checked on October 1, 2026 against Make: Salesforce CRM integration
Good to know
- Company is required on every Salesforce Lead, and a member of the public asking about their furnace doesn't have one. Use your own business name: it's always present, and it tells you which of your websites the lead came from.
- Last Name is also required. If a customer leaves a phone number without a name, set a fallback of Unknown rather than letting the record fail.
- Your Salesforce admin may have added required fields of their own. Those break this in exactly the same way, and the Integrations page will tell you leads aren't being accepted.
- Each lead also says where it came from. source.page is the page it was asked from, source.referrer the site that sent the visitor and source.utm.campaign the campaign tag on your link. lead.qualifying holds the answers to your own questions, and lead.serviceArea says inside, outside or unknown if you've listed the places you serve. Map any of them to a custom field.
- The test lead is marked type "test" and a real one "lead.created". That's useful for keeping tests out of a live CRM, but if you add that filter before testing, the test button will look broken. Test first, filter afterwards.
- A lead that's refused is retried after 5, 10, 20, 40 and 80 minutes. Fix the problem within about two and a half hours and the lead still arrives on its own.
Can't edit your website?
Every assistant has its own chat page. Link to it from your website's menu, your Google Business Profile, social media or email signature. Or use "Email this to my web person" on your Widget page to send the code to whoever runs your site.
Questions
Do I need an AppExchange package?
No. This uses Make's or Zapier's Salesforce connector, authorized by signing in to Salesforce. Nothing is installed in your org and there's no security review. What we store and who receives it is on our security page.
Why do leads keep failing?
Almost always a required field with nothing in it. Last Name and Company are required by Salesforce itself, and your admin may have added more. Open the scenario's history and it will name the field.
Can I create a Contact instead of a Lead?
Yes, though Contacts usually need an Account to attach to, which makes it more work. Most people send chat inquiries to Lead and convert the ones that go somewhere.