RouteTrak Setup Guide
Follow this guide to connect RouteTrak to your GHL account, configure your team, and plan your first AI-optimised route. The full setup takes about 15 minutes.
Overview
RouteTrak is a GHL-native route optimisation app. It connects directly to your GHL calendar and CRM, pulls today's appointments, uses AI to find the most efficient driving order, and dispatches routes to your field techs via SMS â all without leaving GHL.
Here's what happens from install to dispatch:
Connect to GHL
Authorise RouteTrak to access your GHL appointments and contacts via OAuth.
Configure your team
Add your field techs, create service types, and set up truck capacity.
Load today's appointments
RouteTrak pulls appointments from your GHL calendar for the selected date.
AI optimises the route
Jobs are scored by urgency and time windows, then ordered for minimum drive time.
Dispatch via SMS
Each tech receives an SMS with their stop list, ETAs, and a Google Maps link.
Requirements
Before you begin, make sure you have the following:
| Requirement | Details |
|---|---|
| GHL account | Agency or sub-account with admin access. RouteTrak needs permission to read contacts, calendar, and users. |
| Google Maps API key | Enable the Maps JavaScript API, Geocoding API, and Places API. Free tier covers most small teams. |
| OpenAI API key | GPT-4o-mini is used for route scoring. A standard API account is sufficient â costs are very low (fractions of a cent per optimisation). |
| Twilio account | Required for SMS dispatch. You need an Account SID, Auth Token, and a Twilio phone number with SMS enabled. |
| GHL contacts with addresses | Contacts need a street address for geocoding. Use the built-in Address Fixer to clean up missing addresses. |
Step 1 â Connect to GHL
RouteTrak connects to GHL using the official OAuth 2.0 flow. Your GHL password is never shared with RouteTrak.
Go to routetrak.com
Click the green "Connect to GHL" button on the homepage.
Log into GHL
You'll be taken to the GHL login page. Log in with your GHL credentials if prompted.
Choose your location
Select the GHL sub-account (location) you want to connect RouteTrak to. If you have multiple locations, you can connect each one separately.
Approve permissions
RouteTrak will request access to: Contacts (read), Calendar (read), Users (read), and Conversations / SMS (write). Click Allow.
You're connected
You'll be redirected to the RouteTrak dashboard. Your GHL location name will appear in the bottom-left corner of the sidebar.
Step 2 â API keys
RouteTrak uses three external APIs. Your keys are added by your RouteTrak administrator in the Vercel environment variables â end users don't need to set these up.
Google Maps API key
- Go to console.cloud.google.com
- Create a new project or select an existing one
- Go to APIs & Services â Library
- Enable: Maps JavaScript API, Geocoding API, Places API
- Go to APIs & Services â Credentials â Create Credentials â API Key
- Restrict the key to your RouteTrak domain for security
- Add the key to Vercel as
GOOGLE_MAPS_API_KEY
OpenAI API key
- Go to platform.openai.com/api-keys
- Click Create new secret key
- Add the key to Vercel as
OPENAI_API_KEY
Twilio credentials
- Go to console.twilio.com
- From the dashboard, copy your Account SID and Auth Token
- Get or buy a Twilio phone number with SMS capability
- Add to Vercel:
TWILIO_ACCOUNT_SID,TWILIO_AUTH_TOKEN,TWILIO_FROM_NUMBER(in E.164 format, e.g.+14155551234)
Step 3 â Set up your team
In the RouteTrak dashboard, click the Teams icon in the left sidebar. You'll see three columns: Service Types, Teams, and Trucks.
Adding a truck / tech
- Click + Add Truck in the Trucks column
- Enter the truck or tech name (e.g. "Truck 1" or "Mike's Van")
- Set the maximum stops per day â this caps how many jobs get assigned to this truck
- Optionally add a home depot address â this is used as the starting point for route optimisation
- Assign the truck to a team (optional â trucks can be unassigned)
- Click Add truck
Step 4 â Service types and teams
Service types let you separate different kinds of jobs â for example HVAC, Plumbing, and Electrical. Teams are groups of trucks within a service type.
Creating a service type
- In the Teams view, click + Add in the Service Types column
- Enter a name (e.g. "HVAC")
- Pick a colour â this colour is used on the map to distinguish routes by service type
- Set the default job duration in minutes â used for ETA calculations
- Click Add service type
Creating a team
- Click + Add Team in the Teams column
- Enter a team name (e.g. "North HVAC" or "Residential Plumbing")
- Select the service type this team belongs to
- Click Add team
Step 5 â Plan your first route
Click Plan Routes (the map icon) in the sidebar to open the route planner.
Select a date
Choose the date you want to plan routes for. Today is selected by default.
Choose a calendar
Select which GHL calendar to pull appointments from. If you have multiple calendars, you can select one or load all.
Set your depot address
Enter the address your techs start from each morning (your office, warehouse, or yard). This is used as the route's starting point.
Select techs (or trucks)
Check the techs to include in today's route. If you've set up trucks, use the service type and team filters instead.
Click "Load Appointments"
RouteTrak fetches today's appointments from GHL. They appear in the stop list on the left and as pins on the map.
Click "Optimise with AI"
The AI scores each stop by urgency and time window, then calculates the most efficient route order. This takes 5-15 seconds depending on the number of stops.
Review the routes
Each tech gets a route card showing their stops in order with ETAs. The map shows all routes colour-coded by tech. Click a pin to see stop details.
Step 6 â SMS dispatch
Once routes are optimised, dispatch them to your techs in one click.
Dispatch all routes at once
Click the "Dispatch All" button at the top of the results panel. Each tech receives an SMS with:
- Their name and today's date
- A numbered list of stops with ETAs
- A Google Maps link that opens their full multi-stop route ready to navigate
Dispatch a single tech's route
On each tech's route card, click the đą SMS button to send only that tech's route.
SMS message format
The message your techs receive looks like this:
1. John Smith â 9:00 AM (123 Main St)
2. Sarah Jones â 10:15 AM (456 Oak Ave)
3. Bob Wilson â 11:45 AM (789 Pine Rd)
Open your full route: https://maps.google.com/...
Step 7 â Check-in and check-out
The Check-In view (clipboard icon in sidebar) lets dispatchers log when a tech arrives at and leaves a job. Each check-in and check-out writes a timestamped note to that contact's timeline in GHL automatically.
Logging a check-in
- Click Check-In in the sidebar
- Select the tech from the dropdown
- Select the contact / job from the list
- Add any arrival notes (optional)
- Click Check In
Logging a check-out
- Find the active check-in in the Live Dispatch view
- Click Check Out
- Select the job status: Completed, Incomplete, Rescheduled, or No Answer
- Add any completion notes (optional)
- Click Check Out
The duration on-site is automatically calculated and recorded to the GHL contact timeline.
Step 8 â Analytics
The Analytics view (bar chart icon) shows your team's performance over time. Available metrics include:
- Total routes and stops completed
- Completion rate and on-time rate
- Total miles driven and estimated fuel saved
- Average stops per day and average drive time per stop
- Tech leaderboard â ranked by stops completed, on-time rate, and miles driven
- Top issues (addresses missing, late arrivals, SMS failures)
Contact Map
The Contact Map (pin icon) plots all your GHL contacts on an interactive map. Filter by tag or postcode to visualise where your customer base is concentrated. Useful for territory planning and identifying clusters of jobs.
Prospect Finder
The Prospect Finder (search icon) lets you search for businesses near any address using Google Places. Results show business name, address, and rating. Click Add to GHL to create a new contact in your GHL CRM directly from the map.
Address Fixer
The Address Fixer (wrench icon under Contacts) scans your GHL contacts for incomplete addresses â missing postcodes, cities, or ungeocoded locations. It geocodes each address using Google Maps and writes the corrected postcode and city back to the contact in GHL. Run this before optimising routes to maximise the number of geocodeable stops.
Troubleshooting
No appointments loading
- Check the date â appointments must exist in GHL on that date
- Check the calendar selection â make sure you've selected the right GHL calendar
- Verify your GHL connection is still active (look for your location name in the sidebar)
Addresses not geocoding
- Ensure the Google Maps API key has the Geocoding API enabled
- Check that the contact's address in GHL includes a street number, street name, city, and postcode
- Use the Address Fixer tool to clean up partial addresses
SMS not sending
- Verify the Twilio Account SID, Auth Token, and phone number are all set correctly in Vercel
- Ensure the Twilio number has SMS capability enabled
- Check the tech has a phone number set in their GHL user profile
- Check your Twilio account balance â insufficient funds will prevent SMS sending
Route optimisation is slow
- Optimisation time scales with the number of stops. 50+ stops may take 15-20 seconds â this is normal
- If it times out, try splitting into smaller batches using the service type filter
GHL connection lost
- Return to routetrak.com and click "Connect to GHL" to reconnect
- If the error persists, try logging out of GHL and back in, then reconnect
- Contact support@routetrak.com if the issue continues
Still stuck?
Email us at support@routetrak.com or visit the support centre. We respond within 24 hours on business days.