Abstract In this article an adaptive CNC tool path generation algorithm for precision machining of parts with free-form surfaces is proposed. It is aimed at developing a generic CNC tool path generation methodology suitable for machining parts having analytical curves/surfaces and/or sculptured (parametric) surfaces, as opposed to most existing NC programming techniques which are unable to handle free-form surface cutting. The proposed algorithm is desired to be robust that it can be applied to generate tool paths for CAD models having both two- and three-dimensional curves and/or surfaces. In the method, a parametric surface curve on a three-dimensional (3D) sculptured surface is approximated by a sequence of linear segments. From the current reference point of the cutting tool, the method has the capability of predicting the next reference point of the tool for a given feed. If the predicted reference point does not satisfy a specified dimension tolerance, then the method will adjust itself according to the adaptive rules. As a result, the deviations between the generated tool paths and the desired surfaces/curves will always fall within desired tolerances. In addition, the conditions for all minimum adjustments such that the desired tolerance requirement is fulfilled are analyzed and presented. Based on the adjustment information together with the current position of the cutter, a corrected position of the cutter can be obtained. A general surface curve is used to test the effectiveness of the method. At the respective feedrates of 10 and 30 mm/s, the method is not only able to replicate the contour of the desired curve but also to steer the path generated to constantly stay within an allowable range with a specified tolerance. Therefore, the proposed algorithm is proved to be robust and effective in generating precision tool paths due to its adaptive error correction mechanism. This makes the proposed algorithm suited to serve as an add-on adaptive mechanism to conventional CNC tool path generators. Particularly, it is suitable to be used for free-form/sculptured surface machining where an accurate tool path generation based on a CAD model is a real challenge.