Technician Tracker
Live GPS tracking so customers know exactly where their technician is and when they'll arrive.
What This Screen Is
The Technician Tracker is the customer-facing live map that appears in the portal when a contractor dispatches a technician to their job. It works the same way as Uber or DoorDash tracking — the customer sees a moving pin on a map, a real-time ETA, and a status bar that updates automatically. The moment the technician clocks in and marks themselves as dispatched, the tracker activates and the customer receives a notification. The map stays live until the technician marks the job as arrived, at which point the tracker locks in an "Arrived" state.
Only shows on the day of the appointment. The tracker is not visible for future appointments or past jobs. It activates the morning of the appointment and only goes live once the contractor dispatches the technician. Customers never see other technicians, other jobs, or the technician's home address — just first name, photo, and ETA for their own job.
Live Tracker — What the Customer Sees
A full-width map showing the technician's current location moving toward the customer's address, with a status bar above and a technician card plus appointment detail below.
Status bar example: "Marcus is on the way — ETA 14 minutes"
Progress steps: Scheduled (done) → Dispatched (current) → Arrived (upcoming)
Map elements:
- Road grid with street names (Maple Ave, Elm Street, Oak Rd)
- House pin: "72 Elm Street — Your Home"
- Truck pin with pulse animation: "Marcus — 14 min away"
- Accuracy circle around truck pin
- ETA ribbon (top right): "14 min away"
- Map attribution: "Live GPS · updates every 2 min"
Technician card:
- Avatar: MR (initials)
- Name: Marcus
- Role: Lead Technician
- Call button
Appointment card:
- Today — 2:00 PM
- Service: Deck Staining
- Address: 72 Elm Street, Springfield, IL 62701
What Customers See Before Dispatch
When the tracker link is accessible but the technician hasn't been dispatched yet, the map is replaced by a placeholder:
"Your technician hasn't been dispatched yet — The tracker will go live when Marcus heads your way — you'll get a text when it's time"
When the Tracker Becomes Active
The tracker is not always on. It only activates when specific conditions are met in the CRM — preventing confusion for customers with appointments that are days away.
| State | Trigger | What Customer Sees |
|---|---|---|
| Not active — future appointment | Appointment is confirmed but more than ~6 hours away | No tracker link. Appointment shows in My Schedule instead. |
| Not active — same day, not dispatched | Appointment day but technician not yet clocked in / dispatched | Tracker link visible in portal but shows "Technician not yet on the way" placeholder |
| Dispatched | Contractor marks technician as dispatched in CRM or mobile app | Live map activates, SMS sent: "Marcus is on the way" |
| Arrived | Technician enters the customer's geofence radius (configurable, default 300ft) | Map locks, status shows "Marcus has arrived", push/SMS notification sent |
| Complete | Technician marks job complete in mobile app | Tracker screen transitions to project summary with "View Invoice" prompt |
Status Progression
Scheduled
- Appointment confirmed in the CRM with a date, time, and assigned technician.
- Customer received confirmation notification at booking.
- Tracker link is not yet active — appointment appears in My Schedule.
- Reminder notification sent 24 hours and 2 hours before the appointment time.
Dispatched
- Technician clocks in on the mobile app and contractor (or technician) marks dispatch.
- GPS tracking activates on the technician's device — location is shared at 2-minute intervals.
- ETA is calculated from current location to customer's address using live routing.
- Customer notification fires immediately: "Your technician is on the way — tap to track."
- Tracker map goes live in the customer portal.
Arrived
- Triggered automatically when the technician's device enters the customer's geofence (default 300ft radius around the job address).
- GPS tracking pauses — location is no longer needed once arrived.
- Map locks showing the technician pin at the customer's address.
- Customer notification: "Marcus has arrived."
- CRM auto-logs the arrival timestamp for job costing and time tracking.
Complete
- Technician marks the job complete in the mobile app.
- CRM auto-logs the completion timestamp; time-on-site calculated for the job record.
- Tracker screen transitions to a completion view: summary of work performed, link to the invoice, and a follow-up review request prompt.
- Customer notification: "Your deck staining is complete. View your invoice."
Customer Notifications
Customers receive a notification at each stage change. The notification type (SMS, push, or both) respects whatever channel preferences the customer has set in their portal notification settings. All tracker notifications are on by default and can be individually toggled off by the customer.
Example notification sequence (today):
- Marcus is on the way! — Your technician is 14 minutes away for your 2:00 PM Deck Staining appointment at 72 Elm Street. [Tap to track live location] — 2:46 PM · SMS + Push
- Marcus has arrived. — Your technician is at 72 Elm Street. Your deck staining is underway. — 3:01 PM · SMS + Push
- Your deck staining is complete! — Marcus has finished up. View your invoice or leave a note for the team. [View invoice] — 5:47 PM · SMS + Push
Privacy & Data Boundaries
The tracker is built with a privacy-first model. The customer sees the minimum information needed to know their technician is coming — and nothing that could compromise another customer or expose internal operations.
What Customers Can See
- Technician's first name — no last name.
- Profile photo — if the contractor has uploaded one for the technician; otherwise an initials circle.
- Live location on map — moving pin showing the technician's current GPS position while en route to the customer's address only.
- ETA — live routing estimate in minutes, updated every 2 minutes.
- Job title / role — e.g. "Lead Technician" — a public-facing label only.
What Customers Cannot See
- The technician's last name, phone number, or home address.
- Previous stops or other customers' job site addresses.
- Other technicians, other jobs, or the crew schedule.
- The technician's full route history — only current position and ETA to the customer's address.
- GPS location when the technician is not actively en route to the customer's job.
Privacy Table
| Data Point | Visible | Notes |
|---|---|---|
| Technician first name | Yes | First name only |
| Technician photo / initials | Yes | Profile photo or initials placeholder |
| Technician current GPS location | Yes | Only while dispatched; stops at arrival |
| ETA to customer address | Yes | Live routing, updated every 2 minutes |
| Technician full name | No | Privacy — first name only |
| Technician phone number | No | Customer calls via in-app button routed through CRM |
| Technician's other stops | No | Would expose other customers' addresses |
| Full route history | No | Only current position and ETA shared |
| GPS when not dispatched to this job | No | Tracker only active during dispatch window |
GPS Accuracy & Update Frequency
- Update interval: Every 2 minutes while the technician is en route. Not real-time — a deliberate trade-off that balances battery life and privacy against tracking responsiveness.
- Map accuracy: Location shown with an accuracy circle representing the GPS margin of error from the technician's device. Typical accuracy is 10–30 meters for outdoor locations.
- ETA calculation: Uses the device's current position plus live routing data at each update. Does not account for unexpected stops but self-corrects at the next update interval.
- Connection loss: If the technician's device loses signal, the last known position remains on the map and ETA shows "Updating..." until a new location is received.
- Geofence arrival trigger: The "Arrived" status fires when the device enters a configurable radius around the job address (default 300ft / ~90 meters). Contractors can adjust this radius per location from the CRM.
Related Pages
- My Schedule — Customer Portal — Upcoming and past appointments, rescheduling, and new booking requests
- Customer Portal Overview — Full feature map of the customer-facing portal including payments, projects, and communication
- GPS & Time Tracking — CRM — How the contractor's mobile app captures location, geofence events, and auto-starts job timers
- Notification Preferences — Customer controls for SMS, push, and email notification channels and quiet hours
- My Projects — Customer Portal — The customer's view of all jobs, photos, documents, and invoice history