Your day lives on the Route tab
Open the technician mobile app (iOS and Android) and the Route tab shows your route for the day. Your day is a route session: tap Start Route to begin (with an optional odometer reading), run your stops with GPS navigation and job checklists, pause when you take a break, and tap Finish when you're done. Time and mileage are tracked across the session — the header shows "Route Active" with your elapsed time and stop progress all day.
The app works offline and syncs when you're back online. Some features need the server — those are called out below, and their buttons dim with a "Requires internet connection" note when your phone is offline.
Start your route
Before you start, the Route tab shows a "Today's Route" summary card: expected start time, stop count, total time at stops, total expected drive time, total miles, and the combined Total Route Time — plus a preview of your first stop and any custom stops pinned to the day.
- 1Tap Start Route. (The button needs location permission — a red "Location Access Required" banner with an Open Settings button appears if the app doesn't have it.)
- 2The Odometer Reading modal opens: enter your Odometer (miles), optionally snap a photo of the odometer (Camera or Gallery), and pick your Vehicle — the list marks your default, and admins can add a vehicle right here.
- 3Tap Start Route to confirm, or Skip to start without a reading (it asks you to confirm the skip). If the number you type is lower than the vehicle's last known reading, a warning shows so you can double-check.
The odometer is optional but worth the five seconds — it feeds mileage tracking, payroll mileage, and per-route profitability. Admins can review odometer photos on the web.
Pause, finish, and reopen the route
- While running, the header shows "Route Active" with elapsed time and "X of Y stops completed". Tap Pause for lunch or a personal errand — the clock stops and the header switches to "Route Paused" — then Resume to continue.
- Tap Finish when you're done. If every stop is handled, you go straight to the end-of-day Odometer Reading modal (reading + optional photo, or Skip) and the route completes.
If stops remain, a Finish Route sheet asks what to do with them:
- Move to Another Day — "Reschedule remaining stops to a different day." Pick which of the remaining jobs (all pre-selected, with Select All/Deselect All), choose a date from the next two weeks, and tap Move & Finish Route.
- Transfer to Another Tech — admins and owners only: "Assign remaining stops to a different technician." Pick the jobs, the technician, and optionally a date (defaults to "Same day (today)"), then Transfer & Finish Route.
- Skip & Finish — "Skip remaining stops and end the route." The leftover stops are marked skipped.
Unplanned (ad-hoc) stops can't be moved or transferred from this sheet — the sheet notes "Ad-hoc stops cannot be transferred and will be skipped." Move and transfer also need an internet connection; offline, only Skip & Finish is available.
Finished too early? The completed-route screen has a Reopen Route button ("Reopen to add more stops or jobs") — confirm, and the route is running again so you can add and complete more stops today.
The actions list
Everything you can start from the field lives in the Actions list at the bottom of the Route tab, grouped under headings:
- This Route — Create Route, Add Existing Job, Add Unplanned Stop, Unplanned Stops, Log Trip / End Trip.
- Sales — Leads, Create Quote. See invoices and leads on mobile.
- Billing — Invoices, Create Invoice.
- Create — Work Order, Maintenance Job, Customer, Service Location, Body of Water, Add Vehicle.
- Issues — Report an Issue, Technician Alerts.
Each row is permission-gated, and a heading only appears when at least one of its rows does — so a plain technician sees a much shorter list than an owner. Rows that need the server (creating things, Leads, Invoices) dim and say "Requires internet connection" when the phone is offline.
Reorder your stops
- 1Open the Stops tab. Remaining stops are numbered, and each card has a drag handle (⠿) on its right edge.
- 2Press and drag the handle to reorder. This works before the route is started, while it's running, and on future dates (select "Upcoming" and pick a date) — the route does not need to be started first.
- 3A drag done before the route starts (or on a future date) saves that day's custom order, which the route picks up when it's started.
- Future routes can also be reordered from the Routes tab: tap a route occurrence in the list to open its day, then drag stops by the handle. Drag handles only appear there for days that haven't been started yet — for a running route, reorder from the Stops tab instead.
- Make Next on a stop card jumps that stop to the front of the remaining order (only while the route is running); Skip removes it for today.
- Optimize (top right of the list) reorders the remaining stops by drive time using Google Maps.
- Completed and skipped stops appear below under Done and can't be reordered; the View button on any card opens its details.
Per-stop arrival times
Each remaining stop card on the Stops tab shows an estimated arrival-to-departure window, like "Est. 11:20 – 11:50 AM". It's chained from the route's start time, Google drive times between stops, and the expected time at each stop — based on the job's real service history when it has one, otherwise its configured minutes. The window replaces the old "{X} min" duration tag whenever an estimate is available, and reordering or optimizing changes the estimates.
- Once the route is running, estimates re-anchor to reality: finishing a stop late (or early) shifts every remaining stop's estimate.
- The stop you're currently servicing shows "Arrived 9:14 AM"; completed stops show the actual window, like "9:14 – 9:41 AM".
- The Upcoming tab shows estimated arrival times for future dates the same way (that day's route start time plus drive times). The Routes tab does too: tap a route occurrence to open its day — on today's route the cards also show live actuals, and remaining estimates re-anchor to your real progress.
- Admins see the same thing on the web: expand a live route card on the Field Operations page for each stop's estimated window (re-anchored to your actual progress), and every route's detail page under Route Schedule shows the same "Est." window per stop, switching to actual times once a stop is worked.
These are estimates for planning, not promised appointment windows. Estimates need an internet connection and a route with a start location (or your home address on file) — they don't show offline. Actual arrived/departed times always show.
Per-stop pause, the location check, and "On the Way" texts
- Each stop can be paused individually: while a stop is in progress its card shows Pause, and a paused stop shows a "Paused" badge plus a Resume button. You have to resume before the Service (complete) button comes back.
- When you resume a paused stop, the app checks your GPS position. If you're more than about 50 meters from the pool, it asks: "Not at Stop Location" — "You appear to be X away from the stop location…" — with Cancel and Continue Anyway. It's a guardrail, not a hard block.
- Stop cards can also show an On the Way button — tap it and the customer immediately gets a heads-up text; the button then reads SMS Sent. It only appears when texting is enabled for that job, the customer has a phone number with texting consent, and company SMS is on — see texting.
- The app can also detect that you've left one stop and send a push — "Send On the Way?" — that opens a confirm screen: "Send an 'on the way' SMS to {customer}?" with a Send SMS button. Either way, only one on-the-way text goes out per customer per route.
Stops from other techs, and moving stops around
- Add to My Route — on the Stops tab, a stop that belongs to another technician's route shows this button. Confirming adds the job to your route for that day and marks it skipped on theirs — handy when you're covering a teammate's pool.
- Add back to today — if you moved one of your own stops to another day and change your mind, the transferred-out card shows this to reclaim it onto today.
- Transfer Stops sheet — open a route day on the Routes tab and tap the transfer icon in the header (available to admins on any route, and to you on your own). Pick stops and send them to Another Day; admins also get a technician tab to reassign them. Works on any day, not just today.
- Move Remaining Stops (N) — while a route is in progress, the same day view shows this button at the bottom, pre-scoped to just the stops that are left.
Only real jobs can be transferred — unplanned stops stay put. For the office-side view of all this, see transfer and move jobs.
What the badges on stop cards mean
- UNPLANNED STOP — an ad-hoc stop, not a scheduled job; WORK ORDER — a one-time job; ADDED — a job added to this specific day rather than the recurring schedule.
- From {tech} — a stop transferred onto your route; To {tech} (or "Transferred out") — one you sent away.
- Status tags: the numbered chip is the stop's position, "Est. 11:20 – 11:50 AM" is the arrival estimate, "Arrived 9:14 AM" shows while you're on site, the green time range shows actuals once done, and Skipped / Paused mark those states.
The Map tab
- The Map tab shows the selected day's route: numbered stop markers, a Start marker (teal), an End marker (red), and the driving path drawn one color per leg — each leg matches its destination stop's color, and the final leg back to the end location is green.
- For today's date the drawn path begins at your live GPS position (the blue dot); for other days it begins at the route's start location.
- Tap the Start or End marker to open a Route Locations sheet, where you can search a new address and Save to change your own route's start or end location — no admin permission needed for your own route. Admins can also edit any route's start/end from that route's detail page on the web dashboard.
Log a trip without a route
Supply runs, oil changes, and parts pickups aren't route stops, but the miles still count. When no route is running, the actions list shows Log Trip ('Track a non-route trip'; needs the mileage-trips permission). The screen has two modes:
- Log Completed — "Enter both start and end odometer for a trip already taken." Pick the date (today or any past day — no future dates), the vehicle, a purpose, and both readings, then tap Log Trip.
- Start Live Trip — "Start tracking now. You'll enter the end odometer when you're done." Tap Start Trip; an Active Trip card then sits on the Route tab showing the purpose, vehicle, and start time, with a Complete Trip button that asks for the end odometer. The actions-list row also flips to End Trip while a trip is live.
- Purpose is one tap: Store Run, Oil Change, Parts Pickup, or Other (with a free-text field).
- Start and end odometer photos are optional, and a reading lower than the vehicle's last known one shows a warning — it flags typos without blocking you.
- Logging trips needs an internet connection. Trip miles flow into payroll mileage and vehicle history — see employees, time, and payroll.
Working offline
The app is built for dead zones. The status badge in the header tells you where you stand: "Offline (N)" with a count of changes saved locally, "No Internet", "Syncing", or "Sync Error". Tap it for the Connection Status sheet: "Your data is safe — completed jobs are stored on this device until they sync," a pending-changes count, and a recheck countdown.
- What works offline: viewing your route and job details, completing job checklists and taking photos, logging water chemistry, completing unplanned stops, and reporting issues. Everything queues and syncs automatically when signal returns.
- What needs the internet: starting and finishing a route, moving or transferring stops, creating things (routes, jobs, customers, quotes), invoices and leads, and the AI features (voice fill, dictation, test-strip scanning, George). Those rows dim with a "Requires internet connection" note, and blocked actions show a "No Internet" alert.
- If a queued change fails to sync — say an admin removed the job while you were offline — a "Changes Need Attention" review opens from the header badge. Each item explains what happened, shows your preserved work (notes, dates, chemicals), and offers Retry, a button to view the preserved notes, and Dismiss. Nothing you typed is silently lost.
- When your app version falls behind the minimum, an "Update Available" prompt appears with Update Now (opens the app store) and Later.
Completions sync to the dashboard in real time once online, and the customer gets a service report email after each visit (when the company has that turned on).
Frequently asked questions
Do I have to enter an odometer reading to start my route?
No — tap Skip on the Odometer Reading modal and the route starts without one. It's worth entering when you can: readings (and optional photos) feed mileage tracking, payroll mileage, and route profitability.
What happens to stops I don't get to?
Tapping Finish with stops remaining opens the Finish Route sheet: Move to Another Day (pick a date in the next two weeks), Transfer to Another Tech (admins and owners), or Skip & Finish. Moving and transferring need an internet connection; unplanned stops can only be skipped.
Can I reorder stops before I start the route?
Yes. Drag stops on the Stops tab before starting, or on any future date from the Upcoming tab or the Routes tab. The drag saves that day's custom order, and the route uses it when started.
Are the "Est." arrival windows promises to the customer?
No — they're planning estimates, not appointment windows. They re-anchor to your real progress as the day unfolds, so running late at one stop pushes every later stop's estimate.
Why don't I see arrival estimates?
Estimates need an internet connection and a route with a start location (or your home address on file). Actual arrived and departed times always show, even offline.
Why is my actions list shorter than my boss's?
Every row in the actions list is permission-gated, and a heading only appears when at least one of its rows does. Owners and admins see more rows than a plain technician role.