Our verdict: CRM for every lead, email list only with consent
A lead is someone who asked you something. They belong in your CRM so a person follows up. They belong on your email list only if they agreed to receive marketing. MailerLite's own guidance is that every subscriber added to your account must have given consent to receive marketing emails [1]. Build the automation so that rule is enforced by a filter, not by memory.
Make has an official template close to this design, sending new Facebook Lead Ads leads to MailerLite and HubSpot CRM; the page notes the Facebook form must collect at least an email address [2]. The steps below adapt the idea for a website form.
The workflow
- Before you start: Make's HubSpot CRM documentation says a Super Admin of your HubSpot account must pre-approve the Make app, and scopes cannot be removed from a connection once added [3].
- Trigger: the form posts to a Make webhook (instant, no polling). Include a hidden source field, such as page URL or campaign.
- Clean: trim and lowercase the email; drop obvious test submissions with a filter.
- CRM: HubSpot CRM Create or Update a Contact [3]. Map name, email, company, message and source.
- Consent filter: continue only if the marketing checkbox is ticked.
- Email list: MailerLite Create/Update a Subscriber [4], with the consent time in opted_in_at and the interest group in groups [5].
- Notify: optionally post the lead to Slack or email for fast follow-up.
- Errors: an error handler route that alerts a person if either app rejects the record.
Duplicates: why update-or-create beats search-then-create
Make's HubSpot CRM app lists Create a Contact, Create or Update a Contact, Search for Contacts, Update a Contact and Get a Contact [3]. Using Create or Update means one module run per lead instead of a search plus a create, which is both cheaper and avoids the case where two quick submissions both search, find nothing and both create. Make's HubSpot page does not describe how matching works, so test it with the same email twice and confirm one contact results.
On the email side, MailerLite's API documents create as an upsert: an existing subscriber is updated with new values, returning 200 instead of 201 [5]. Fields and groups you omit are left as they are [5]. Do not set the resubscribe flag to true from a lead form; an earlier unsubscribe should stand unless the person clearly opts in again [5].
Consent fields to capture
If you use double opt-in, MailerLite's API accepts an unconfirmed status [5]; send new people as unconfirmed and let the confirmation process activate them. Our opt-in guide compares the trade-off.
| Form field | Goes to | Note |
|---|---|---|
| Email (required) | CRM and email list | Required by MailerLite's API [5] |
| Enquiry message | CRM only | Not needed in the email tool |
| Marketing consent checkbox | Make filter; CRM property | Unticked by default |
| Consent timestamp | MailerLite opted_in_at [5] | Format yyyy-MM-dd HH:mm:ss |
| Source page / campaign | CRM and a MailerLite field | Lets you see which pages produce leads |
| Interest (optional) | MailerLite groups [5] | Use for a relevant welcome sequence |
Credits and tasks per month
Make counts each module run per bundle [6]; most actions are 1 credit and error handlers and routers are free [7]. Pabbly counts only actions on external apps; triggers and internal steps such as Filter, Router and Formatter are free [8]. Assumptions, labeled: 200 leads a month, 120 of them with marketing consent, no Slack step.
| Step | Make credits | Pabbly tasks |
|---|---|---|
| Webhook trigger (200 leads) | 200 | 0 (triggers free) [8] |
| HubSpot create or update (200) | 200 | 200 |
| Consent filter | 0 (not a module) | 0 (Filter free) [8] |
| MailerLite create/update (120) | 120 | 120 |
| Monthly total | About 520 credits | About 320 tasks |
| Plan that fits | Make Free, 1,000 credits [7] | Pabbly Standard, $19/month or $194/year [8] |
Make or Pabbly for this job
At small volumes, Make's Free plan usually covers this workflow and Make documents the exact HubSpot and MailerLite modules used here [3][4]. Pabbly becomes attractive when lead volume is large, because a 2-task lead on Standard's 10,000 tasks [8] covers about 5,000 leads a month for a fixed $19 monthly fee. We have not built the Pabbly version; confirm that its HubSpot and MailerLite actions offer update-or-create behaviour before switching.
Whichever you choose, keep the CRM as the source of truth for sales follow-up, test the duplicate and no-consent cases with your own email, and check failed runs weekly.
Questions before you decide
How do I avoid duplicate contacts in the CRM?
Use an update-or-create step keyed on email rather than a create-only step. Make's HubSpot CRM app lists Create or Update a Contact alongside Create a Contact. In MailerLite, the API's create call updates the subscriber if the email already exists.
Should every lead go to my email list?
No. Add a filter so only leads who ticked a marketing consent box reach the email tool. MailerLite asks that every subscriber added to an account has given consent to receive marketing emails. A sales enquiry alone is not consent to a newsletter.
How many leads fit in the free plans?
At about 3 Make credits per lead, Make Free's 1,000 monthly credits cover roughly 330 leads if nothing else runs. Pabbly Connect Free's 100 tasks cover about 50 leads at 2 tasks each.
Sources & verification
Product details and prices can change. Check the linked provider before buying.
- MailerLite Help: How to import subscribers Accessed 29 Oct 2026
- Make template: Facebook Lead Ads lead to MailerLite and HubSpot CRM Accessed 29 Oct 2026
- Make apps documentation: HubSpot CRM Accessed 29 Oct 2026
- Make apps documentation: MailerLite Accessed 29 Oct 2026
- MailerLite API: Subscribers (create/upsert) Accessed 29 Oct 2026
- Make Help Center: Operations Accessed 29 Oct 2026
- Make pricing and billing FAQ Accessed 29 Oct 2026
- Pabbly Connect plans and task counting (USD) Accessed 29 Oct 2026
Sources link directly to providers. Product buttons may use separately labeled affiliate links. Read our disclosure.
