Skip to content
← All postsTrade guides9 MIN READ

Time Tracking for Solar Installers: Labor by Project Across a Multi-Day Array

A solar install is a multi-day project, not a shift, and hours end up scattered across days, phases, and crews. Here's the method for capturing labor by array so you know real cost per install and payroll exports clean.

JULY 12, 2026 · BY THE CLOX TEAM

A solar install isn't a shift. It's a project that runs across several days, moves through distinct phases, and often has two crews at two addresses on the same morning. Racking goes up one day. Modules and rail land the next. The electrician sets the inverter and pulls the DC and AC runs after that. Then everything stops until the utility and the AHJ sign off.

By the time the array is producing, the labor that built it's scattered across four or five calendar days and two or three crew members. If you're tracking hours on paper or in a group text, you can't say what that array actually cost you to install.

This guide is about the method: how to capture labor by project across a multi-day array. When the job closes you know your real cost per install, your crews stay coordinated across sites, and payroll exports clean without a Sunday-night reconstruction. If you want the case for why Clox fits solar specifically, that lives on the solar installers page. Here we're talking about the workflow.

01

The 6:45 a.m. reality on a solar crew

The lead pulls into the yard before seven, loads rail and clamps and a couple of pallets of modules, and reads off the day. One truck goes to the residential reroof-and-mount on the north side, the other to the ground-mount out past the county line where there's barely a bar of signal. Both are the same job in your head, but they're different addresses, different crews, and possibly different phases of two different arrays.

The thing that breaks tracking here is not laziness. It's that the person who knows which hours belong to which array is on a roof with nitrile gloves on, and the person who needs that number for the invoice is at a desk two days later. The gap between those two people is where cost data gets lost.

The fix is to move the tagging to the moment of the punch, on the phone that's already in the installer's pocket, so nobody has to remember anything after the fact.

What a solar crew actually bills by

Roofers bill by the square. Framers bill by the linear foot. Solar installers bill the customer by the system, usually priced off watts or kilowatts, but you don't cost the job that way. You cost it in labor hours against the array.

A 9.6 kW residential rooftop and an 11 kW ground-mount can quote within a few hundred dollars of each other and cost you wildly different labor. The ground-mount ate two extra days in trenching and pier setting, and the rooftop ate a half day fighting an old shake roof. You only find that out if every hour was tagged to the array while it happened.

The unit that matters for costing

Price the system by the watt if that's how you quote. Cost it by labor hours per array, per phase. Those are two different numbers, and the second one is the one that tells you whether your bids are holding up as your crews grow.

02

The method: one project per array, tagged at the punch

The whole method comes down to a single discipline. Every array you install is one project. Every installer, every day, clocks in against that project from the phone before the first module comes off the truck. When the punch carries the project tag, the labor sorts itself. You're not reconstructing anything at the end of the week; the hours were already in the right bucket the moment they were worked.

9:42
Clox.
Marcus Bell
Donovan Electric
NOT CLOCKED IN
9:42 AM
Tue, Jun 16
Project
Service Calls
Add a note (optional)
Clock in
All punches synced
RECENT SHIFTS
Mon, Jun 15
7:01a to 3:32p · Service Calls
8h 31m
Sun, Jun 14
7:00a to 2:00p · Maple Street
7h 00m
1Tap Clock In on-site
4:06
Clox.
Marcus Bell
Donovan Electric
ON THE CLOCK
6:24:17
Started 9:42 AM · Service Calls
Service Calls
Take break
Clock out
All punches synced
RECENT SHIFTS
Mon, Jun 15
7:01a to 3:32p · Service Calls
8h 31m
Sun, Jun 14
7:00a to 2:00p · Maple Street
7h 00m
2On the clock, time and worksite recorded
One tap to clock in, with the array already selected. The project tag rides along with the punch, so hours land against the right install without anyone writing anything down.

Setting this up on your own crew takes an afternoon, not a rollout. You can start a free trial and put your next job on it today. It runs 14 days, needs no card, and is backed by a 30-day money-back guarantee.

In practice this means you create the project once, when the job is sold. Name it something the crew will recognize on a phone at 6:45 a.m.: the customer name and the address, not an internal job number nobody memorized.

From then on the installer's clock-in screen shows the array they're assigned to, they tap once, and they're on the clock against that project. When the crew splits to a second site, the second crew clocks in against the second array. Two addresses, two projects, zero confusion at payroll.

Multi-day and multi-phase, without losing the thread

Because the project outlives the day, the multi-day array stops being a tracking problem. Racking day, module day, electrical day, and commissioning day all land against the same project. When you pull the report, you see the full labor arc of that install:

  • How many hours went in before the inverter was even set.
  • How much the inspection-day wait cost you.
  • Whether the second crew you sent on day three actually shortened the schedule or just added hours.
PhaseCrewHoursRunning total
Day 1: Racking and flashing3 installers22.522.5
Day 2: Rail, modules, and clamps3 installers20.042.5
Day 3: DC and AC runs, inverter set2 installers plus lead16.058.5
Day 4: Trim-out and pre-inspection2 installers9.568.0
Day 5: Inspection wait and commissioning1 lead5.073.0

How one array accumulates labor across a typical multi-day install. Illustrative hours. Every row is a phase tagged to the same project, so the total is your real labor cost for that array.

That 73-hour total is the number you could never get cleanly off paper timecards, because on paper the hours were organized by person and week, not by array and phase. Tag at the punch and the array view assembles itself.

03

Keeping two crews coordinated across two sites

Solar rarely runs one crew on one roof all week. You have a racking crew finishing one array while the electrical crew starts the next, and a lead bouncing between both. Scheduling the shift against the array, and enforcing clock-in only during that scheduled window, keeps the two from bleeding into each other. If an installer is scheduled on the ground-mount today, that's the project their clock-in offers, and their hours can't accidentally land on yesterday's rooftop.

app.getclox.com/schedule
Clox
TodayTimesheetScheduleTime OffTeamProjectsWorksitesReportsMore ▾
?FrankFD
My work
Schedule
Plan coverage for the months ahead. Click any shift to edit or delete.
+ Schedule shift
Jul 20 to Jul 26
ListBoard
Mon 20
Tue 21
Wed 22
Thu 23
Fri 24
Sat 25
Sun 26
Marcus Bell
7:00 AM to 3:30 PM
Riverside Heights
7:00 AM to 3:30 PM
Riverside Heights
7:00 AM to 1:00 PM
Service Calls
Cody Nguyen
7:00 AM to 3:30 PM
Hudson Yards
7:00 AM to 3:30 PM
Hudson Yards
Tasha Coleman
8:00 AM to 4:00 PM
Service Calls
8:00 AM to 4:00 PM
Service Calls
Drag a shift to another day or person. Click a shift to edit or move it.
Schedule each crew against the array and the day. Enforcement windows keep clock-ins tied to the shift that was actually planned, so split crews don't mix up their hours.

For a lead who genuinely splits a day across two arrays, the move is simple: clock out of the first project when they leave, clock in to the second when they arrive. Two clean punches, two clean buckets, no mental math at the end of the week about how to divide their eight hours.

If you fence a single residential worksite so clock-ins are locked to that address, that's a deterrent worth setting up. We won't re-explain how geofencing works here; the mechanics live in the geofencing pillar.

Name projects for the person holding the phone

An installer on a ladder isn't going to scroll for "PRJ-2026-0417." Name the project "Delgado, 118 Marlow" so the crew taps the right array on the first try. Good project names are the difference between clean data and a support call from the roof.

04

Roofs and rural sites: the punch has to work with no signal

A residential rooftop with the truck parked in a dead zone, or a ground-mount an hour out of town, is exactly where a cloud time clock quietly fails. The installer taps clock-in, sees a spinner, and either gives up or writes a time on their hand to enter later. Both outcomes corrupt your cost data.

The punch has to be captured on the device the instant it happens and sync when a bar of signal comes back, so the timestamp is the real one and not a guess typed in from the parking lot.

9:42Airplane Mode
Clox.
Marcus Bell
Donovan Electric
ON THE CLOCK
2:18:04
Service Calls · since 9:42a
No signal. Punch saved.
Saved on this phone with its real time. Syncs automatically when you're back online.
1 punch waiting to sync
The clock-in is captured on the phone with its real timestamp even with no signal, then syncs when the crew rolls back into coverage. Dead-zone arrays still cost out accurately.

This isn't a nice-to-have for solar. Ground-mounts and rural residential are a real share of the work, and if half your installs are in weak coverage, an online-only time clock is systematically undercounting the hours on your hardest, most labor-intensive jobs. Offline capture is what keeps those arrays honest in your numbers.

05

Reading cost per array, then bidding the next one from it

Once every array carries its own tagged labor, the report is where the method pays off. You're no longer asking "how many hours did the crew work last week." You're asking "what did the Delgado array cost me to install, and how does that compare to the last three like it." That's the question that protects your margin as you take on more systems than you can hold in your head.

app.getclox.com/reports
Clox
TodayTimesheetScheduleTime OffTeamProjectsWorksitesReportsMore ▾
?FrankFD
Manage
Reports
Aggregate hours across your team. Spot overtime before it becomes a payroll surprise.
Dates: This week ▾
Just meAll staff
Export ▾
SummaryDetailed
FiltersDisplay ▾
Total team hours
129h 59m
125h 3m regular · 4h 56m overtime
Estimated payroll
$5,344
Regular plus overtime at each person’s saved rate.
Hours by employee
Frank Donovan
39h 19m · 2h 28m OT
Jordan Avery
34h 28m · 2h 28m OT
Diego Ramirez
14h 4m
Renee Okafor
13h 46m
Priya Patel
8h 12m
Marcus Bell
8h 10m
Cody Nguyen
7h 45m
Tasha Coleman
4h 15m
Labor hours grouped by project. Cost per array at a glance, with the phase-by-phase hours behind each total, so you can see where a job ran long.
73 hrs
Real labor on one tagged array, assembled across five days without paper reconstruction
2 sites
Crews split across two addresses, each punch landing on the right project
0
Sunday-night rebuilds of who worked which array, once the tag rides the punch

The payoff loop is the same one every trade wants and few actually close: bid the next array from the actual hours of the last one, not from memory. If your last three comparable rooftops came in fifteen to twenty hours over the phase estimate, you bake that into the next quote and stop giving margin away one array at a time.

For the broader version of this argument across trades, the small-crew job-costing guide walks through the bid-versus-actual habit in detail.

06

Clean export, so payroll is not a reconstruction

The last mile is payroll, and this is where tagged hours save the office its worst afternoon. Because overtime and break math are already handled and every hour is already bucketed, you export once and hand it off. Clox exports to:

  • Gusto, ADP RUN, ADP Workforce Now, and Paychex Flex.
  • QuickBooks Online as CSV, or an optional live QuickBooks Online sync.
  • QuickBooks Desktop as IIF.
  • Zapier if you want it automated.

Overtime that spans a multi-day array is calculated for you rather than reassembled by hand.

app.getclox.com/reports
Clox
TodayTimesheetScheduleReportsMore ▾
Week of Jun 9 to 15
129h 59m · 2 with overtime
Export
EXPORT AS
CSV — QuickBooks Online
Straight into your payroll
CSV — ADP
RUN or Workforce Now
CSV — Paychex Flex
Standard payroll import
CSV — Gusto
Hours per employee
PDF timesheet
Every punch, break, overtime — for your CPA
8 employees · Mon to Sun · approved129h 59m
Approved hours out to your payroll system in one file. Overtime and breaks already computed, every hour already tagged to its array.

Overtime and prevailing wage vary by where you work

Some solar work, especially public and commercial jobs, can fall under prevailing-wage or certified-payroll requirements, and daily-overtime rules differ by state. Clox does the tracking and the standard overtime math; it doesn't decide your wage determination for you. Check your state and the specific agency on the job before you rely on any single number.

There's one more solar-specific benefit to tagged, exported hours. When a manager edits a shift after the fact, the crew member's certification of that shift is cleared and they re-certify, and the record is tamper-evident once captured.

That matters on solar because so much of the labor happens where nobody in the office was watching. Being able to show a clean, integrity-checked labor record per array is useful when a homeowner questions an invoice or a commercial GC wants backup for a change order.


07

The method in five steps

  1. One project per array. Create it when the job sells, name it by customer and address so the crew recognizes it on a phone.
  2. Tag at the punch. Every installer clocks in against the array before the first module comes off the truck. No after-the-fact reconstruction.
  3. Schedule split crews against the array. Enforcement windows keep two sites from bleeding hours into each other; the lead clocks out and back in when they move.
  4. Trust the offline punch. Roof and rural clock-ins capture on the device and sync later, so your hardest arrays are counted accurately.
  5. Read the array, then bid the next one from it. Cost per array in the report; export clean to payroll; feed the actuals back into your next quote.

None of this asks the crew to do more. It asks them to do one thing, one tap against the right array, at the moment they were already clocking in. Everything downstream, the cost report, the coordination, the clean export, falls out of that single habit.

See how Clox fits a solar crew
Project tagging per array, split-crew scheduling, offline clock-in for rooftop and ground-mount sites, and payroll-ready exports. The solar installers page shows how it maps to your workflow.
Time tracking built for field crews
The wider playbook for crews that work away from the office: offline capture, scheduling, and getting real labor data off a jobsite and into your numbers.

If you want to try the method on your next array, you can start a free trial. It runs 14 days with no card required, and there's a 30-day money-back guarantee. You can tag a real install end to end, pull the cost-per-array report, and see whether the number matches what you thought that job cost you.

Time tracking for the trades
The hub guide: pick the right setup for your crew and see every trade.

Keep reading

Trade guidesTime Tracking for the Trades: Pick the Right Setup for Your CrewTrade guidesTime Tracking for Electricians: Journeymen, Apprentices, and Prevailing-Wage JobsTrade guidesHow Plumbers Track Hours per Job (Service Calls, Rebuilds, and 2 a.m. Emergencies)

Friday becomes a review, not a reconstruction.

14 days free, no credit card30-day money-back guarantee$29/month includes your first 3 usersEvery feature on the one plan

Managers run Clox on the web. Crews clock in from their phones.