
How We Built an AI Phone Bot That Automatically Books Appointments for a Local Business (Step-by-Step)
What we built and what it does: We built Victoria — a GHL Voice AI phone bot deployed on a live business line (301) 882-3111 in Frederick, Maryland. Victoria answers every inbound call, runs through a qualifying conversation, and texts callers a direct booking link so they can schedule an appointment themselves. It operates around the clock without staff involvement. Calls that previously went to voicemail — and were never returned — now convert into booked appointments. The result: a business that books appointments 24/7 without anyone picking up a phone. This post documents the exact build process, the tools we used, and the decisions that made it work.
Most small businesses still treat the phone like it is 2005. Someone calls. No one answers. Voicemail. Maybe a callback two days later — if anyone remembered to check.
That gap between when someone calls and when they hear back is where leads die. Not because the business is bad at what it does, but because the phone system was never designed to actually convert callers into booked appointments.
We built a fix for that. This post documents how.
What Victoria Actually Does
Victoria is a GHL Voice AI bot running on a live business line. When someone calls, Victoria answers — not a voicemail recording, but an actual conversational AI that engages the caller, gathers information, and routes them toward booking.
Here is the specific sequence:
Caller dials the business number.
Victoria answers, greets the caller by name if the number is recognized in the CRM, and opens with a discovery question.
Victoria runs through a short qualification flow: what they need, timeline, any constraints.
If the caller is a qualified lead, Victoria offers to send them a booking link via SMS.
The caller receives a text with a direct calendar link and books on their own schedule.
The contact record in GoHighLevel is updated automatically, including a note from the call.
No staff needed. No voicemail. No two-day callback window.
The result that matters: the business now books appointments 24/7 without staff handling a single inbound call.
Why Phone Automation Gets Ignored? (and Why That Is a Mistake?)
Most small business owners who have looked at automation have tackled forms, emails, and maybe SMS follow-ups. The phone gets left alone because it feels harder to automate.
It is not harder. It just requires a different tool.
Here is what the "un-automated" phone situation actually costs:
The 47-hour average callback window is not a made-up number. It is a consistent finding across studies on small business lead response. When someone calls a business and cannot get a person, the majority of them do not call back a second time. They call the next business on the list.
Victoria eliminates that window entirely.
How We Built It: The Step-by-Step Process
This is a real build. Here is exactly how it came together.
Step 1: Set Up the Business Line in GHL
We started with a dedicated phone number provisioned inside GoHighLevel. This is not a forwarding number layered on top of an existing line — it is a number fully owned and managed inside GHL, which gives the system full control over how calls are handled.
If you are already running GHL, you provision this under Settings → Phone Numbers → Buy Number. Choose a local number. In our case the number is (301) 88-23111, which serves the Frederick, MD area.
The key at this stage is making sure A2P registration and SHAKEN/CNAM are completed before going live. We had already handled that for Omnibus Victis, so the number was trusted by carriers from day one — no spam flagging, full caller ID display.
Step 2: Configure the Voice AI Agent in GHL
GHL's Voice AI is found under Settings → Voice AI. The configuration has three major sections: identity, call flow, and behavior rules.
Identity: We named the bot Victoria. We chose a female voice from GHL's available options and set her as the primary responder for the number.
Call flow script: This is the most important part of the configuration. The call flow is not a rigid IVR ("press 1 for sales, press 2 for support"). Victoria is a conversational AI, she follows a general arc rather than a fixed script. We defined:
Opening greeting
Discovery questions (what do you need, what is your timeline)
Objection handling notes (what to do if they say they are just looking, or not ready yet)
Booking trigger (when to offer the SMS link)
Wrap-up
We kept the discovery flow to three to four questions maximum. Longer than that and callers start to disengage.
Behavior rules: We set Victoria to always stay on topic, never discuss competitor pricing, and escalate to a human callback request if the caller explicitly asks for a person. That last rule is important — the bot handles the majority of calls, but it does not try to trap callers who want a real conversation.
Step 3: Build the SMS Booking Trigger
The moment Victoria qualifies a lead, she offers a booking link via text. This required a Make.com workflow to handle the trigger-to-send sequence:
GHL Voice AI marks the call outcome as "qualified lead"
Make.com detects the tag change in GHL
Make.com fires a GHL SMS to the caller's number with the direct calendar URL
The calendar link uses GHL's native booking page — pre-configured with available slots, service descriptions, and a confirmation email on booking
The calendar link is self-serve. The caller books at whatever time works for them. No back and forth.
For more on how this booking flow connects to the broader automation stack, see our walkthrough on how to automate bookings and follow-ups.
Step 4: Set Up the "Transcript Generated" Workflow Trigger
Every Victoria call generates a transcript inside GHL. We built a workflow that fires when a transcript becomes available, pulling key details into the contact record automatically:
Call summary
Caller's stated need
Whether they received the booking link
This keeps the CRM accurate without anyone manually updating records after calls. GoHighLevel's contact history shows the full call context for any follow-up that needs to happen.
Step 5: Test Before Going Live
We ran Victoria through three test scenarios before activating on the live number:
Standard qualified lead call — caller asks about services, gets qualified, receives SMS link, books.
Unqualified caller — someone who is clearly not a fit; Victoria wraps gracefully without pushing the booking link.
Caller requests a human — Victoria acknowledges, logs the request, and confirms a human will follow up.
Each scenario was tested with a real phone call, not a simulated one. We listened to the recordings, reviewed the transcripts, and adjusted the call flow script based on what sounded off.
GHL's Voice AI has settings that affect how quickly the bot responds and how long it waits for the caller to finish a sentence. Those defaults are not always right for every business. We spent time tuning them until the conversation felt natural rather than robotic.
Step 6: Monitor the First Two Weeks
Going live is not the end of the build — it is the start of the tuning phase.
For the first two weeks after Victoria went live, we reviewed call recordings weekly, looking for:
Calls where Victoria misunderstood the caller's intent
Calls that should have triggered the booking SMS but did not
Any patterns in the types of questions callers asked that were not covered in the call flow
Each finding fed back into the call flow script. By the end of week two, Victoria's performance was consistent enough that we moved monitoring to monthly.
What This Looks Like in Practice
One consistent pattern we saw after Victoria went live: calls that previously arrived outside business hours — evenings, weekends — now had somewhere to go. Before, those calls hit voicemail. In many cases the callers never left a message.
With Victoria active, those same callers had a real conversation, got the information they needed, and either booked directly or received a follow-up link. The phone line was no longer a dead end after 5 PM.
For a small business in Frederick, Maryland that does not have the budget to staff a call center, that is a meaningful change in how the business competes.
If you want to understand how this fits into the broader automation picture — what else gets built alongside a voice bot — see our post on How GoHighLevel works for small businesses and our breakdown of the top automation tasks small businesses should tackle first.
What This Build Costs at Our Agency
Victoria was built and deployed as part of our Foundation tier at $997/month. That tier covers the initial build, the GHL configuration, the Make.com workflows, and the first 30 days of monitoring and tuning.
For businesses that need more — additional AI agents, multi-channel follow-up sequences, or CRM enrichment on top of the voice bot — our Growth tier ($2,497/month) covers the full stack.
The phone bot does not require ongoing agency involvement to operate once it is live and stable. It runs. If call patterns shift or a new service needs to be added to the flow, that is a short configuration update, not a rebuild.
Frequently Asked Questions
Does the AI phone bot work with any business phone number, or does it require a new number?
Victoria runs on a number provisioned and managed inside GoHighLevel. In most cases we provision a new local number rather than porting an existing one, because the automation stack requires full control over how calls are handled. If number continuity matters to your business, porting is possible, but it adds setup time.
What happens if a caller asks a question the bot is not configured to answer?
We build the call flow to handle the most common questions and objections for each business. If a caller asks something outside that scope, Victoria is configured to acknowledge the question, let the caller know someone will follow up, and log the inquiry. The call does not just dead-end.
Can the bot handle multiple calls at the same time?
Yes. Unlike a human answering the phone, Victoria handles concurrent calls without any degradation in response time or quality. For businesses with high inbound call volume, this is one of the most immediate operational benefits.
Is there a way to listen to call recordings after the fact?
Every call Victoria handles generates a recording and a transcript inside GoHighLevel. You can review them at any time from the contact record or the conversations panel. We also build workflows that flag calls requiring human follow-up, so nothing falls through.
How long does it take to build and go live?
The core build is number provisioning, Voice AI configuration, booking workflow, and CRM integration, which typically takes one to two weeks from kickoff to live. That includes testing. The tuning phase after launch runs for two to four weeks before the system is fully dialed in.
About the author
Brian Stratton is the founder of Omnibus Victis AI, an AI automation agency based in Frederick, MD. He builds AI agentic automation systems for small businesses and nonprofits.