Guide
How to Calculate a Profitable CNC Machining Quote
A practical method for costing CNC work using material yield, setup, cycle time, machine rate, subcontracting, scrap, contingency, and gross margin.
A profitable CNC machining quote begins with a defensible process and cost estimate, not a target price copied from a previous part. The aim is to identify what the customer will buy, what the shop expects to start and consume, and what revenue is needed to cover the resulting cost at the required gross margin.
This method supports a commercial review; it does not decide whether a component is manufacturable or whether a quotation should be issued. A competent person still needs to approve the process, quality plan, capacity, delivery commitment, commercial terms, and final selling price.
1. Confirm the scope and supplied requirements
Start with the current RFQ pack rather than the part geometry alone. Confirm the drawing and model revisions, acceptable quantity, material specification, tolerances, surface finish, inspection requirements, certification, outside processing, packaging, delivery destination, and requested date. Record whether material, tooling, gauges, or fixtures will be supplied by the customer.
Resolve contradictions before costing. A drawing note, purchase specification, and customer email can each change the route or the evidence required with the parts. Treat missing information as an open assumption, not permission to choose the least expensive interpretation.
Write down the proposed manufacturing route. For a single-operation estimate, name the machine or machine class, workholding approach, setup and programming activity, cycle-time basis, inspection stages, and any subcontract operations. Multi-operation work should be costed by a method that can represent every operation rather than forcing several rates into one unexplained average.
2. Establish a verified machine hourly rate
The machine rate converts productive machine time into cost. It should represent the costs the business has deliberately allocated to that productive hour, which may include ownership, normal operator labour, maintenance, energy, and overhead. Use the shop’s current approved rate for the selected resource.
If the rate is unknown or out of date, use the CNC machine hourly rate calculator to examine annual cost, productive utilisation, and gross-margin assumptions. Keep that annual rate-setting decision separate from this job estimate.
Avoid adding normal operator labour or allocated overhead again as separate job costs when the approved machine rate already includes them. Add labour separately only for identifiable work outside that rate, such as dedicated deburring, assembly, or documentation time.
3. Estimate acceptable quantity, starts, setup, and cycle time
The customer pays for acceptable parts, but the shop may expect to start more material because of process scrap. If Q is the acceptable order quantity and S is the expected scrap allowance as a decimal, use:
Expected started quantity = Q ÷ (1 − S)
This can produce a fractional number because it is an expected-cost allowance, not a production release quantity. For example, 50 acceptable parts with 4% expected scrap gives 52.0833 expected starts for costing. It does not instruct production to release 52.0833 blanks.
Separate fixed setup and programming time from the per-start cycle:
- Run hours = expected started quantity × cycle minutes per started part ÷ 60
- Total machine hours = setup and programming hours + run hours
- Machine cost = total machine hours × machine hourly rate
Use evidence appropriate to the maturity of the job: a similar controlled process, a time study, CAM information reviewed against reality, or a reasoned estimate. State whether loading, probing, in-cycle inspection, tool changes, and normal stoppages are already reflected. Setup is charged once per batch in this model, while cycle time follows expected starts.
4. Add material yield and job-specific costs
Material cost should follow the form and yield actually expected to be purchased, not only the finished component mass. Include the effects of bar ends, saw allowance, plate nesting, minimum order quantities, test pieces, and material certification where they apply. In a per-start model, multiply material cost per started part by expected started quantity.
Apply the same logic to subcontract processing charged for each part sent out. Heat treatment, plating, coating, grinding, or testing may be incurred on started parts at different stages, so make the assumption explicit. Add fixed subcontract minimum charges and transport separately where needed.
Then identify genuine batch-specific costs:
- additional direct labour outside the machine rate;
- dedicated cutters, inserts, soft jaws, fixtures, gauges, and consumables;
- first-off, in-process, and final inspection effort not already allocated;
- FAIR, certificates, reports, traceability, and other required documentation;
- protective packaging, pallets, carriage, and special delivery arrangements.
Do not hide these items in a general uplift if they can be estimated directly. A visible cost breakdown is easier to review when the customer changes quantity, specification, or delivery terms.
5. Add contingency and convert cost to a gross-margin target
Contingency is an explicit allowance for identified uncertainty that has not been costed elsewhere. Apply it once to the base job cost. It should not conceal a cycle time known to be optimistic, duplicate a scrap allowance, or replace investigation of a material or subcontract price.
- Base job cost = machine cost + started-part material and subcontract costs + additional labour + fixed batch costs
- Contingency cost = base job cost × contingency percentage
- Estimated job cost = base job cost + contingency cost
Convert the estimated cost to the revenue required for the target gross margin:
Target revenue = estimated job cost ÷ (1 − target gross margin)
Gross margin and markup are not interchangeable. Gross margin divides gross profit by selling price; markup divides profit by cost. Adding 25% to cost creates a 20% gross margin, not 25%. To target a 25% gross margin, divide cost by 0.75.
Finally, divide target revenue by the acceptable order quantity to obtain the target price per acceptable part. Keep full precision through the calculation and round only the displayed result.
6. Illustrative 50-part CNC quote example
This illustrative example is not Triaxis client performance data and is not a customer quotation. It uses:
- 50 acceptable parts at a proposed £42.00 each;
- 4% expected scrap;
- £6.80 material and £2.00 subcontract processing per started part;
- 2.5 setup and programming hours;
- a nine-minute cycle per started part;
- a £72.00 machine hourly rate;
- three additional labour hours at £26.00 per hour;
- £95 tooling and consumables, £30 inspection and documentation, £15 packaging, and £25 delivery;
- 6% contingency and a 28% target gross margin.
The expected started quantity is 50 ÷ 0.96 = 52.0833, displayed as 52.08. Run time is 52.0833 × 9 ÷ 60 = 7.8125 hours. Adding 2.5 setup hours gives 10.31 total machine hours, and machine cost is £742.50.
Material is £354.17, subcontract processing is £104.17, additional labour is £78.00, and fixed batch costs total £165.00. The unrounded base job cost is £1,443.8333. Contingency is £86.63, producing an estimated job cost of £1,530.46.
Proposed revenue is £2,100.00. Estimated gross profit is £569.54 and the estimated gross margin is 27.1%. The job covers the estimate but falls just below the 28% target.
Target revenue is £1,530.4633 ÷ 0.72, giving £2,125.64, or a £42.51 target price per acceptable part after rounding. The £25.64 gap is a prompt to review the assumptions and commercial decision, not an instruction to increase the quote.
7. Check the assumptions before issuing a quote
Review the estimate with the people accountable for engineering, quality, production, and the customer commitment. In particular, confirm:
- Commercial: quantity, price basis, validity, payment terms, material price exposure, and exclusions.
- Quality: tolerances, inspection frequency, records, certification, traceability, special processes, and customer approvals.
- Capacity: the selected resource, setup window, realistic cycle, labour availability, inspection capacity, and subcontract lead time.
- Delivery: material availability, queue time, outside processing, transport, packaging, and the date that can actually be promised.
Compare completed-job actuals with the quote basis when reliable data becomes available. Setup, cycle, yield, tooling, inspection, and outside-processing differences can show where future estimates need a better method. Do not infer a general benchmark from one part or one batch.
8. Test the complete job estimate
The manufacturing job profitability calculator applies this model to one operation or one blended machine-rate estimate. It compares a proposed selling price with expected material, machine, setup, labour, subcontract, fixed batch, scrap, contingency, and target-margin assumptions. Calculations stay in the browser, but the user remains responsible for checking every input and the final quotation.
If quoted margins are not surviving setup, production, inspection, or outside processing, the assumptions need a closer review. Discuss job costing and margin control.