A simple yet effective lead management tool with AI assistance
About
I built a smart tool for myself, business owners and marketers that automates lead management, making scheduling calls and tracking leads quick and easy.
One of AI's blessings is its automation potential, but how do you use it to automate the various steps in lead management? And how will it make lead management less time-consuming for both business owners and marketers?
Today, I want to address these questions with a lead management automation I built, where the only thing a small business owner/ marketer has to do is handle the calls and make the final decision about lead status.
The tool I built has scheduling and notification functionalities, as well as lead management in the form of lists in a website page.
Let's start with the scheduling, once a website visitor decides to take the next step, they can click a schedule call button like this one from a landing page:
Two website buttons
The button then takes them to this call scheduling page:
Call scheduling web app
In the project I built, this app only shows the scheduling date field when a valid email is entered above. Once the valid email is entered, you can schedule a call in the next 30 days.
And then once a date is selected, there is an API call to Google calendar to check whether the date selected has available slots, the available slots are then separated by 30 minutes where each call is given 30 minutes time.
Scheduling a call
Once a call is scheduled, an event is created in google calendar for both the admin and the lead. And this takes into consideration timezone differences and is properly calculated on the backend.
Call scheduled in Google calendar
This same call is also saved in the database of the website. And on the admin's side, it looks like this:
Call management on the website
This allows the deletion of cancelled calls, stores the call's scheduled date in UTC and notes the lead's timezone as well in IANA format. So implementing extensions or changing to a different calendar API shouldn't cause too much of a hassle
To make rescheduling as simple as possible (avoid spam as well) and without contacting the business owner or the marketer, if an email that already scheduled a call that didn't happen yet is entered in the scheduling app, this happens:
Rescheduling functionality
Rescheduling changes the time stored in the database and changes the scheduling time for the already created event in Google calendar.
Rescheduled call in Google calendar
Rescheduled call on the website
Now let's visit the AI part of this system. In the following page, Lead and call details are saved in the form of lists under spoilers to avoid cluttering up the page:
Lead management page
We've already seen how scheduled calls look like, now let's look at the list of calls past their scheduled date:
List of calls done
During a call, an external tool is invited to transcript the call. The transcription is sent through an API to the AI model used in the backend of the website with instructions to organize, format and fix any inconsistencies in the transcription recorded.
The processed transcription is then used to create a summary of the call. The summary is then used to get AI to suggest a Lead status, as shown above. However, if the lead didn't join the call, all of these steps are skipped and the suggested status is no show.
Handling no shows is a whole automated process of its own that sends periodic messages to the lead to get their attention back. But I won't get into the details of that one here.
Clicking the transcript button shows this window:
A part of an AI organized transcript
Clicking the call summary button shows this window:
AI generated summary of the call
And now last but not least, the list of leads. Once a lead schedules a call, their information is stored in the database as a warm lead.
However, if the lead status is marked unqualified and remains unchanged, all personal information about this lead will be deleted automatically in 90 days to stay compliant with privacy laws such as GDPR. If a lead in EU requests to have their info deleted, the admin can do so by clicking the trash can icon.
Here's how the list of leads looks like:
List of leads on the website
The Analysis section here is handled by AI based on the summaries of all the calls done with the lead. This section provides insights about the lead, their needs, their expected results and an action plan proposed by AI. Here's how it looks in its own window:
Lead analysis
For this lead management tool, AI documents and organizes everything, but its role is assistive. The final decision of the lead status is for the admin of the tool, who can pick the lead status from the following options:
Lead status options
Here's the flowchart of this automation:
Lead Management Flowchart
So in summary, this automation handles scheduling, email notifications, Zoom call creation, Zoom call link distribution, call transcription, call summarization, lead analysis, suggested lead status and automatically handles "no show" leads in an attempt to bring them back to the fold.
I built this application along with the website it is on using 4 programming languages (Primarily Python, JavaScript, HTML and CSS). Most functionalities are in-house and there are only two APIs used, Google Calendar API and OpenAI o4-mini.
To address operational cost, If you host 100 calls every month, Google calendar API will remain within the free tier. For OpenAI, summarizing 20 to 30 minute calls 100 times and offering lead analysis after every call should cost approximately $0.084 to $0.126 per month.
This is a very cost-effective automation that is literally almost free to run, even if it scales, but offered great value to a client of mine nonetheless. This is not otherwise achievable with no-code tools. And the only way for this not to work properly is if Google servers go offline, how often does that happen?
Imagine how much time and money you can save with a system like this, want one? Let me help you create it to your specific needs