From a list nobody calls to 100 warm conversations
How an insurance agency used an AI voice agent to ring its old leads, ask two questions and hand the keen ones to a sales agent, in 90 days.
01 At a glance
The short version
An insurance agency had thousands of old leads and no time to call them. We set up an AI voice agent that rings them, asks two questions and hands the keen ones to a person.
A long-term care insurance agency
It sells long-term care cover to people aged 50 and over. Its CRM (customer database) holds years of leads who once asked about cover.
Old leads nobody calls
Email did little. Ringing by hand took hours the sales team did not have. The list sat untouched.
A voice agent that rings first
It calls each lead, confirms their city, asks two questions and passes interested leads to a sales agent within the hour.
100 warm conversations
Across 2,500 calls in 90 days, the campaign generated 20 policies and $36,000 in first-year commission for $950 in running costs.
The shift
Before: a list of 3,000 old leads that nobody had time to ring. After: an agent rings them in batches, and a sales agent only picks up the phone for people who said yes.
02 The pain
Years of leads,
and nobody calling them
The agency's CRM was full of people who once asked about long-term care cover. Every one of them was a warm lead once. Nobody had the time to find out who still was.
Warm leads went cold
People asked about cover two to five years ago. Their details sat in the CRM and nothing had touched them since.
Email did not move them
Email sequences rarely get a reply from local buyers. A phone call from someone who knows their city is a different thing.
Hand-dialling ate the day
At three minutes a call, ringing 500 leads is 25 hours of work, most of it voicemail. Sales agents had live deals to run.
Trust is hard on a cold call
Most of the audience is 50 and over, and they have heard every scam call going. A stranger gets hung up on.
03 The solution
A voice agent that rings
the old leads first
The agent calls each lead and has a short, friendly chat. When the call ends, the result lands in Airtable: interested or not. A sales agent rings back only the interested ones, with the transcript in front of them.
Old leads sit in Airtable, exported from the CRM. A team member presses a button and the next batch goes out, 100 leads at a time.
It opens softly, confirms the lead's city, asks about two things they care about and keeps every turn short.
An AI reads the transcript and marks the lead. Interested leads show on the sales agent's screen with a summary and recording.
People do the selling
The agent never quotes, advises or books. It tells the lead it is an AI assistant when it passes them on, and promises a call back within the hour. A sales agent rings every interested lead inside that hour, with the summary, transcript and recording open on screen.
04 Implementation
What we set up,
and what it gave the team
Two small workflows do the work. One sends a lead out to be called. The other brings the result back and files it on the right lead.
| Part | What it gave the team |
|---|---|
Airtable base | Every old lead in one place, with a status column and a button that sends the next batch. |
Send script | A short script that passes a lead's name, phone, city and record ID to Make. |
Make: calling flow | Receives the lead and asks Vapi to place the call, with the lead's details filled in. |
Vapi voice agent | Makes the call in a warm, older-sounding voice. GPT-4o mini runs the conversation. |
Call script | The rules for how the agent opens, asks, confirms the city and hands over. |
Make: results flow | Catches the end-of-call report, finds the lead's record and updates it. |
AI classifier | Reads the transcript and marks the lead interested or not interested. |
Airtable dashboard | Total calls, calls done, interested leads and call time. Each lead's page shows the summary, transcript and recording. |
Import the leads from the CRM, tidy the phone numbers and add the status column and the send button.
Call the team's own phones. Tune the script until the openings sound natural and the results land on the right lead.
Start with the first 100 leads not yet called. Read the first transcripts daily and widen the batch only when the calls sound right.
05 Under the hood
The script behind the first call
One button press runs this Airtable script. It packs a lead's details into a message for Make, which places the call. The web address is hidden.
Gathers the lead's details and a record ID, so the result matches back to the right lead.
Sends them to a webhook (a web address that waits for messages) and the call starts.
Logs success or failure, so the team can see if a lead did not go through.
06 The call itself
Short, warm,
one question at a time
| Moment | What the agent does | Why |
|---|---|---|
| Hello | A short greeting, then a reason for the call: a quote, a question, or news of new options. | Gives the lead a reason to stay. |
| Questions | One question at a time, and a question after anything it says. | Keeps the lead talking and the call moving. |
| Keen lead | Confirms their city. Never reads the full address. Asks two questions that fit what they want. | Proves the call is genuine without feeling intrusive. |
| Handover | Says it is an AI, promises a call back within the hour and hangs up. | Sets a clear expectation and keeps the call short. |
| Not keen | Asks why, mentions the current offer once and ends politely. | Turns a no into something the team can learn from. |
It uses what the agency knows
The city is already in the CRM. Saying it back shows the call is real.
It never tries to sell
The agent finds out who is still keen and hands over. It does not quote, advise or book.
It runs on a small model
GPT-4o mini, with no knowledge base and no extra tools. Fewer parts, fewer ways to go wrong.
Volume does the work
Most calls go unanswered. The agent does not mind, and a call costs about 20 cents.
07 The outcome
What changes,
and what we delivered
Each pain point delivered a measurable return across the 90-day campaign.
| Area | Before | After 90 days |
|---|---|---|
| Old leads | 3,000 untouched | 2,500 called |
| Sales conversations | None from the list | About 100, each with the transcript open |
| Sales team's time | Hand-dialling, or nothing | 125 hours of dialling handed to the agent |
| Commission from the list | $0 | About $36,000 in first-year commission |
| Visibility | No record of what leads said | A summary, transcript and recording for every call |
The 90-day campaign
Sent 500 leads in batches of 100. Read transcripts and refined the script until openings sounded natural.
Doubled the volume once conversion was proven. Sales agents rang back inside the hour.
Delivered another 1,000 calls, sustaining consistent answer and qualification rates across the list.
Delivered commercial return
These figures represent live campaign results across the agency's uncontacted lead database over 90 days.
08 The numbers
The results
for about $350 a month
Measured performance across 3,000 inactive leads, in US dollars.
125 say yes. 8 in 10 take the call-back.
2 in 10 of those become a policy.
2,500 calls at 3 minutes each.
Month by month
| Measure | Before | Month 1 | Month 2 | Month 3 |
|---|---|---|---|---|
| Leads called | 0 | 500 | 1,000 | 1,000 |
| Calls answered | 0 | 100 | 200 | 200 |
| Marked interested | 0 | 25 | 50 | 50 |
| Call-backs that connect | 0 | 20 | 40 | 40 |
| Policies sold | 0 | 4 | 8 | 8 |
| Commission earned | $0 | $7,200 | $14,400 | $14,400 |
| Running cost | $0 | $250 | $350 | $350 |
First-year commission earned over 90 days from a list that earned nothing, for about $950 in running costs.