Build a lead-to-CRM automation with Make in an afternoon
Wire a new lead into your CRM and fire an instant text and email, automatically. A speed-to-lead build with Make and GoHighLevel, step by step.
Some links below are partner links. We may earn a commission at no extra cost to you. How we make money.
By the end of this build you will have leads flowing from a form straight into your CRM automatically. A new lead from a web form or a lead ad lands, gets cleaned and tagged by where it came from, drops into your CRM as a contact, and triggers an instant text and email back to that person. The stack is Make as the glue and GoHighLevel as the CRM that sends the follow-up. Budget an afternoon to set it up, then it runs on its own.
Speed is the whole game here. A lead who hears back in the first few minutes is far more likely to book than one who waits an hour. Most small teams lose that window because someone has to notice the lead, open the CRM, and type a reply. This build removes the human from that loop.
What you'll build
One scenario in Make and one workflow in GoHighLevel that hand off to each other:
- A webhook that catches every new lead the moment it submits.
- A cleaning and tagging step in Make, so a phone number from a Facebook lead ad and one from your site form both arrive in the same shape, labeled by source.
- A push into GoHighLevel that creates or updates the contact.
- A follow-up workflow that fires an SMS and an email back to the lead within seconds.
The source can be anything that sends data: a website contact form, a landing page, a Facebook or Instagram lead ad, a Typeform. As long as it can send the submission to a URL, Make can catch it. For where these high-intent leads come from in the first place, the branded-demand build covers the capture moment.
Stack
Three tools. You build on the first two, and the third is an interchangeable alternative for the glue layer.
The stack
- Make is the automation glue. You build a visual scenario that runs every time a lead arrives. It prices by operations, which changes how cost scales as volume climbs.
- GoHighLevel is the CRM and the follow-up engine. It holds the contact record, the tags, and the workflow that sends the text and email.
- Zapier is an alternative for the glue layer if you would rather build there. The shape of the build is identical.
You need an account on both Make and GoHighLevel. Plan pricing on each moves often, so check the current rate on the provider's own pricing page before you commit. Checked June 2026.
Steps
Build the GoHighLevel side first, because you need its webhook URL before the Make scenario has anywhere to send the lead.
The build, in order
Create the follow-up workflow in GoHighLevel
Add the inbound webhook trigger
Capture a sample so GoHighLevel learns the fields
Add the contact and follow-up actions
Build the catching scenario in Make
Listen for a real lead to learn its structure
Clean and tag the lead
Push the lead into GoHighLevel
Turn it on
Once both sides are live, point your real forms and lead ads at the Make webhook URL. Where you paste it depends on the source: a form builder has a webhook or integration field, a Facebook lead ad needs the URL added through a connector, and a landing page form can POST to it directly.
The part that breaks
The order is the trap. People try to map the contact fields in GoHighLevel before any data has reached it, so the dropdowns are blank. The same thing happens in Make if you skip Re-determine data structure and the webhook has never received a payload. Both tools are reactive. They learn the shape of a lead by catching one, not by you describing it.
So the working order is always the same. Open the listener (the GoHighLevel webhook trigger and the Make webhook module), send a single real submission through, then go back and map the fields once they appear. If a field still shows up empty, the test payload did not include it, so send another with that field filled.
The second thing that breaks budgets is firing on junk. A blank or bot submission still triggers the whole chain and still sends a text. Add a filter in Make right after the webhook that only continues when an email or phone exists. It costs nothing and stops your follow-up going out to garbage.
Copy this
A sample JSON body for the HTTP > Make a request module that pushes the cleaned lead into GoHighLevel. Replace the values in braces with your mapped Make variables:
{
"first_name": "{{name}}",
"email": "{{email_lowercased}}",
"phone": "{{phone_trimmed}}",
"source": "{{lead_source}}",
"tags": ["new-lead", "{{lead_source}}"],
"consent": true
}
Keep the field names consistent with what you map inside the GoHighLevel trigger. The "source" value is what lets your follow-up read differently for a paid lead ad versus an organic form fill. The "consent" flag matters: only text and email people who agreed to hear from you, or your messages land in spam and your sender reputation suffers. The email deliverability build covers why that reputation is worth protecting.
Upgrade path
Once the core loop runs, layer on:
- A second follow-up step in GoHighLevel that waits an hour, checks if the lead replied, and sends a nudge if not. Speed wins the first reply. Persistence wins the booking.
- Enrichment in Make before the push, so a lead arrives with their company or location already attached. Add an HTTP call to a lookup service between the cleaning step and the GoHighLevel push.
- Routing by source, so a lead from a paid ad goes to one workflow and an organic form fill to another. The "source" tag you set already makes this a single branch away.
If your forms live in an unusual place that Make struggles to catch, Zapier covers more obscure apps and follows the same pattern. For the paid-traffic side that feeds this build, the Meta Advantage+ build shows how to keep lead ads sending you qualified people, and the automation hub tracks the rest of the no-code stack.
Your move this week
For the next build, the AI recommendations build shows how to turn those follow-ups and reviews into the signal that gets you recommended by the assistants people now ask first.
Frequently asked questions
How fast does this automation respond to a new lead?
Make runs the scenario the moment the webhook receives a lead, usually within a few seconds. GoHighLevel then sends the SMS and email instantly through its workflow, so a new lead gets a reply in well under a minute instead of hours later.
Do I need to know how to code to build this?
No. Make is a no-code visual builder where you drag modules onto a canvas and connect them. GoHighLevel workflows are built the same way, by adding a trigger and actions from menus. The only thing you paste in is a webhook URL and a sample data structure.
Can I use Zapier instead of Make for this build?
Yes. Zapier follows the same pattern: a webhook or form trigger, a formatting step, then a Create Contact and tag action in your CRM. Make prices by operations rather than by task, which differs at higher volume, and Zapier has wider app coverage if your form lives somewhere unusual.
What happens if the same lead submits the form twice?
GoHighLevel matches incoming contacts by email or phone, so a second submission updates the existing contact instead of creating a duplicate. You can also add a filter in Make to skip rows that are missing an email or phone before they ever reach the CRM.
About Runbook
AI tools and automation builds for marketers. What to use, how to wire it, and the workflow to copy this week. How we work
// keep_reading
Related builds
> Build an AI-Overview-proof traffic system in a week
Build an AI-Overview-proof traffic system in a week
Google answers most informational searches on the page now. Build the branded, local and buying-intent setup that still sends clicks, step by step.
The move. Stop building for clicks that are vanishing. Build a system that owns your branded search, ranks buying-intent pages, and wins local on Maps.
> Set up a default Advantage+ campaign that does not leak
Set up a default Advantage+ campaign that does not leak
Meta merged manual and Advantage+ into one flow, so AI sets targeting, placements and budget by default. Build the creative, exclusion and capture setup around it.
The move. AI now owns targeting and budget. Build around the two levers you still control: varied creative and the right exclusions, then capture the lead before it cools.
> Use the 3 Performance Max controls Google quietly returned
Use the 3 Performance Max controls Google quietly returned
Performance Max used to be a black box. In 2026 you can see search terms, block placements account-wide, and add negatives. Set up all three this week.
The move. Turn on the three controls Google added: campaign negatives, account-level placement exclusions, and the search terms report. Then fence off your brand spend.