The technician timesheet: travel, on site, and the hour nobody codes
In short
A field timesheet is a list of segments, not a daily total. Each carries a job or an explicit no-job code, a start and an end, a category — travel, on site, waiting, shop, supplier, non-productive — and how it was captured. Without the category an 8-hour day cannot be allocated; without the source you cannot tell a measured hour from a remembered one.
Key takeaways
- The unit is a segment with a job and a category, never a daily start and finish.
- 6 categories cover a truck day: travel, on site, waiting, shop, supplier, non-productive.
- Store the capture source. Tapped, geofenced and inferred times are not interchangeable.
- Tap-only capture under-reports gaps, because nobody clocks a 12-minute wait for access.
- Never overwrite a captured time. Append a correction with author, reason and stamp.
A usable field timesheet is a list of time segments. Each names the job it belongs to — or an explicit code saying it belongs to none — with a start, an end, a category, the source that produced those times, and an append-only trail of corrections. A day is the sum of its segments.
The reason is arithmetic. A technician clocks on at 07:00 and off at 16:30, and the platform reports 9.5 hours. The 5 jobs on the board account for 6.2 hours on site. The remaining 3.3 hours are real, paid and invisible, and every labour report built on that day is wrong. The record makes those hours nameable.
One segment, field by field
| Field | What it holds | Why it is not optional |
|---|---|---|
| Job reference | The job id, or a no-job code: shop, supplier, yard. | A blank is how unallocated hours vanish. |
| Start and end | Both stamps, with the device time zone. | Duration alone cannot reconcile to a board. |
| Category | Travel, on site, waiting, shop, supplier, non-productive. | Without it a 9-hour day is one flat figure. |
| Capture source | Tap, geofence, inferred, or entered later. | Decides how far a downstream figure is trustworthy. |
| Technician and role | Who, at what rate class, apprentice or second person. | 2 people on 1 job is the commonest doubled-labour bug. |
| Edit trail | Original values, corrections, author, time, reason. | A rewritable time settles no dispute. |
Corrections are normal — a technician forgets to stop the clock and the segment runs to 19:00 — and the response is an appended correction, never an overwrite. Append-only is also what lets segments survive a sync collision that loses free-text notes on the same record, the asymmetry in the dispatcher's change and the tech's change both vanished.
The 6 categories that make a day add up
- Travel. Between stops, first and last legs flagged separately — whether the drive from home counts is decided in does the drive from home count.
- On site. The only category most platforms record well, and the one mistaken for the whole day.
- Waiting. Locked gate, no keyholder, tenant out, induction queue. Rarely captured, and the biggest source of unexplained hours.
- Shop. Loading, restocking, paperwork, van maintenance. Recurring, never billable.
- Supplier. Counter collections and returns, belonging to the job that caused them.
- Non-productive. Training, toolbox talks, breaks, admin. Naming it stops it smearing into the on-site figure.
The hours nobody codes do not disappear. They land wherever is easiest to tap.
Tap, geofence or inferred: where the times come from
Tap-only capture under-reports the gaps: a technician annoyed about a locked gate does not open an app to log a waiting segment. That is not a training problem. Geofencing is the usual supplement, and it is approximate.
Clocks that disagree, and the day captured with no signal
Time is the one field where the device is an unreliable narrator: clocks drift, time zones change mid-route, and a user can set the clock by hand. Capture 3 values per stamp — device wall-clock, a monotonic elapsed reading that cannot move backwards, and the server-received time at sync. A gap between the first 2 flags the segment for review.
Offline, every segment is a queued write — the mechanism in what offline-first means for a work order. One case needs handling: a session expiring mid-shift can strand a clock-out on a device that cannot reach the server, the failure in logged out in a basement. Capture it anyway, reconcile later.
What the timesheet must not be asked to do
It records duration and category. It does not price them. Loaded rates, overhead and per-job margin belong to what a job cost record has to contain; a rate stored on the segment freezes an annually changing number into a record kept for years.
Nor is it a utilisation target — it supplies the honest input to one, and to route planning, because measured on-site durations by job type stop a recurring schedule sliding later each cycle, the drift in quarterly pest services drift later every year. Segments captured beside the photo set a completed job should carry make a disputed visit answerable a year later.
As a build it is small and high-leverage: 6 categories, 1 segment table, an append-only edit trail, a confirmation on every geofenced stamp — work we scope under MVP and product builds, within the technician's phone and our field service work.
Frequently asked questions
Short answers to the follow-ups this page tends to raise.
What should a field service timesheet capture per job?
A segment per continuous block of work: job reference, start and end stamps with time zone, category, capture source, technician and rate class, and an edit trail. Several segments per job are normal — travel, on site, a wait for parts, back on site — and collapsing them into one duration destroys what the record is for.
Why do technician hours never reconcile with job hours?
Because the gaps are not captured. Clock-on to clock-off includes travel, supplier runs, shop time and waiting for access, none of which attaches to a job unless the app asks. The paid day minus the sum of on-site segments is the size of the blind spot.
Is geofencing accurate enough to clock a technician in and out?
Not on its own. Documented behaviour includes a recommended radius of 100 to 150 metres, latency reaching several minutes when a device has been stationary, and a dependence on network location that fails without a data connection. Use it to propose a segment the technician confirms.
Should technicians be able to edit their own recorded times?
Yes, with an append-only trail. Blocking edits produces worse data: the fix moves to a text message and the record stays wrong. Allow it, keep the original visible, require a reason — then review corrections in aggregate, since a technician correcting 40% of segments is telling you the capture method does not fit.
- time tracking
- field data
- mobile apps
- record design
The work behind this page
Builds from our portfolio that this page draws on.
FieldRoute
An AI field-service platform that auto-dispatches the best-matched technician, optimizes routes, and tracks first-time-fix against every SLA.
OperationsHaulBoard
An AI freight load board that matches every open load to the best-fit carrier, prices each lane on live spot-rate data, and tracks broker margin on every move.
LogisticsRead next
- Offline-first, described as what happens to one work orderA local store, a write queue, a sync cursor and a reconciliation step, traced through one job from arrival to completion with no signal at any point.definition
- A home warranty dispatch is not a customer callA warranty dispatch arrives with an authorisation number, a covered scope someone else defined, and a payer who is not in the house. Booking it like a retail call produces uncloseable jobs.definition
- A no-heat call got booked as a routine tune-upA job sits on the board at routine priority and the recording describes an emergency. Before retuning anything, join booked jobs to their transcripts and score them against your own tier table.diagnostic
- Callers are hanging up in the first eight secondsAnswer rate looks healthy, booking rate does not, and the recordings are 9 seconds long. The agent is being judged before it has had a chance to do anything.diagnostic
- Customers swear they never got the on-my-way textThree faults produce one complaint. A per-job trace of trigger, send, carrier receipt and actual arrival tells you which of the three you have, usually inside a week.diagnostic
- Dispatched, en route, on site, complete: four clocks, one jobFour timestamps, five spans, and only one is the number a dispatch board should be packing. Choosing the wrong span makes every day optimistic by the same predictable amount.definition
Working on something in this space?
Tell us where you are in a sentence or two. We'll tell you honestly whether we're the right team, and what a sensible first slice of the work looks like.
Start the conversation