Job Costing for Fabrication
Job costing is the practice of tracking all direct and indirect costs associated with each individual countertop project -- including material, labor, machine time, transportation, and overhead -- to determine exact profitability per job. Fabrication shops that implement job costing discover 8-15% profit improvement within 6 months because they stop underpricing high-cost jobs and stop overpricing easy ones.
TL;DR
- Most fabrication shops know their overall profitability but can't tell you which jobs make money and which ones lose it
- Material typically accounts for 35-45% of job cost, labor 25-35%, and overhead 20-30%
- The difference between your most profitable job type and your least profitable can be 25-40 percentage points
- Bathroom vanities often subsidize complex kitchen islands -- job costing reveals this
- Tracking CNC time per job is the single most valuable data point for accurate costing
- Shops that cost every job improve margins by 8-15% within 6 months just by adjusting pricing
- SlabWise tracks material, labor, and machine costs per job and shows profitability in real time
Why Most Shops Don't Know Their Real Costs
Here's a common situation. A shop owner runs a P&L at year-end. Revenue: $1.8 million. Material costs: $720,000. Labor: $540,000. Overhead: $360,000. Profit: $180,000. That's a 10% net margin -- decent but not great.
What that P&L doesn't show is that 30% of their jobs ran at 20%+ margins while another 20% actually lost money. The profitable jobs subsidized the losers, and the owner had no idea which was which.
Job costing fixes this by calculating the real cost and profit of every single project.
What Job Costing Reveals
When you start costing individual jobs, you'll find patterns like these:
| Job Type | Avg Revenue | Avg True Cost | Avg Margin | Surprise Factor |
|---|---|---|---|---|
| Simple kitchen (35 sq ft, eased edge) | $3,500 | $2,275 | 35% | This is your bread and butter |
| Complex kitchen (65 sq ft, waterfall, mitered) | $8,500 | $7,225 | 15% | Margin is half what you'd expect |
| Bathroom vanity (15 sq ft) | $1,800 | $1,080 | 40% | Your highest-margin work |
| Commercial reception desk | $6,000 | $5,100 | 15% | Template and install eat the margin |
| Outdoor kitchen | $5,200 | $3,900 | 25% | Good if you don't have to drive far |
That complex kitchen with the waterfall and mitered edges? You thought you were making great money because the ticket price is high. But the extra CNC time, hand polishing, and onsite fitting ate your margin down to 15%.
The Job Cost Formula
Every fabrication job has four cost categories:
1. Material Cost (35-45% of total)
This is the most straightforward cost to track:
- Slab cost: Purchase price of the slab(s) used, prorated by square footage consumed
- Consumables: Blades, pads, adhesives, caulk, and support structures (typical: $15-$50/job)
- Waste factor: The portion of the slab you can't use (typically 10-20% for a standard job)
How to calculate material cost per job:
Material cost = (Slab purchase price / Total slab sq ft) x Sq ft consumed (including waste) + Consumables
Example: A 55 sq ft slab of Caesarstone costs $1,650. Your job requires 38 sq ft of usable countertop, plus your CNC layout shows 8 sq ft of waste and trim. Total consumption: 46 sq ft.
Material cost = ($1,650 / 55) x 46 + $35 = $1,381 + $35 = $1,416
2. Labor Cost (25-35% of total)
Labor includes everyone who touches the job:
| Role | Time per Standard Kitchen | Hourly Cost (loaded) |
|---|---|---|
| Salesperson/estimator | 1-2 hours | $28-$45/hr |
| Templater | 1-2 hours (including travel) | $22-$35/hr |
| CAD/programmer | 0.5-1.5 hours | $25-$40/hr |
| CNC operator | 1-3 hours | $22-$35/hr |
| Polisher/finisher | 2-5 hours | $20-$32/hr |
| QC inspector | 0.5-1 hour | $22-$35/hr |
| Install crew (2 people) | 3-6 hours | $25-$38/hr each |
| Office/admin | 0.5-1 hour | $18-$28/hr |
Important: Use "loaded" hourly rates that include benefits, payroll taxes, workers' comp, and PTO. Your CNC operator might earn $28/hr on their paycheck, but the loaded cost is closer to $35-$42/hr.
3. Machine Cost (5-15% of total)
Your CNC bridge saw or router costs money every hour it runs:
- Depreciation: Purchase price / Expected hours of useful life
- Tooling: Blades, bits, and pads consumed per hour
- Maintenance: Annual maintenance budget / Annual running hours
- Power: Electricity cost per hour of operation
Typical all-in CNC cost: $45-$120 per hour of cutting time, depending on machine age and type.
For a standard kitchen requiring 2 hours of CNC time: machine cost = $90-$240.
4. Overhead Allocation (15-25% of total)
Overhead includes everything that doesn't tie directly to a specific job:
- Rent/mortgage
- Insurance
- Utilities
- Office staff salaries
- Software subscriptions
- Vehicle maintenance
- Marketing
- General supplies
Simplest allocation method: Divide monthly overhead by monthly jobs.
If your overhead is $25,000/month and you complete 45 jobs, overhead per job = $556.
Better allocation method: Allocate by square footage or CNC hours, which more fairly distributes overhead to jobs that consume more shop resources.
Setting Up Job Costing: Step by Step
Step 1: Establish Your Cost Rates (Day 1)
Calculate these numbers once and update them quarterly:
- Loaded labor rates for each role
- CNC machine rate per hour
- Monthly overhead total
- Standard consumables cost per job type
Step 2: Create a Job Cost Sheet (Day 1)
Every job gets a cost sheet that tracks:
Job #: _______________
Customer: _______________
Material: _______________ Cost: $_____
Square footage (actual cut): _____
Waste sq ft: _____
Labor hours:
Sales/estimating: ___ hrs x $___/hr = $_____
Template: ___ hrs x $___/hr = $_____
CAD/program: ___ hrs x $___/hr = $_____
CNC: ___ hrs x $___/hr = $_____
Polish/finish: ___ hrs x $___/hr = $_____
QC: ___ hrs x $___/hr = $_____
Install: ___ hrs x $___/hr = $_____
Admin: ___ hrs x $___/hr = $_____
Machine time: ___ hrs x $___/hr = $_____
Consumables: $_____
Overhead allocation: $_____
Additional costs (delivery, special equipment): $_____
TOTAL JOB COST: $_____
REVENUE: $_____
GROSS PROFIT: $_____
MARGIN: _____%
Step 3: Track Time on Every Job (Ongoing)
This is the hard part. Your team needs to log time against specific jobs. There are three approaches:
Manual: Paper timesheets where workers note job numbers and time spent. Simple but unreliable. Accuracy: 70-80%.
Digital time tracking: Workers clock in/out on a tablet or phone app against specific job numbers. Better accountability. Accuracy: 85-90%.
Automated: Your fabrication software tracks time based on production stages. When a CNC program starts running for Job #1045, the timer starts automatically. Accuracy: 95%+.
Step 4: Review Job Profitability Weekly
Every Friday (or Monday morning), review completed jobs:
- Which jobs hit your target margin?
- Which ones fell below?
- What caused the variance? (Material waste, extra labor, complex install, etc.)
- Are there patterns? (Certain material types, certain customers, certain job sizes?)
Step 5: Adjust Pricing Based on Data (Monthly)
After 30-60 jobs with full costing data, you'll have enough information to make intelligent pricing changes:
- Undpriced job types: Increase pricing for job types that consistently underperform. If waterfall edge jobs average 12% margin vs. your target 25%, your waterfall upcharge isn't high enough.
- Overpriced job types: You may be pricing yourself out of certain work. If bathroom vanities show 45% margins, you might capture more volume by reducing pricing to 35% and still outperform your average.
- Unprofitable customers: Some customers consistently generate low-margin jobs through scope changes, difficult installs, or slow payments. Adjust their pricing or reconsider the relationship.
Common Job Costing Mistakes
Mistake #1: Ignoring labor on "easy" jobs. A simple bathroom vanity seems like pure profit -- 15 sq ft, eased edge, done in an hour. But when you add template time, travel, install time, and admin, the labor might be $400-$600. That's a big chunk of an $1,800 job.
Mistake #2: Using average material cost. Don't spread material cost across all jobs evenly. A $3,500 slab of exotic quartzite costs more per square foot than a $1,200 slab of basic quartz. Cost each job based on its actual material.
Mistake #3: Forgetting travel time. A 45-minute drive to a template and a 45-minute drive back is 1.5 hours of loaded labor cost ($33-$53) plus vehicle cost ($0.67/mile x ~50 miles = $34). That's $67-$87 that needs to hit a specific job, not get buried in overhead.
Mistake #4: Not costing rework. When a piece fails QC and needs re-fabrication, the rework cost should be charged to the original job. This makes rework visible in your profitability data and motivates error prevention.
Mistake #5: Quarterly rather than per-job costing. Averaging costs over a quarter hides the individual jobs that are dragging down your margins. The whole point of job costing is granularity.
Using Job Costing Data to Grow
Pricing Strategy Refinement
With 6 months of job costing data, you can build a pricing model that reflects actual costs instead of gut feel. Shops that do this typically:
- Increase margins on complex work by 5-10%
- Decrease pricing on high-volume simple work to capture more jobs
- Add accurate upcharges for features that actually cost more (waterfall edges, book-matching, extra cutouts)
- Identify their "sweet spot" job size and type, then focus marketing on attracting those jobs
Capacity Planning
Job costing data shows you exactly how many CNC hours each job type consumes. With that data, you can:
- Calculate your true monthly capacity in jobs (not just machine hours)
- Identify when you need to add a second shift or a second CNC
- Decide whether to outsource certain job types or bring them in-house
Employee Performance
If you track labor hours by employee, you can spot productivity differences. Maybe your senior CNC operator runs jobs 20% faster than the junior one. That's a training opportunity worth thousands in annual productivity gains.
How SlabWise Handles Job Costing
SlabWise automates much of the job costing process:
- Material costs are pulled from your inventory records when a slab is allocated to a job
- Labor time is tracked automatically as jobs move through production stages
- CNC time is logged when programs run, with per-job allocation
- Overhead is distributed based on your configuration (per-job, per-sq-ft, or per-CNC-hour)
- Profitability reports show per-job, per-customer, per-material, and per-job-type margins
- Variance alerts flag jobs that exceed estimated costs by more than 15%
The Enterprise plan ($349/mo) adds AI-powered cost estimation that uses your historical job data to predict costs on new quotes with 90-95% accuracy.
Frequently Asked Questions
How long does it take to set up job costing?
Initial setup (calculating rates, creating templates) takes 4-8 hours. The ongoing effort is 5-10 minutes per job to enter or verify time and material data. With software like SlabWise that automates most tracking, ongoing effort drops to 2-3 minutes per job.
What's a healthy profit margin for a fabrication job?
Target 20-30% net margin per job. Simple kitchens and bathroom vanities should hit 30-40%. Complex jobs with waterfall edges, mitered details, and difficult installations might only hit 15-20%, which is acceptable if pricing reflects the complexity.
Should I cost every job or just sample?
Cost every job for the first 3-6 months to build a reliable dataset. After that, you can sample (cost every 3rd or 5th job) if your processes are consistent. But if you're using software that automates costing, there's no reason not to cost every job indefinitely.
How do I handle change orders in job costing?
Change orders are new line items on the job cost sheet. Track the additional material, labor, and machine time separately. Compare the change order revenue against the change order cost to ensure you're not doing extra work at a loss.
What if my team resists tracking their time?
Explain the "why." Time tracking isn't about monitoring performance -- it's about understanding where money goes so the shop can charge appropriate prices and stay profitable. When the business is profitable, jobs are more secure and raises are possible. Most resistance fades within 2-3 weeks.
How does job costing help with quoting?
After 50-100 costed jobs, you'll have data on what different job types actually cost. Use this data to build quoting templates: a standard 40 sq ft kitchen with eased edges and one undermount sink costs you approximately $X, so you should charge $Y. No more guessing.
Can job costing identify which customers are most profitable?
Absolutely. You'll likely find that 20% of your customers generate 50%+ of your profit. Focus your sales and marketing efforts on attracting more customers like your top 20%.
What's the relationship between job costing and estimating?
Estimating predicts what a job will cost. Job costing measures what it actually cost. Comparing estimates to actuals closes the feedback loop. If you consistently underestimate CNC time by 30%, your quotes are too low, and your margins are suffering.
Start Knowing What Every Job Really Costs
You can't improve what you don't measure. SlabWise tracks material, labor, and machine costs per job automatically, giving you real-time profitability data without hours of manual bookkeeping. Start your 14-day free trial and run your first 10 jobs with full cost tracking. No credit card required.
Sources
- Natural Stone Institute, "Cost Accounting for Stone Fabricators," 2025
- SBA, "Job Costing for Small Manufacturers," 2024
- IBIS World, "Stone Countertop Manufacturing in the US," 2025
- Marble Institute of America, "Profitability Benchmarks for Fabrication Shops," 2024
- SCORE, "Financial Management for Small Manufacturing Businesses," 2025
- National Kitchen & Bath Association, "Industry Pricing Survey," 2025