HLAI Experts

Moving companies · Call routing

Residential and commercial moves, routed while the caller is on the line

We've built and tested a GoHighLevel (GHL) voice agent that sorts every moving call two ways: home or office, and local, within the state or long distance. The second answer comes from a driving-distance lookup the agent runs in the middle of the call.

Book a 1:1 with Rob30 minutes, free

The job

Two things the agent settles before it gives a range

What kind of move it is, and how far it goes.

A mover treats a house moved across town differently from the same house moved out of state, and an office move runs on another track entirely. So before our voice agent gives a range or books an estimate, it settles two questions: what type of move this is, and how far it goes.

Home or office. For a company that sells AI phone answering to movers, we built the agent to work out the move type from what the caller has already said. It asks only when it can't tell, with one plain question: a home move, or a commercial or office move? The move type is settled ahead of every other question, and the client confirmed that in testing.

Kept inside the agent. The contact record carried a dropdown field for the type of inquiry. HighLevel mishandled that dropdown when the agent wrote to it, so the routing now lives inside the agent and the field is never written. Residential calls, commercial calls and callback requests each follow their own path without leaning on it.

Distance by road. The class of a move comes from the normal driving distance between the two addresses. Not a straight line on a map, not the drive time, and not the city names. Inside one state, a mileage line the business sets splits local from within-state, and a move that crosses a state line is long distance. The caller never hears the class; they hear the range it leads to.

The lookup. The agent gets that distance from Google's Routes API, through a HighLevel custom action: a request the agent sends to an outside service while the call is live. Google's older Distance Matrix API wasn't available on the new Cloud project, and Google now lists it as legacy and says it can no longer be enabled for new Google Cloud projects. The Routes API is its replacement.

Commercial moves and callbacks. An office or commercial move gets its own set of intake questions, and the answers are saved to commercial fields on the contact. A caller who would rather talk to a person can ask for a callback, and the agent records the request instead of pressing on.

What we set up

What the routing build includes

Set up in your HighLevel account and your own Google Cloud project.

  • Move type read from the caller's own words, with one question only when it is unclear
  • The move type settled before any other question
  • Routing held inside the agent, with no write to a dropdown field
  • A driving-distance lookup through Google's Routes API, sent mid-call by a HighLevel custom action
  • Local, within-state and long-distance classes, split at the mileage line you choose
  • A commercial path with its own intake questions and contact fields
  • A callback-request path for callers who want a person
  • A class the caller never hears, passed to your range table

How a setup runs

Getting the routing right before launch

  1. A 1:1 with Rob

    Rob asks where your local moves end, how you treat a move that crosses a state line, and who on your team takes office and commercial work.

  2. The plan

    The plan writes down the routing rules, the one clarifying question, the commercial intake questions and the callback wording. You approve all of it before we build.

  3. Your Google project

    You give us access to a Google Cloud project you own. We turn on the Routes API, create the key inside the project and connect it to the agent's custom action.

  4. Test calls at the edges

    We call with a plainly residential move, one that could go either way, an office move, a pair of addresses near your mileage line and a move across a state line. The results go into the QA report with screenshots.

  5. After launch

    Moving the mileage line or adding a commercial question gets a verdict first, inside the agreed scope or new scope, then a fresh set of test calls.

What you bring

What routing needs from you

Your distance rule

Where a local move stops and a within-state move starts, measured in road miles.

A Google Cloud project

One in your name with billing set up. The distance lookups run and bill there, and we create the key inside it, so it is never emailed.

Your commercial questions

What your team needs to know about an office or commercial move before anyone calls the customer back.

Who returns callbacks

The person or team who picks up callback requests, and the hours they work them.

Where it stops

The agent never tells a caller how it classed the move, never writes the move type into a dropdown field, and never judges distance by city names or a straight line. It sorts and records each call; your team handles what comes next.

Questions

What movers ask about call routing

How does the agent know if it's a home or an office move?
From what the caller says. If that leaves it unclear, it asks one question, home or commercial and office, and it settles this before asking anything else.
How does it decide between local and long distance?
It looks up the normal driving distance between the pickup and drop-off addresses during the call. Inside one state, your mileage line separates local from within-state, and any move that crosses a state line counts as long distance.
Why not go by city names or a straight line?
Neither matches the road the truck will drive. Two addresses that share a city name can be far apart by road, and a straight line skips the route altogether, so the class comes from driving distance alone.
Why the Routes API and not Distance Matrix?
Google lists its Distance Matrix API as legacy and says it can no longer be enabled for new Google Cloud projects, pointing to the Routes API instead. HighLevel's help center describes custom actions as the way a Voice AI agent connects with outside systems during a live call, which is how the agent reaches it.
Will callers hear that their move is long distance?
No. The class is used inside the call to pick the right range and is never spoken. Callers hear the range and what happens next.
What happens to a commercial move?
It goes to its own intake questions, and the answers are saved to commercial fields on the contact for your team. If the caller wants a person instead, the agent takes a callback request.
Rob Eason

Who you talk to

Rob Eason

Rob runs HLAI Experts and takes the 1:1 calls himself.

He is a HighLevel Certified Admin with the second-most reviews in HighLevel's Certified Admin Directory worldwide, all of them 5 out of 5.

He won HighLevel's Top New Subaccounts via AI Employee award in its 2025 Summer of AI Awards and taught HighLevel's official masterclass on its AI Employee.

Before HighLevel, he co-owned a 60-employee financial services firm and sold his share.

On the call he looks at your account, not a script.

5/5 across 83 reviews in HighLevel's Certified Admin Directory

Talk through your routing rules with Rob

Bring where your local moves end and how you handle office jobs. In 30 minutes Rob shows how the agent would sort your calls and what your team would see from each one.

Book a 1:1 with Rob