AI Automation · Lead Operations

How I Built a $5/Month AI Lead Bot That Replaced a $99/Month SaaS Tool

2025
10 min read
How I Built a $5/Month AI Lead Bot That Replaced a $99/Month SaaS Tool

Project: Worksy HRMS - Automated Lead Qualification with n8n
Role: Automation Engineer and AI Workflow Design
Timeline: Q3 2025

At Worksy, lead qualification used to be a manual, slow process. Here is how it worked:

  1. A user fills out a demo request form
  2. Sharifah or Hanan (my team members) gets notified
  3. They call or text the lead to find an available demo slot
  4. They manually check 8 different sales calendars
  5. They confirm the time with the lead

The problem? We were losing interested prospects because it took up to 1 day to get back to them. Meanwhile, leads just wanted to know available slots right away.

Management asked me to find a way to automate this. Here is how I built a custom AI agent that cuts response time from hours to 5 minutes, costs less than $5 per month, and never hallucinates.

The Problem with Off-The-Shelf Tools

I first researched popular WhatsApp automation tools. Here is what I found:

Tool Cost Why I Rejected It
Wabot RM130/month AI is non deterministic. It would say a slot was booked but actually hallucinated the time.
Respond.io $99/month Same issue. Plus, we could only use 1 AI agent. Our workflow needed multiple specialized agents.

Both tools were brittle. If the AI makes a mistake, we lose a lead or double book a calendar. Not worth the risk.

The Complexity We Had to Solve

Our requirements were not simple:

  • 8 salespeople, each with their own Google Calendar
  • Each salesperson handles different company sizes (50+ HC, 100+ HC, 200+ HC)
  • Leads might want to book new, reschedule, or ask complex questions
  • Users send burst messages (multiple texts at once) but expect one reply
  • Humans need to jump in when the AI gets stuck

A simple chatbot would not cut it. I needed a system that was smart, reliable, and cheap.

My Solution: Self-Hosted, Modular, and Deterministic

I decided to build everything from scratch. Here is the tech stack I used:

Component Tool Cost Why I Chose It
Server Hetzner VPS $3.99/month Cheap, reliable, full control
OS and Deployment Linux + Dokploy Free Easy to manage containers and services
WhatsApp API Evolution API Free, self-hosted No restrictions like official WhatsApp API, full control
Workflow Engine n8n Free, self-hosted Visual builder, supports complex logic, unlimited AI agents
AI Brain Qwen via OpenRouter ~$0.001 per conversation Cheap, good performance, I control the temperature and prompts
Data Layer Google Sheets Free Simple, familiar to the team, easy to audit
Message Buffer Redis Free Handles burst messages by queuing and concatenating them

Total monthly cost: Under $5. Compared to $99 for Respond.io, this is a massive saving.

The AI Workflow: Three Specialized Agents

Instead of one AI trying to do everything, I split the work into three specialized agents. Each has a clear job and strict rules.

Agent Role Key Setting
Parser Takes the user message and extracts lead details into clean JSON Temperature set to 0. No creativity, just facts.
Intent Classifier Decides: Is this a simple question, a complex query, a reschedule, or a new booking? Uses clear rules and examples to avoid mistakes.
Composer Writes the final reply to the user, pulls calendar data, and confirms slots Only speaks after receiving clean data from the first two agents.

This modular design means if one part fails, the others can still work. It also makes debugging easy.

Solving the Hard Problems

Problem 1: Burst Messages

Users do not wait. They send 3 or 4 messages in a row and expect one reply. n8n can only handle one message at a time.

My fix: I added Redis as a temporary cache. It polls incoming messages, waits a short timer, and concatenates them into one block before passing to the AI. The user gets one clear reply instead of multiple fragmented ones.

Problem 2: Calendar Logic and Cascading

Each salesperson has their own calendar and company size rules. If one is busy, the lead should go to the next available rep.

My fix: I wrote custom code in n8n that:

  • Checks Google Calendar for free slots
  • Matches the lead company size to the right salesperson
  • Cascades to the next rep if the first is occupied
  • Writes the booking to Google Sheets for audit

No hallucination. Pure logic.

Problem 3: Human in the Loop

Sometimes the AI cannot answer a complex question. Humans need to step in.

My fix: I created a private WhatsApp group with me, the AI agent, Sharifah, and Hanan.

  • When a new lead messages, the AI posts a notification in the group
  • If the AI is stuck, it pings the group for help
  • Sharifah or Hanan can jump into WhatsApp Web to take over the chat
  • Once resolved, they send a command like /agent <phone number> to hand the conversation back to the AI

This keeps the AI helpful but never leaves the lead stranded.

The Results

Metric Before (Manual) After (AI Automation)
Response Time Up to 24 hours Under 5 minutes
Cost Per Conversation Staff time (high) ~$0.001 via OpenRouter
Monthly Tool Cost $99 (Respond.io quote) Under $5 (self-hosted)
Lead Drop-off High due to slow reply Significantly reduced
Human Time Saved 0 hours Sharifah and Hanan now focus on closing, not scheduling

Real cost example: We booked 30 demos. Total AI credit cost: $0.50. That is less than 2 cents per lead.

What This Says About My Work

This project shows that I do not just use tools. I build systems that solve real business problems.

My approach:

  1. Start with the problem, not the tool. Automation should serve people, not replace them.
  2. Break complex workflows into small, testable pieces. Three AI agents are better than one confused one.
  3. Use code to add control. Redis for messages, custom logic for calendars, strict prompts for AI.
  4. Keep humans in the loop. AI handles the routine, people handle the exceptions.
  5. Optimize for cost and reliability. Self-hosting saved us 95 percent on tooling with zero downtime.

I help companies move from manual, slow processes to fast, reliable automation. And I do it without breaking the budget or the user experience.