Automating lead follow-up: website form to CRM to email
The automation itself is simple. What decides whether it helps is the duplicate rule, the stop condition and the consent record, so design those first.
The process, step by step
- Catch the submission. The form (or a webhook from it) starts the run. Keep the submission's own ID so a retry cannot create a second lead.
- Clean the input. Trim and lower-case the email; drop empty or obviously invalid submissions before they reach the CRM.
- Find or create one contact. Look the person up by email; update if found, create if not. One person must never become two records.
- Create the follow-up. A deal or a task with a named owner and a due date, linked to the contact. Without an owner the automation only moves the pile.
- Send the first reply. A plain acknowledgement from a real mailbox. Start a longer sequence only if the person agreed to receive one (see the consent section).
- Stop when the conversation starts. A reply, a booked call, a deal moving to a later stage, an unsubscribe or a bounce each end the sequence. Notify the owner.
Steps 3 and 6 are where most of the value is: step 3 prevents duplicates and step 6 prevents the embarrassing follow-up that arrives after the deal was already won.
Duplicates: decide the key before you build
The usual key is the email address. What each system does with it is not the same.
| System | What it states |
|---|---|
| HubSpot | Looks for a matching value in the Email property. A form submitted with an existing email adds the information to the existing contact. |
| ActiveCampaign | Its API's contact-sync call, unlike plain contact creation, never fails with a duplicate-email error: it returns one status for an updated contact and another for a created one. |
| Pipedrive | Its help page says duplicates are identified by name together with a phone number, an email or an organisation. Merging is a manual feature. |
| Zapier search steps | A search step has a "Create if it doesn't exist yet" option; by default a search that finds nothing halts the run, unless you mark it as successful when nothing is found. |
| Platform | Pipedrive | HubSpot | ActiveCampaign |
|---|---|---|---|
| Zapier | Find or Create Person; Create, Update and Find Persons | Trigger: New Form Submission. Create or Update Contact; Find or Create Contact | Create or Update Contact; Find Contact; Add Existing Contact to Automation |
| Make | Create, Update and Search Persons as separate modules, so find-then-create needs a search module and a router | Watch Submissions for a Form; Create or Update a Contact; Search for Contacts | Create or Update a Contact; Add a Contact to an Automation |
| n8n | Person: create, update, search, get; deal create, search, update | Create/Update a contact; search contacts; submit data to a form. The HubSpot trigger node lists no form-submission event | Contact create, update, get, delete; add or remove from a list; no automation operation is listed |
What follows from the table. A native create-or-update operation exists for HubSpot on all three platforms and for ActiveCampaign on Zapier and Make. Where only separate create and search operations exist (Pipedrive on Make and n8n), build the find-then-create branch yourself and test it with the same email twice. On n8n, a HubSpot form-submission trigger is not listed in the documentation read for this guide; a webhook from the form is the way in.
Sources: [5], [6], [7], [8], [9], [10], [11], [12], [13], [14]
Follow-up and the stop condition
HubSpot's documentation lists a contact replying to a sequence email, and booking a meeting through a meetings link, among the events that unenrol the contact from a sequence. HubSpot's article says the reply and meeting events can be switched off in the sequence's Automate tab, so check those switches. Pipedrive's help page on automated campaigns says they require the Campaigns add-on and lists the plans that can use it; Pipedrive's plan names differ between its help pages and its pricing page, so check eligibility on the live pricing page. The stop rules for ActiveCampaign automations were not confirmed for this guide.
Whatever the tool, write the stop rule down and test it: send yourself a lead, reply to the first email, and check that no second email arrives. Test a bounce and an unsubscribe the same way. A sequence that cannot be stopped from the CRM should not be started from it.
Consent and data protection
Replying to someone who wrote to you is not the same as adding them to a marketing sequence. Keep the first reply to the enquiry itself, and start a longer sequence only where the person agreed to it or where you have checked that the rules in your market allow it. What the regulators' own pages say:
- UK. The ICO says the electronic-mail marketing rule does not apply to corporate subscribers, but that sole traders and some partnerships are individual subscribers who must be given the chance to opt out. The ICO states this guidance is under review. It also says the right to object to direct marketing is absolute.
- EU. The EDPB's guide for small businesses says an objection to direct marketing must lead to the immediate end of that processing.
- US. The FTC's CAN-SPAM guide says an opt-out request must be honoured within 10 business days, that a message must include a valid physical postal address, and that the law makes no exception for business-to-business email.
Practical rules that follow, which are editorial advice rather than a legal reading: record where and when each person agreed; make the unsubscribe work in the CRM and in the automation tool at the same time; never email a person who has objected; and take legal advice for your own markets, because EU member-state rules for business email were not reviewed here.
What it costs to run: the same workflow on Make, Zapier and n8n
The workflow: an instant (webhook) trigger, then five steps (clean and check, find or create the contact, create the deal or task, send the first email, notify the owner). Each run is one lead. Counted in each platform's own unit: Make counts a credit for each module run and, as the calculator assumes, one for the instant trigger; Zapier counts each successful action as a task and does not charge for the trigger or for Filter, Paths, Formatter and Delay steps (the table assumes five counted tasks per lead; if the cleaning step is a Formatter or Filter step it is four, and the plan is the same at both counts); n8n counts one execution per whole run. The calculator and the two guides on pricing units and one worked workload explain the rules and their caveats. Open this workflow in the calculator: 200 leads a month or 1,000 leads a month.
| Volume | Make (credits) | n8n (executions) | Zapier (tasks) |
|---|---|---|---|
| 200 leads a month | 1,200 credits · annual: Core, $9/mo · monthly: Core, $10.59/mo | 200 executions · annual: Cloud Starter, €20/mo · monthly: Cloud Starter, €24/mo | 1,000 tasks · annual: Professional, $39/mo · monthly: Professional, $58.50/mo |
| 1,000 leads a month | 6,000 credits · annual: Core, $9/mo · monthly: Core, $10.59/mo | 1,000 executions · annual: Cloud Starter, €20/mo · monthly: Cloud Starter, €24/mo | 5,000 tasks · annual: Professional, $89/mo · monthly: Professional, $133.50/mo |
The count is small enough that each platform's smaller published plans cover it, and the prices differ because the plan sizes and the unit rules differ. The input that changes the answer most is the trigger. If your form tool cannot send a webhook and the platform has to poll for new submissions every 5 minutes, Make's help page counts each check of a polling trigger as one operation (its example says one per check; it does not say what happens when a check finds nothing, and the calculator assumes a credit per check): on that assumption the 200-lead workflow becomes 9,640 credits a month on Make (Core, $9/mo), against 1,200 with an instant trigger. Zapier does not charge tasks for polling, and on n8n a polling trigger counts only when it finds new data (a schedule trigger counts every firing).
Which platform fits which situation
- Your form can send a webhook and volume is small. All three have a published plan that covers it (see the table), so the decision rests on the CRM connection and on who maintains the workflow.
- You use HubSpot or ActiveCampaign and want the least custom work. Zapier and Make list a native create-or-update contact operation for both; n8n lists it for HubSpot but no automation operation for ActiveCampaign.
- You use Pipedrive. Zapier lists a find-or-create person action; on Make and n8n you build the find-then-create branch.
- You must poll rather than receive a webhook. Price the polling on Make before you choose; see the paragraph above.
Sources: [5], [6], [7], [8], [9], [10], [11], [12], [14], [21]
Whoever will own the workflow should choose among the options that fit: pick the tool that person can read and fix, not the cheapest line in a table.
Editorial opinion
Three ways to connect a form to a CRM
| Route | Fits when | Cost shape | Main risk |
|---|---|---|---|
| The CRM's own form or embed | Your site can embed it and you use one CRM | Part of the CRM plan you already pay for; check which plan includes it | Tied to one CRM; limited logic |
| A connector tool (Make, Zapier, n8n) | The form can send a webhook, or logic spans several systems | A subscription by credits, tasks or executions, priced in the table above | Units differ by platform; polling and loops add usage |
| Custom webhook or API code | Unusual logic, many systems or your own application | Developer time, hosting and maintenance; no vendor price | Maintenance, error handling and security fall on you |
Editorial opinion
Typical mistakes and how to avoid them
| Mistake | What happens | How to avoid it |
|---|---|---|
| No duplicate key | The same person becomes several records | Decide the key (usually email) and test with the same email twice |
| A form field is renamed | The mapping to the CRM breaks silently | Re-test after every form edit |
| Test submissions go to the live CRM | Junk records and false reports | Use a test tag or a sandbox and delete test records |
| Consent is not stored | You cannot show what the person agreed to | Store the consent text, time and form with the record |
| Source and campaign data are dropped | You cannot tell which page or ad produced a lead | Pass source fields through to the CRM |
| No alert when a run fails | Leads vanish without anyone noticing | Add an error notification to the workflow |
| Spam submissions | Junk records and wasted follow-up | Add spam protection to the form before you connect it |
Editorial opinion
All three routes work, and the guide above gives the facts for each connector. The sections above are enough to build any of them yourself.
Editorial opinion
Build checklist
- Submit the same email twice, once in capitals: one contact must result.
- Submit an empty email and a malformed one: nothing must reach the CRM.
- Turn the CRM off for a minute: the run must fail visibly and tell a person, not vanish.
- Reply to the first email: the sequence must stop.
- Unsubscribe: the person must be suppressed in both the CRM and the automation tool.
- Check the owner and due date on the created deal or task.
- Write down who owns the workflow, and what they do when it fails.
What this guide does not cover
- Testing. No platform or CRM was used for this guide.
- Email deliverability. Sender reputation, authentication and content are outside it.
- CRM seat prices. See choosing a CRM for a small B2B service business.
- Legal advice. The regulator pages above are pointers, not a reading of your obligations.
- Tax and regional prices. None of the pricing pages states how tax is treated.
Frequently asked questions
- Do I need a CRM to automate follow-up?
No. A form can send a notification and an acknowledgement without one. A CRM earns its place when you need one record per person, an owner for each lead and a history that survives staff changes.
- What happens if the same person submits twice?
It depends on the key you choose and on the system. HubSpot adds the new information to the existing contact when the email matches; ActiveCampaign's contact-sync call updates instead of failing; on Pipedrive you build the lookup yourself. Test it with the same email twice before you go live.
- Which platform is cheapest for this?
That depends on your volume, your trigger and the CRM. The table shows the smallest published plan for two volumes; it is a starting point, and the calculator lets you change every input.
Products in this guide
Make
Visual automation platform for building multi-step scenarios across apps and AI.
Free plan
Verified — An editor checked this value against the official source on the date shown.
Zapier
Cloud workflow automation platform connecting apps through multi-step Zaps, Tables and Forms.
Free plan
Verified — An editor checked this value against the official source on the date shown.
n8n Cloud
Workflow automation with code-friendly nodes and AI agents, available hosted or self-hosted.
€24/mo
Verified — An editor checked this value against the official source on the date shown.
Sources
- Zapier: Pipedrive integrations
- Zapier: HubSpot integrations
- Zapier: ActiveCampaign integrations
- Make: Pipedrive app modules
- Make: HubSpot CRM app modules
- Make: ActiveCampaign app modules
- n8n docs: Pipedrive node
- n8n docs: HubSpot node
- n8n docs: HubSpot Trigger node
- n8n docs: ActiveCampaign node
- HubSpot knowledge base: deduplication of records
- ActiveCampaign API: sync a contact's data
- Pipedrive help: how duplicates are identified
- Zapier help: search for existing data in Zaps
- HubSpot knowledge base: unenroll from a sequence
- Pipedrive help: automated campaigns
- ICO: business-to-business marketing
- ICO: right to object
- EDPB SME guide: respect individuals' rights
- FTC: CAN-SPAM Act compliance guide for business
- Make pricing
- Make help: operations
- n8n pricing
- n8n docs: understand executions
- Zapier pricing
- Zapier help: how task usage is measured
Sources
Nikita Latyshev is the founder of LATYNEX Labs, an independent publication about business software and infrastructure. LATYNEX Labs is published by Latynex Trade OÜ, Estonia. How the site checks facts, handles sponsorship and earns money is described on its methodology, editorial policy and affiliate disclosure pages.