The Small Job Shop Guide to Operation-Level Execution and Job Costing
Rovaryn Digital15 min read

When the Quarter Closes and Nobody Can Explain the Margin
The invoices went out. The jobs shipped. Revenue for the quarter looks fine on the QuickBooks summary. And yet the owner and the shop supervisor are sitting across a desk from each other trying to figure out why gross margin came in three points lower than it did last quarter — with no way to say which jobs did it. Was it the aerospace bracket run that needed three extra setups? The weld fixture job where two guys stood around waiting on a part from outside processing? A scrap run on a job nobody logged? Nobody knows, because nobody captured labor and scrap at the level where the answer lives: the individual operation, on the individual job.
This is the default state for a huge share of small job shops. Quoting happens from feel and history. Time gets tracked on paper or a generic time clock that knows who worked, not what job or what operation. The traveler, if one exists, is a printed sheet that gets initialed and filed, not a record anyone mines for cost data. QuickBooks handles the accounting fine — it was never built to tell you that Job 4471's second operation ran 40% over the quoted hours.
This guide walks through the mechanism that fixes that: the loop from routing to traveler to operation-level clock-in to actual-vs-quoted labor, and how scrap, burden rate, and work-center visibility all attach to it. No ERP required.
What a Job Shop Execution and Costing Guide Actually Covers
It helps to be precise about scope before going further, because "shop floor software" gets used to describe wildly different things. A full ERP handles quoting, purchasing, inventory, scheduling, and accounting in one system. A finite-capacity scheduler handles sequencing machines against a calendar. Neither of those is what this guide is about.
A job shop execution and costing guide, in the sense used here, is about one specific loop: turning a routing into a traveler, capturing real labor and downtime against that traveler at the operation level, and rolling the result back up into a comparison against what the job was quoted to cost. That loop — routing to costing — is the smallest unit of shop-floor truth that actually explains margin. It doesn't replace a scheduler, an MRP system, or QuickBooks. It sits between the quote and the invoice and answers the question those systems can't: what did this job actually cost to run, operation by operation, compared to what it was supposed to cost?
For a shop running CNC machining, sheet metal fabrication, welding, plastics fabrication, or contract assembly with somewhere between five and fifty people on the floor, that loop is usually the highest-leverage piece of software they haven't bought yet — not because it's exotic, but because it's the one closest to where the money actually leaks.
The Routing: Where Every Job's Cost Story Begins
Every job's cost story starts with the routing — the ordered list of operations a part number goes through, along with the standard time expected at each one. Deburr, then mill, then bead blast, then inspect, then pack: each step gets a work center and a quoted number of hours or minutes.
The routing is also where quoting accuracy either holds up or falls apart. If the routing says operation three should take 0.4 hours per piece and the shop has never checked that number against what actually happens on the floor, the quote built on it is a guess dressed up as a number. A job costing for machine shops approach treats the routing as a living document — something that gets corrected by real data, not something typed once and left alone for five years.
Anyone building this loop for the first time should also get clear on terminology, because "router" and "traveler" get used interchangeably in casual shop conversation but describe two different things. The distinction matters enough that it's worth reading in full: see traveler vs. router in manufacturing for the operational difference.
The Traveler: Carrying the Routing Onto the Floor
Once a routing exists for a part number, a specific job against that part number needs a traveler — the order-specific document that follows the job through the shop, carrying the routing, the operations, and the operator and quality sign-offs as the job physically moves from station to station. A traveler can be a printed PDF with a barcode or QR code that gets scanned at each work center, or a digital version pulled up on a shop tablet or mobile device. Either way, its job is the same: make sure whoever is standing at the machine knows exactly what operation they're running, against exactly which job, without having to ask.
What is a traveler doing, mechanically, that a paper router clipped to a job jacket doesn't do as well? It's the single artifact that ties three things together in one place: the plan (the routing), the execution (who ran what, when, and how long it took), and the outcome (good parts, scrap, rework). For a full breakdown of the document itself, see what is a manufacturing traveler.
This is also where WorkTickets' own scope starts: the platform builds the routing per part number, generates the traveler in either printed or digital form, and carries it forward into every step below. It does not do finite-capacity scheduling or dispatch sequencing — that's a different layer, deliberately not this one.
Operation-Level Clock-In: Setup, Run, Waiting, and Rework
A generic time clock tells you Employee 14 worked 8.2 hours today. It does not tell you how those 8.2 hours split across jobs, let alone across operations within a job — and it says nothing about why an operation took longer than quoted. That distinction is the difference between a time clock and shop floor execution in the sense that actually feeds job costing.
The mechanism that closes that gap is operation-level clock-in, typically through a shared kiosk on the floor or a mobile view an operator carries, where clocking in requires selecting the job, the operation, and — critically — a downtime reason code when the clock isn't running productively: setup, run, waiting, or rework. A supervisor can review and correct manual entries before they post, which matters because paper time tracking has a documented accuracy problem: calculation error rates as high as 8% of total payroll have been reported where time is tracked manually on paper, according to Timeero. Separately, the American Payroll Association's research, cited via Homebase, puts potential time theft losses at up to 5% of gross payroll annually across businesses generally. Neither number is unique to job shops, but both describe exactly the kind of untracked drift that operation-level, reason-coded clock-in is built to close.
For a deeper look at how kiosk and reason-code clock-in works in practice, see shop floor time clock kiosk and downtime reason codes in manufacturing.
Live WIP: Answering "Where Is Job X" Without Walking the Floor
The second most expensive question in a small job shop, after "did this job make money," is "where is Job 4471 right now." Without a system that knows which operation a job is currently sitting at, the honest answer requires someone walking the floor, checking travelers by hand, and calling back the customer twenty minutes later.
Live work-in-process visibility solves this by defaulting to a work-center queue view: every work center shows what's currently in front of it, what's next, and how long it's been sitting there. A supervisor or the owner can search by job number, part number, or customer name and get a direct answer instead of a floor walk. This is the mechanism, not a vague promise of "visibility" — it's a search index built on top of the same clock-in events described above. See WIP tracking on the shop floor and where is my job on the shop floor for the fuller version of how that queue view gets built and used.
Actual vs. Quoted: Closing the Loop Back to the Quote
This is the step that turns operational data into a costing answer. Every clock-in event logged against an operation has a duration; every operation in the routing has a quoted standard time. Actual-vs-quoted labor tracking is simply the comparison of the two, rolled up per operation and per job.
The whole loop — routing, traveler, clock-in, WIP, scrap — exists to answer one question cleanly: did this job cost what we said it would, and if not, which operation is where it went wrong?
Worked example, illustrative only: say an operation is quoted at 0.5 hours per piece across a 40-piece run — 20 quoted hours. If the logged actuals for that operation come in at 26 hours, the variance is 6 hours, or 30% over quote. Multiply that gap by the shop's burden rate for that work center (more on that below) and the owner has an actual dollar figure for where the quote missed — not a feeling that "that job ran long." Run that comparison across a handful of jobs and patterns emerge: maybe every job routed through a particular work center runs over, which points at a bad standard time in the routing rather than a bad operator.
This comparison is available at every WorkTickets tier, because it's the core of the product, not an upsell. For the mechanics in more depth, see actual vs. quoted labor tracking. And because the accuracy of "quoted" is only as good as the quoting process behind it, it's worth also reading how to quote machining jobs — a bad quote will look like a labor problem on the floor when it's really an estimating problem at the front office.
Burden Rate and Job-Level Profitability
Hours alone aren't cost — they need a rate. A burden rate is the fully loaded cost per hour of running a given work center: the direct labor rate plus the machine's share of overhead, utilities, maintenance, and facility cost, expressed as dollars per hour. Different work centers usually carry different burden rates — a five-axis CNC mill costs more per hour to run than a manual deburring station — so job costing that uses one blended shop rate across every operation will misprice jobs that lean heavily on the expensive machines.
Configuring burden rate per work center and rolling it into a job-level profitability summary is where the loop finally produces a number the owner actually wants: not "this job took 26 hours" but "this job made $340 less than it was quoted to make, and operation three is where it happened." That capability sits at the Professional tier and above in WorkTickets' four-tier structure.
For the calculation itself, see labor burden rate in manufacturing and how to calculate a machine shop hourly rate. It's also worth grounding burden-rate decisions in real labor cost data rather than guesswork: the U.S. Bureau of Labor Statistics puts the May 2024 median annual wage for machinists and tool-and-die makers at $56,150, for assemblers and fabricators at $43,570, and for metal and plastic machine workers at $46,800; separately, it reports a May 2025 median of $61,800 for sheet metal workers and $53,750 for welders, cutters, solderers, and brazers, an occupation with roughly 424,040 people employed as of May 2024. None of those figures is a burden rate on its own — burden adds overhead on top of wage — but they're a reasonable floor for the labor-cost line inside the calculation.
Scrap and Rework: Tying the Defect to the Operation That Caused It
A scrap run without a cause code attached is just a loss with no lesson. The mechanism that fixes this is logging scrap and rework against the specific operation that caused it, not against the job as a whole — because "Job 4471 had scrap" doesn't help anyone, but "operation four, the weld fixture step, caused three scrapped parts this month" is something a supervisor can act on.
The scale of the problem is well documented industry-wide, even if it varies shop to shop: scrap and rework can cost the average manufacturer up to 2.2% of annual revenue, according to EASE.io, and the broader cost of poor quality — scrap, rework, warranty, and related waste — typically runs 15% to 20% of sales, with a documented range of 5% to 35%, according to Jama Software. Those are industry-wide figures, not a promise about any specific shop's numbers, but they're a reasonable reason to want scrap tied to a cause rather than buried in a general "quality" line on the P&L.
This capability — scrap and rework logging tied to the causing operation — is available at every WorkTickets tier. For more on the mechanics, see scrap and rework tracking.
Why This Loop Sits Below ERP — and Why That's the Point
At this point the obvious question is: why not just buy a full ERP and get scheduling, purchasing, and inventory in the same system? For some shops, that's the right answer eventually. But most shops in the five-to-fifty-employee range who look seriously at JobBOSS2 or ProShop find the same thing: both are full quote-to-cash systems with per-user pricing that isn't published on either vendor's own site, sold through a sales process, sized for a shop ready to commit to a multi-month rollout. That's not a criticism of either product — it's a scope and budget mismatch for a shop that hasn't budgeted an ERP line item at all.
There are lighter alternatives, but they tend to solve an adjacent problem instead of this one. Predator Travelers, a traveler-management product that's been around the CNC-networking world since 1994, publishes its pricing directly — $11,500 as a one-time purchase or $4,900 per year, both including the Predator Travelers Administrator for Microsoft SQL Server and Premier Support — but it's packaged around a legacy on-premise DNC ecosystem, not standalone lightweight SaaS. MRPeasy and Katana both publish transparent pricing too — MRPeasy runs $49 to $149 per user per month with additional users sold in $79-per-month bundles of 10, and Katana's Core plan starts at $299 per month for one inventory location — but both are inventory-and-MRP-first platforms with job costing bolted on as a secondary feature, not the reason the product exists.
That's the gap this guide's loop is built to fill: a standalone, SaaS-native execution-and-costing layer, priced and scoped for a shop that has already decided a full ERP is more than it needs right now, and that wants routing, traveler, clock-in, WIP, actual-vs-quoted, and scrap logging without paying for — or waiting on — modules it won't use. It deliberately does not do scheduling, inventory, purchasing, or accounting; those are different layers, on purpose, not missing features.
For a broader comparison of why a shop might choose this route over an ERP rollout, see small machine shop software without ERP and QuickBooks manufacturing limitations — the latter covers exactly where QuickBooks stops being enough on its own, which is usually the moment a shop starts this search in the first place.
The Aerospace-Adjacent Case: AS9102 and Traceability
A distinct subset of shops reading this run aerospace or defense work and live under AS9102, the SAE International standard governing First Article Inspection. AS9102 defines the FAI process across three forms — Form 1 for part-number accountability, Form 2 for materials and process conformance, and Form 3 for characteristic-by-characteristic accountability — and primes routinely flow that requirement down through multiple supplier tiers; a supplier that can't produce a clean, traceable first-article inspection report risks source inspection or losing the award outright, per reporting from Ideagen.
The mechanism connection to everything above is direct: a traveler that already carries operation-by-operation records, sign-offs, and actuals is most of the raw material an FAIR needs to be assembled from — routing plus real execution data is a much shorter path to Form 2 and Form 3 traceability than reconstructing it after the fact from memory and paper. Shops working under AS9102 should confirm the current form structure and clause requirements directly against the SAE standard text (which is copyrighted and not reproduced here) before treating any summary, including this one, as sufficient on its own.
Getting Started: From Spreadsheets to a Closed Loop
None of this requires ripping out QuickBooks or committing to an ERP rollout that stalls six months in. The loop described here — routing, traveler, operation-level clock-in, live WIP, actual-vs-quoted, burden rate, scrap logging — is available across four tiers, from Essentials at $199 a month up through Business at $599 a month, with an Enterprise tier starting at $1,199 a month for shops that need it, and a 14-day trial to test the loop against real jobs before committing.
A useful starting point for shops still assembling the physical side of this — printed traveler stock, kiosk hardware, the practical tools that make clock-in painless on a noisy floor — is the Complete Shop-Floor Kit, which bundles the physical pieces that pair with the software loop above.
For shops that want the numbers before the trial, the ROI calculator is a reasonable next step, run against real job counts and labor rates rather than industry averages. For a look at the small set of numbers worth tracking week to week once the loop is running, see machine shop KPIs to track. And for a walk-through of the platform itself against a live shop's data, book a demo or start the 14-day trial directly — either way, the goal is the same: close the loop from routing to costing before the next quarter closes with a margin nobody can explain.

