Routing to Local Agents by Territory
A worked recipe for sending live-transfer calls and shared leads to the agents who cover the caller's area — by radius, city, state, or a zip list for a county or MLS. Built for real estate, home services, insurance, and any model where agents only work specific territories.
Call Tracking is in beta and turned on per account. If you don't see Calls in your left sidebar (or it shows a "Soon" tag), email support@leaddistro.ai and we'll switch it on for you.
This is a worked recipe for a common setup: your agents each cover a specific area, and every call or lead should reach only the agents who serve the caller's location. It is popular with real estate brokerages, home services, and insurance. For the step-by-step basics of a Calls campaign see Call Tracking Setup, and for routing lead data by zip see Zip Code Filtering. This page ties them together into one pattern.
The scenario
Picture a real estate operation. A buyer or seller lead comes in for a specific neighborhood. Your team runs a live transfer to an agent who works that area, and you also want two more agents on the same lead in different roles.
- Live transfer. An agent who covers the caller's area picks up the call in real time.
- Appointment setter. A second agent gets the same lead and books a time to follow up.
- Coordinator. A third agent receives the lead for visibility and tracking.
Lead Distro AI routes by territory, not by job title. So you build this in two halves: the live-transfer call rings the agents who serve the caller's area (first to answer takes it), and a parallel leads campaign delivers the same lead to your other agents by email and text. The rest of this page walks both halves.
How the routing decides who gets the call
Every inbound call carries the caller's state and zip, which the phone network includes for free. Lead Distro AI matches that location against each agent's Geographic Routing rule and rings only the agents whose territory covers the caller. If the network can't tell where a caller is, every agent rings, so a call is never dropped over a missing location.
You can describe an agent's territory three ways:
- By radius: within a set number of miles of a center zip, for example 25 miles around an agent's office.
- By city or state: everyone in a city, or a whole state.
- By zip list: a fixed set of zips. This is how you express a county or an MLS area — paste the zips that make up the boundary.
Step 1: One tracking number per market
Give each market its own tracking number so your transfer team always dials the right one. On the campaign's Tracking Numbers tab, buy a number, then click its Region cell and set the state (and a zip if you want a tighter center). The number stamps that region onto every call, which fixes the one weak spot in location routing: callers whose phone doesn't reveal where they are.
- Fallback (default): the region is used only when the caller's own location is unknown.
- Always use this region: treat every call to this number as that market, for a number dedicated to one area (a Florida ad number, say).
Step 2: Add each agent with their territory
On the Call Flow tab, under Routing Strategy (Ring Tree), click Add Target, pick the agent, and in the Edit Target window set their Geographic Routing: search a city, zip, or state, or switch to Within Radius and enter miles around a center zip. Set their Forwarding Phone, Ring timeout, Schedule, and any Caps while you're there.
For a county or MLS area, use a zip list: paste the zips that make up the boundary. Radius is best when an agent thinks in distance ("within 25 miles of my office"). See Zip Code Filtering for when to use each.
Step 3: Ring the territory's agents together
To have the matching agents ring at the same time so the first to answer takes the live transfer, give them the same Priority number in their Edit Target windows. Agents at the same priority ring together, the first to pick up is connected, and the rest stop ringing. Prefer to ring them in turns instead? Use weights or different priorities for a round-robin order.
Step 4: Send the same lead to your other agents
The call handles the live transfer. To get the same lead to your appointment setter and coordinator, run a Leads campaign off the same lead source and set it to share each lead with more than one buyer (max sells per lead). Give those agent-buyers the same territory rule so they only get leads in their area, and set their delivery to email and SMS so they're notified in real time. GoHighLevel, Google Sheets, and webhook delivery work too.
- Add the agents as buyers on the leads campaign, each with a Zip Code filter for their area (In List or Within Radius). See Zip Code Filtering.
- Set the campaign to share each lead with the number of agents you want on it.
- Choose email and SMS delivery per agent so they get the lead the moment it lands.
Scaling to hundreds of agents
If you're onboarding hundreds of agents per state, setting territories one at a time in the UI is slow. Use the built-in AI Assistant, or connect the MCP server to your own AI, to create agents and set their territories in bulk from a list. See AI Assistant (MCP).
Limits to know
- Counties and MLS areas are expressed as zip lists — there is no county or MLS field, and no MLS data feed. Paste the zips for the boundary.
- Territories are set per campaign, per agent. There isn't one saved service area that follows an agent across every campaign yet, so set the territory on each campaign the agent is in.
- Caller location comes from the phone network and isn't always present or exact. The per-number Region stamp in Step 1 is how you keep routing tight when it's missing.
FAQ
Frequently Asked Questions
Can I route by county?
Do all three agents get a phone call?
What if the phone network can't tell where the caller is?
Can one lead go to several agents?
How do I set this up for hundreds of agents at once?
Related Articles
If you have any questions, send us an email at support@leaddistro.ai