How to Track Crew Hours Across Multiple Job Sites
When a crew splits across three sites and some of them move mid-day, the hours stop landing on the right job. Here is how small contractors keep time accurate by site without chasing anyone down on Friday.

Every Hour Is Real, but Half of Them Are on the Wrong Job
Most small contractors aren’t running one job. They’re running three, with a crew that gets sliced across all of them. Two framers at the Maple Street build, three more at the strip-mall tenant fit-out, and the foreman bouncing between both while one guy gets pulled to a warranty fix for the afternoon.
Every one of those hours is real, and every one gets paid. The problem is the second question: which job does it belong to? By Friday that answer lives in nobody’s notes and everybody’s vague memory. So someone in the office splits the week by feel — “put him down for three days at Maple, two at the strip mall” — and that guess becomes the labor cost on both jobs. One job looks fat, one looks lean, and neither number is real. You bid the next two off fiction.
Call it the multi-site tax. And it’s bigger than the missed punches and buddy punching that get more attention, because it corrupts good hours, not just bad ones. The time was honestly worked. It just landed on the wrong job — and job cost is the one number your next bid leans on.
How a Bad Hour Splits Your Job Cost
The fix has to target the specific moments where the wheels come off. Every one of them ends as a wrong line on a job-cost sheet.
The mid-day move. A worker starts at one site and gets sent to another after lunch. On a paper timesheet that whole day usually gets written to one job, because splitting it means remembering the exact handoff time days later. Nobody does. So eight hours of labor cost lands on one job and zero on the other, and both numbers are now fiction.
The crew that splits Monday and recombines Thursday. Different people, different sites, different days. Reconstructing who was where and when, from a single weekly timesheet, is a job in itself — and it produces a best-effort guess, not a record. That guess is what populates the labor column on three different jobs at once.
The job nobody coded. A quick warranty callback or a punch-list afternoon gets lumped into the main job because there was no easy way to tag it separately. Now your “finished and profitable” job is silently absorbing the cost of unbilled rework, and the change order you could have billed never gets written.
The per-location pricing trap. Some time-tracking tools charge you for every site you add. For a business whose whole model is running many sites at once, that’s a tax on doing your actual job. Worse, it pushes contractors toward lumping sites together to save money — which buries the per-job detail you needed in the first place.
Letting the Job Site Code Its Own Hours
The fix is to make the job site assign the hours, instead of a worker’s memory.
A geofence per job site. You draw a boundary around each site once, when you set up the job. From then on, a clock-in inside that boundary automatically belongs to that job. The worker doesn’t choose from a dropdown of forty job codes with gloves on — crossing onto the site does the coding for him. Drive to the second site, clock in there, and the new hours land on the second job on their own.
A clean split on the mid-day move. Clock out of site one, clock in at site two, and the day divides itself between the two jobs with real timestamps on each block. The exact moment that kills paper timesheets is the moment geofenced clock-ins handle best, because neither the worker nor the office has to reconstruct anything. Each job ends the day with the labor cost it actually incurred.
Offline capture for dead-zone sites. Plenty of job sites have no signal. A time clock built for the field records the punch and its location offline and syncs when a bar of service comes back, so a no-signal site still produces correctly coded hours instead of a hole in the record.
Live labor cost as the job runs. Instead of waiting for Friday’s stack of timesheets, you see who’s clocked in, at which site, right now — and the hours rolling onto each job as they happen. A job already eating more crew hours than you bid is a problem you catch on Tuesday, not one you discover after the work is poured.
Flat pricing, however many sites you run. A per-seat time clock with no per-location fee means twelve active sites cost the same per worker as two. You add a job, you draw a fence, you move on. No line item, no reason to lump sites together to dodge a charge.
Bidding off Numbers Instead of Memory
When the site codes the hours, your job-cost numbers stop being a feel-based split and become a record. The next bid rests on what each type of work actually cost, instead of what someone half-remembered.
If your crew is spread across more sites than you can keep straight on a timesheet, see how a time clock built for construction attributes hours by site automatically, or put ShiftFlow on your next batch of jobs and let the geofences do the coding.
Frequently Asked Questions
Why is it so hard to track hours across multiple job sites?
A single crew can split across two or three sites in a week, and individual workers get pulled from one job to another mid-day. The hours are real, but by Friday which job they belong to lives only in someone’s memory. Without a clock-in that knows the site, the split gets reconstructed by guesswork — and the guess becomes your job cost.
How do geofences assign hours to the right job?
You draw a boundary around each site once. When a worker clocks in inside that boundary, the hours attribute to that job automatically. Drive to a second site and clock in, and the new hours land on the second job. The site assigns the time, so nobody has to remember which job they were on three days ago.
What happens when a worker moves between sites in the same day?
They clock out of the first site and clock in at the second, and each block of time carries its own job and location. The day’s hours split cleanly between the two jobs, instead of getting dumped onto whichever one the worker names later. That mid-day move is exactly where paper timesheets fail and geofenced clock-ins hold up.
Do I need separate software for each job site?
No — and avoid tools that charge per location, because running many sites is the normal state of construction, not an upgrade. A flat per-seat time clock lets you add as many job sites as you run at no extra cost, so a contractor with twelve active sites pays the same per worker as one with two.






