How do you connect a form to Slack and a CRM in Make?

Quick Answer: You can connect a form submission to both a Slack notification and a CRM record using Make.com in a single automated scenario. When someone fills out your form, Make triggers instantly, posts a formatted alert to your chosen Slack channel, and creates or updates a contact record in your CRM, all without any manual data entry.
Form submissions are one of the highest-value moments in any sales or ops workflow. Someone raises their hand, and the clock starts ticking. If your team finds out 40 minutes later because someone checked their email, you have already lost ground.
This tutorial walks you through building a form-to-Slack-to-CRM pipeline in Make.com from scratch. By the end, you will have a working scenario that fires the moment a form is submitted, alerts the right people in Slack, and writes a clean record into your CRM automatically.
What You Need Before You Start
Before opening Make.com, get these four things ready:
- A form tool with a webhook or native Make integration. Typeform, Tally, Fillout, Jotform, and Google Forms all work. Tally and Typeform have the smoothest Make modules.
- A Make.com account. The free plan supports this scenario. Paid plans give you more operations per month if volume is high.
- A Slack workspace where you have permission to post to at least one channel.
- A CRM with a Make module. HubSpot, Pipedrive, and Attio all have strong native Make modules. This tutorial uses HubSpot, but the logic is identical for any CRM. If you are choosing tools around your existing stack, it can help to review specialist B2B SaaS HubSpot agencies or broader B2B SaaS marketing ops agencies.
How the Pipeline Works
The flow has three stages, each mapped to one Make module:
- Trigger: Form submission received via webhook or native module
- Action 1: Post a formatted message to a Slack channel
- Action 2: Create or update a contact record in the CRM
Make runs these in sequence every time the scenario fires. There is no delay between steps unless you add one deliberately.
Step 1: Set Up the Form Trigger in Make
Option A: Using a Native Make Module (Typeform or Tally)
- Open Make.com and click Create a new scenario
- Click the large + icon to add your first module
- Search for your form tool (e.g., Typeform) and select Watch Responses
- Connect your account using OAuth when prompted
- Select the specific form you want to monitor
- Set the trigger to Immediately so it fires on each new submission
Option B: Using a Custom Webhook (Google Forms, Fillout, or any tool)
- Add a Webhooks module as your trigger
- Select Custom Webhook and click Add
- Give it a name and copy the generated webhook URL
- Paste that URL into your form tool's webhook or notification settings
- Submit a test entry on your form so Make receives a sample payload
Make will parse the incoming data automatically. You will see each form field appear as a mappable variable in subsequent modules.
Step 2: Post a Slack Notification
This is where your team gets the real-time alert.
- Click the + after your trigger module
- Search for Slack and select Create a Message
- Connect your Slack workspace via OAuth
- In the Channel field, type the channel name (e.g.,
#new-leadsor#client-intake) - Build your message in the Text field using variables from the form submission
A well-formatted Slack message for a lead form looks like this:
*New lead submitted*
Name: {{name}}
Email: {{email}}
Company: {{company}}
Message: {{message}}
Submitted: {{now}}
Each {{variable}} is a mapped field from your form trigger. Click the field in Make and select the matching form output.
Pro tip: Add a Slack Block Kit layout if you want buttons or structured formatting. For most teams, a plain text message with bold labels is enough and loads faster on mobile.
Step 3: Create or Update a Contact in HubSpot
With the Slack alert handled, the second action writes the data to your CRM.
- Click + after the Slack module
- Search for HubSpot CRM and select Create/Update a Contact
- Connect your HubSpot account
- Map the form fields to HubSpot properties:
- Email (required, used as the deduplication key)
- First Name
- Last Name
- Company Name
- Any custom properties relevant to your form
Using Create/Update rather than Create means if the same email submits again, Make updates the existing record rather than creating a duplicate. This keeps your CRM clean without any extra logic.
- Set the Lead Status or Lifecycle Stage field to match where this contact sits in your funnel (e.g.,
LeadorMarketing Qualified Lead)
If you are using this workflow to support reporting or pipeline attribution, it is worth aligning your field mapping with your wider B2B SaaS benchmarks so lead status and lifecycle stages stay useful later.
Step 4: Test the Full Scenario
- Click Run once in Make (bottom left of the scenario editor)
- Submit a real test entry on your form
- Watch the scenario execute. Each module shows a green tick when it completes successfully.
- Check your Slack channel for the notification
- Check HubSpot (or your CRM) for the new contact record
If a module fails, Make shows a red icon with the error detail. Common issues:
- Slack: Wrong channel name (include the
#symbol or check exact casing) - HubSpot: Missing required field (email is mandatory for contact creation)
- Webhook trigger: Form tool sent data in a different format than expected (re-map the fields)
Step 5: Turn the Scenario On
Once the test passes, click the toggle in the bottom left to switch the scenario from OFF to ON. Make will now watch for new submissions continuously and run the full pipeline automatically.
Set the scheduling interval to Immediately if your plan supports it, or to the shortest interval available on your current plan. For lead capture, anything longer than 15 minutes is too slow.
How to Add a Second CRM Action (Optional)
If you want to also create a Deal or Opportunity in your CRM at the same time as the contact, add a fourth module after the HubSpot contact step:
- Add another HubSpot CRM module
- Select Create a Deal
- Map the contact ID from the previous step into the Associated Contact field
- Set the deal name, pipeline, and stage
This is useful for inbound demo request forms where every submission should become an active deal, not just a contact.
Common Mistakes to Avoid
Not deduplicating contacts. Using a plain Create Contact module instead of Create/Update will generate duplicate records every time a returning contact submits a form. Always use the upsert option.
Mapping the wrong field as the email trigger. If your form has multiple email fields (e.g., a billing email and a contact email), make sure you map the correct one as the primary identifier in your CRM.
Posting to a public channel by default. For sensitive intake data (medical, legal, financial), route Slack notifications to a private channel with restricted membership. Do not post personal data to general channels.
Leaving the scenario on the free plan with high form volume. Make's free plan gives you 1,000 operations per month. Each scenario run uses 3 operations (one per module). At 300+ submissions per month, upgrade to a paid plan.
What This Pipeline Replaces
Before automation, this workflow typically looked like:
- Form submission emails land in a shared inbox
- Someone manually copies data into the CRM
- Someone else sends a Slack message to the team
- Data entry errors accumulate
- Response time depends on who checks email first
The Make scenario replaces all three manual steps and runs in under 5 seconds from submission to CRM record creation.
FAQs
What is the best way to connect a form to Slack and a CRM at the same time?
Make.com is the most direct tool for this. You build a single scenario with three modules: a form trigger, a Slack action, and a CRM action. Each submission fires all three steps in sequence. No code is required, and the setup takes under 30 minutes for most form and CRM combinations.
Does Make.com work with Google Forms for this kind of automation?
Yes, but Google Forms does not have a native Make trigger, so you use Make's custom webhook module instead. You will need a third-party tool like Zapier's Google Forms webhook add-on, or configure a Google Apps Script to POST form data to your Make webhook URL on submission.
Can I send the Slack notification to different channels based on form answers?
Yes. Add a Router module after the form trigger and create separate paths for each condition. For example, submissions where the budget field is above £10,000 go to #enterprise-leads, and all others go to #inbound-leads. Each path then has its own Slack and CRM modules with different settings.
What CRMs does Make.com support natively for this workflow?
Make has native modules for HubSpot, Pipedrive, Salesforce, Attio, Zoho CRM, and several others. If your CRM is not listed, you can use Make's HTTP module to call the CRM's REST API directly, which works for any CRM with an API.
Is this workflow suitable for client intake forms, not just lead gen?
Absolutely. The same three-module structure works for client onboarding, support ticket intake, job applications, and event registrations. The only difference is which CRM object you create (contact, ticket, deal, or a custom object) and which Slack channel receives the alert.
Frequently Asked Questions
How do I build a form-to-Slack-to-CRM pipeline in Make.com? You build a single Make.com scenario with a form trigger, a Slack message step, and a CRM create or update step. When a form is submitted, the scenario runs automatically, sends the alert to Slack, and stores the submission in your CRM without manual data entry.
What is the advantage of using Create/Update instead of Create in HubSpot? Create/Update prevents duplicate contact records by matching submissions on a unique field such as email. If the same person submits the form again, Make updates the existing record instead of creating a new one. This keeps the CRM cleaner and makes reporting more accurate.
Can I use Make.com with Google Forms and a private Slack channel? Yes. Google Forms can send submission data to Make through a custom webhook or script, and Slack can post to any channel you have permission to use, including private channels. This setup is common for sensitive intake workflows because it keeps data routing controlled.
Find a B2B SaaS Expert
We've collected a directory of B2B SaaS experts and agencies that we've reviewed and categorised based on service and specialism for your review.


