You're losing money if you can't calculate your true labor and material costs—and most CNC woodshops leave 20–40% in profit on the table by guessing. Getting this right separates shops that scale sustainably from those that burn out chasing low-margin jobs.
Break Down Your Material Costs Accurately
Start with the raw material itself: lumber, plywood, veneer, or engineered panels. Get actual invoices from your suppliers and calculate cost per board foot or per sheet, not just the bulk price. A 4×8 sheet of maple plywood runs $80–$150 depending on grade; a board foot of walnut lumber costs $6–$12.
Next, factor in waste. CNC work typically sees 10–25% material loss through offcuts, test pieces, and grain-related rejects. If a project uses 50 board feet of wood, budget for 60–62 board feet in your costing. Thinner stock and detailed layouts waste more; simple rectangular parts waste less.
Don't forget finishing materials. Stain, polyurethane, lacquer, or conversion varnish adds $1–$8 per finished item depending on complexity and the finish system you choose. Track your actual consumption per job for three months to build realistic numbers.
Calculate True Machine and Overhead Costs
Your CNC machine isn't free to run. Establish an hourly machine rate that includes depreciation, maintenance, electricity, and insurance.
Rough calculation:
- Machine cost: $40,000–$200,000 (entry-level 3-axis to industrial 5-axis)
- Useful life: 8–10 years
- Annual depreciation: $4,000–$25,000
- Annual maintenance & repairs: 5–15% of machine cost
- Electricity: $2,000–$5,000 annually
- Tooling (bits, cutters): $100–$300 per month
Add these up, divide by billable hours per year (typically 1,500–2,000 hours for a single-shift shop), and you get a machine rate of $30–$80 per hour. Many CNC shops underestimate this and price accordingly.
Overhead extends beyond the machine: rent, utilities, insurance, software licenses (CAD, CAM, quoting tools), administrative staff, and vehicle costs. A realistic overhead rate for a small shop is 50–100% of direct labor. If you pay a carpenter $25/hour, your total labor cost including overhead is $37.50–$50/hour before profit margin.
Set Labor Rates by Role and Complexity
Don't use one labor rate for everything. Your senior programmer who runs complex multi-axis work is worth more per hour than someone loading blanks and monitoring a simple routing operation.
Typical internal labor rates (wage + overhead):
- CNC operator (routine cuts): $28–$40/hour
- Senior programmer/setup: $45–$65/hour
- Assembly & finishing: $22–$35/hour
- Design/CAM work: $50–$80/hour
For each job, estimate actual time in the machine, plus setup, tool changes, quality checks, and loading/unloading. Most shops underestimate setup time by 30–50%. A "one-hour" part often takes two hours when you factor in first-piece inspection and offset adjustments.
Calculate Job Margins and Pricing
Use this formula for every quote:
Job Cost = Materials + Machine Time + Labor + 10% contingency
Selling Price = Job Cost × markup (typically 2.0–3.5× for custom work)
A markup of 2.0× gives you 50% gross margin; 3.0× gives you 67%. Most healthy CNC millwork shops target 2.2–2.8× to stay competitive while protecting against estimating errors.
Example: A set of custom cabinet doors costs $120 in wood, requires 1.5 hours of machine time ($60), 0.5 hours of finishing labor ($18), and 0.75 hours of design/setup ($55). Job cost = $253. At a 2.5× markup, sell for $632.50.
Track Actual vs. Estimated Hours
The gap between what you estimate and what jobs actually take is where profitability dies. Use a simple spreadsheet or job costing software to record estimated vs. actual labor and machine time for every project. After 50 jobs, patterns emerge: certain designs run over, certain clients always request revisions, certain finishes take longer than quoted.
When you list your CNC woodworking services on Mercoly, you'll attract leads that align with the work you can price profitably—shops often quote low because they don't have clarity on what they're really selling.
Frequently Asked Questions
Q: How do I account for CNC tool replacement in pricing? A: Track tool costs monthly and divide by billable hours to set a per-hour tool allowance ($1.50–$4/hour is typical). Include it in your machine rate, not as a line-item cost.
Q: Should I quote hourly or per-piece rates? A: Quote per-piece for repeat work (cabinet doors, spindles, brackets); quote hourly or fixed-price for one-offs and custom design. Never quote hourly for production runs—you'll leave money on the table as you get faster.
Q: What's a realistic timeline to refine my costing? A: Run your current system for 20–30 jobs, gather actuals, adjust estimates upward where needed, and lock in rates. Revisit quarterly as supplier costs and labor rates shift.
Start tracking your real numbers this week—your margins depend on it.