Automating Lead Follow-Up Without Writing Code: Forms, Orchestration, and a Local AI Gateway
Every small team eventually builds the same fragile process. A form submission arrives, someone pastes it into a sheet, reads the requirement, decides whether it deserves an immediate answer, writes one, and adds a remin
Every small team eventually builds the same fragile process. A form submission arrives, someone pastes it into a sheet, reads the requirement, decides whether it deserves an immediate answer, writes one, and adds a reminder to the task board. The work is repetitive and the value sits entirely in the judgement step, which is exactly the part that gets rushed.
Here is a build that keeps the judgement and removes the transport. It uses a form tool, an orchestration engine, a local AI gateway, and two destinations: a CRM and a task board.
Start with a week of measurement
Before configuring anything, log a week of repeated operations and the minutes they consume. Then answer three questions. Which tasks repeat most often? Which mistakes lose a customer, for example a high-intent enquiry left unanswered for two days? Which process has standardised input and a failure you can still recover from?
Lead follow-up wins on all three for most small businesses. A submission should be classified, recorded and announced in seconds.
What rules alone cannot do
Rules-based automation handles transport well. A form arrives, a thank-you email goes out. It cannot read the requirement field, because that field is free text and the difference between a serious buyer and a mass mailer lives inside it.
| Dimension | Rules-based automation | Workflow with a model in the loop |
|---|---|---|
| Trigger | Form or email arrives | Form or email arrives |
| Information handling | Moves fixed fields as-is | Summarises, fixes typos, returns structured data |
| Decision logic | Fixed conditionals | Semantic reading, intent grading, urgency signals |
| Content generation | Template concatenation | A reply written around the actual requirement |
| Good fit | Archiving invoices, backups | Screening enquiries, classifying requests |
Keep one boundary: refunds above a threshold, contract commitments and legal wording stay with a human.
The parts, and why the model layer decides everything
Collection. Tally behaves like a document editor, supports conditional jumps, has a complete free plan and pushes standard Webhooks. Typeform reads better and costs more. Google Forms is free and stable with less integration flexibility.
Orchestration. Make has the clearest node editor for beginners. Zapier has the largest app directory and the highest cost for advanced multi-step flows. n8n is open source, self-hostable, and does not meter node executions on a paid ladder.
The model layer is where these projects stall. Putting each vendor's API key into a cloud automation tool produces an unpredictable bill, protocol mismatches, and no sane way to mix subscription accounts with API access.
ServBay takes this layer locally. It is an AI development foundation that also supplies the runtime when n8n or PostgreSQL live on your own machine.
- Its AI gateway exposes one local endpoint in front of Anthropic, OpenAI, Gemini and OpenAI-compatible providers.
- Protocol conversion runs both ways, so moving a task from an expensive model to a cheap one is a mapping change in the gateway rather than an edit across every node.
- Virtual keys are per project with quota limits and channel priority. Real API keys stay encrypted on the machine, so exporting a workflow does not leak them and a retry loop does not produce a surprise invoice.
Destinations. HubSpot's free plan covers early lead records. Airtable adds relational views on top of spreadsheet ergonomics. Pipedrive organises around deal stages. Notion holds the task board and Google Sheets remains the simplest raw backup.
The six stages
β
βββββββββββββββββββ¬ββββββββββββββββββ
βΌ βΌ βΌ
[Write to CRM] [Create Notion task] [Generate email draft]
β
βΌ
[Human review and send]
Wiring it up
Create the Tally form with four fields: name, email, estimated budget as a single choice, and the requirement as long text. Enable the Webhook and point it at the orchestration endpoint.
In n8n, add a Webhook trigger and start listening. Submit a test entry and confirm the raw fields arrive.
Add an HTTP request node behind the trigger. The endpoint is the local domain or IP your gateway exposes; authentication is the virtual key created for this project; the model field takes the alias you mapped. Because conversion happens in the gateway, the node sends standard OpenAI-shaped messages no matter which vendor answers.
Split the parse result into two writes. An Airtable node appends a row with name, email, budget, the extracted pain point and the intent level. A Notion node creates a page titled with the customer name and urgency, pastes the summary and sets the status to awaiting first review.
Finally add an email node and choose create draft, never send. Put the generated reply in the draft body and push a message with the Notion link to whoever reviews leads.
The prompt
A prompt inside a workflow needs a stable output shape, explicit criteria and no pleasantries.
γAnalysis and decision rulesγ
1. Intent level:
- High: budget above 5,000 and a concrete product, pain point or launch date.
- Medium: a specific request, but budget unclear or still an enquiry.
- Low: unrelated content, job applications, advertising, meaningless characters.
2. Extract the core pain point in 30 characters or fewer.
3. Draft a reply: confirm receipt, outline a solution, propose a 15-minute call.
Leave the draft empty when intent is low.
γOutput requirementsγ
Return JSON only:
{
"client_name": "customer name",
"intent_level": "high / medium / low",
"urgent": true,
"needs_summary": "pain point summary",
"email_draft": "reply body",
"need_manual_review": false
}
Three habits that keep it safe
Keep human review on quotations with discount terms, on submissions expressing serious dissatisfaction, and on anything graded low or anomalous.
Keep sensitive data local. The real API keys never leave the machine and the workflow only holds a quota-limited virtual key; when data cannot leave the network at all, route the gateway to a local open-source model.
Cap the damage from loops. Set a daily call limit in the gateway and add an error branch to the parsing node so a malformed response pushes the raw submission to the team channel instead of vanishing.
What to measure
Time saved per week on copying, recording and first replies, usually three to eight hours for one operations person. Time from submission to a tailored reply, which should fall from hours to minutes. Completeness of the CRM and the task board, where human omissions approach zero. And the monthly cost of forms, orchestration and tokens, which stays in the price range of a few coffees for a few hundred leads once basic extraction is mapped to a cheaper model.
Start with the single most annoying mechanical action in the business. One form, one processing node, one test entry running end to end. Let it run for two weeks, adjust from real submissions, then copy the pattern to follow-ups, reporting and content distribution.
Originally published by Dev.to WebDev. Aggregated on AIWithGhost for educational purposes β full credit and traffic to the original publisher.

