Light-Assembly Job Tracking: Routing Work That Isn't Machining
Rovaryn Digital7 min read
The Assembly Floor Doesn't Look Like a Machine Shop, But It Still Needs a Route
A contract assembler picks up a purchase order for 2,000 units of a bracket-and-harness sub-assembly. There's no G-code, no tool list, no spindle to program. The job moves through kitting, sub-assembly, final assembly, functional test, and pack. Nobody calls that a "setup" or a "run" the way a CNC shop would — but every one of those five stations still consumes labor hours against a job number, and at month's end, somebody still has to answer whether the job made money.
This is where a lot of light-assembly and contract manufacturing shops fall through the cracks of shop-floor software. Most traveler systems, and most of the language written about them, assume a machining or fabrication context — operations named "OP10 mill," "OP20 deburr," things with cycle times pulled from a CAM program. Assembly work doesn't route that way, and shops that do it often end up tracking labor on a whiteboard or a spreadsheet because nothing on the market speaks their language.
The mechanism underneath is identical, though. A router breaks a job into sequential operations. A traveler carries that router with the physical job (or, on a tablet, carries it digitally) so whoever's at the station knows what to do and can log what they did. Time gets clocked against each operation. Actual gets compared to quoted. That works whether the operation is "face mill the bore" or "seat connector and torque to spec." This article walks through building that structure for light assembly and contract manufacturing job costing specifically — not retrofitted machinist language, but stations and standards that match how assembly work actually moves.
Building a Router for Non-Machining Operations
The first job is naming the operations honestly. A CNC router names each machine pass. An assembly router names each station or task cluster the unit physically passes through. For most light-assembly shops, that's some version of:
- Kitting — pulling and staging components against the bill of materials
- Sub-assembly — building intermediate units (a harness, a bracket weldment, a populated PCB) before final build
- Final assembly — putting the sub-assemblies and remaining components together into the finished unit
- Test / functional check — continuity, torque verification, visual or functional inspection against the spec
- Pack and ship prep — labeling, boxing, palletizing
Each of those gets a standard time, the same way a machining operation gets a standard cycle time — built from a time study, from the last similar job, or from an engineering estimate if it's a first article. The router is a work center map for the assembly floor: which task happens where, in what order, and how long it's supposed to take. It doesn't need to know anything about spindle speeds. It needs to know sequence and standard, which is exactly what a machining router needs too.
The Traveler: Adapting a Machinist's Document for Assembly Steps
Once the router exists, the traveler is the document (paper or digital) that rides with the job through those stations. For light assembly, a traveler typically carries: job/PO number, part number and revision, quantity, the BOM reference, and a line per operation with space to log who ran it, when, and how long it took. Where a machinist's traveler might have a tolerance callout next to each dimension, an assembly traveler has a checkbox next to each build step or a reference to the work instruction sheet for that sub-assembly.
The format choice — printed with a barcode or QR code scanned at each station, versus a digital view on a shop tablet — matters less than whether the operations on it match how the floor actually works. A shop traveler template built for machining, forced onto an assembly line, tends to get ignored within a month because the operators can't map it onto what they're doing. A template built around kitting, sub-assembly, final, test, and pack gets used because it reads like the job.
Clocking In: Downtime Reason Codes for Assembly Work
Assembly labor has its own downtime pattern, distinct from a machining cell. A CNC operator's downtime is often setup and waiting on material. An assembler's downtime is more often waiting on a kit that wasn't staged, waiting on a sub-assembly that isn't finished yet, or rework because a component didn't seat correctly the first time.
The clock-in mechanism is the same regardless of vertical: an operator taps in at a station (kiosk or mobile), works the operation, and taps out — logging a reason code if the clock ran without productive work. In WorkTickets, that's a one-tap kiosk or mobile clock-in with reason codes for setup, run, waiting, and rework, plus manual entry with supervisor approval for stations where a shared tablet doesn't make sense. For assembly, "setup" often means kitting delay, and "waiting" often means waiting on an upstream sub-assembly station — the codes translate; the shop just has to decide what each one means on their floor and write that down once.
Actual vs. Quoted Labor: Why It Matters More in Contract Assembly
Contract manufacturing job costing lives or dies on this comparison. A contract assembler usually quotes a per-unit labor number based on a time study or a similar past job, then runs a batch of hundreds or thousands of units. If the actual time per unit on final assembly runs 15% over quote, that gap repeats across every unit in the batch — it compounds in a way a one-off machined part's variance doesn't.
That's the case for logging actual time against the operation, not just against the job as a whole. If the variance shows up in kitting, the standard was probably wrong or the BOM changed. If it shows up in final assembly, something about the build sequence or the components themselves is taking longer than estimated. Actual-vs-quoted labor by operation, tracked from the first units of a run rather than discovered at final invoicing, is what lets a shop catch a bad quote on unit 50 instead of unit 2,000.
Scrap and Rework on an Assembly Line
Rework in assembly rarely looks like scrap in a machining sense — it's rarely a part thrown in a bin. It's a connector reseated, a fastener retorqued, a sub-assembly pulled back apart and rebuilt. But it still consumes labor hours that weren't in the quote, and it still needs to be tied to the operation that caused it, not just logged as a vague line item. If ten units in a row need rework at final assembly because a supplied sub-assembly is out of spec, that's a signal worth catching at unit ten, not at the customer return. Logging rework against the causing operation — the same mechanism a fabrication shop uses to trace a recurring weld defect — gives an assembly shop the same traceability without needing a metallurgist to interpret it.
Getting Started: Template and Trial
None of this requires an ERP deployment sized for a much bigger shop. WorkTickets is built as a standalone, SaaS-native execution-and-costing layer, priced and scoped for shops that never had an ERP line item to begin with — routing, traveler generation, clock-in with reason codes, actual-vs-quoted labor, and operation-level scrap/rework logging, without the inventory, scheduling, and purchasing modules a contract assembler doesn't need yet.
If the floor you're routing looks more like kitting and final assembly than mill and lathe, start with a shop traveler template built around those stations rather than adapting a machinist's document. Pair it with a look at how digital traveler shop floor tracking works on a tablet versus paper, and at how to track labor hours by job manufacturing once the router's in place. The finishing/assembly traveler system in the store is built specifically around this station sequence, and the 14-day trial gives you room to route a real job against it before committing to a tier.


