Post-Processor: Definition, How It Works, and Uses
A post-processor is a critical part of working with CNC machines. Post-processor software provides the link between the toolpaths produced by CAM software and the CNC controller, ensuring that CNC operations are done accurately.
In this article, we will discuss the post-processor, how it works, why it is important, how to select a good post-processor, and more.
A post-processor is software that translates computer-aided manufacturing (CAM) toolpaths into Geometric Code, or G-code, that is unique to a specific computer numerical control (CNC) machine. Each CNC machine has unique characteristics and requires a unique set of code to run correctly. The purpose of the post-processor is to translate the generic G-code that CAM software produces into a G-code that is compatible with and tailored to the CNC machine that it will be used on.
A post-processor converts G-code from CAM software into G-code that a specific CNC machine can use. CAM software outputs toolpaths into generic G-code. Every CNC machine or 3D printer uses its own “dialect”, or implementation of G-code. The dialect of G-code could be unique to the specific machine, but some major implementations of G-code are commonly used, such as Siemens®, FANUC®, or Haas® among others.
The post-processor takes the generic G-code produced by the CAM software, and converts it to the dialect used by the CNC machine, outputting a new G-code file. There are several tasks that the post-processor performs when converting G-code, including:
- Adapting G-code syntax to match the requirements of the target machine. This includes the formatting of commands.
- Changing the parameters sent in the G-code commands, depending on what a specific dialect expects.
- Compensating for specific limitations that a machine has, i.e., adjusting feed rates to accommodate the machine’s capabilities.
- Some modern post-processors also perform code optimization.
Post-processors are not restricted to a specific language. Different manufacturers and CAM providers use different languages to write their post-processors. Some common languages are:
- Proprietary Scripting Languages: Used by some manufacturers and CAM providers to perform post-processing.
- C++: A common language for performing post-processing. It allows for fast performance and flexibility.
- Python: A scripting language sometimes used for creating post-processors and is good for rapid prototyping and ease of development.
A post-processor is a critical component in CNC machining. Post-processors translate toolpaths produced by CAM software into a dialect of G-code that is suited for a specific CNC machine. Without this translation step, a CNC machine will function incorrectly, producing errors and likely causing machine damage and safety risks.
To learn more, see our guide on What is CNC Machining Technology.
Yes, post-processing is always required to use a CNC machine. A post-processor is a crucial link between CAM software and the actual CNC machine. Post-processing translates the output of CAM software into a set of instructions that the CNC machine can follow to produce a part accurately.
Without the post-processing step, the CNC machine would follow an instruction set that it does not understand. This could lead to suboptimal performance at best, but more likely to errors, crashes, and other unexpected behavior.
A post-processor should always be used to process toolpaths exported from CAM software before those toolpaths are used by the CNC machine. Not doing so will result in errors and possible risks to safety and equipment. The post-processor should also be tailored to the specific CNC machine, and be compatible with the preferred CAM software.
Yes, post-processors are used in thread milling. Thread milling is the process of using a CNC milling machine to create internal or external threads on a component. The CNC milling machine requires G-code instructions to run. The G-code instructions are translated by a post-processor into the specific dialect that the CNC machine understands. Without the post-processor, there is a serious risk of inaccurate machining and equipment damage.
Post-processors can be used in laser cutting. Laser cutting machines use CNC control to perform the laser cutting operations. These CNC controllers require a G-code that takes into account the unique characteristics, features, and limitations of the specific CNC machine. The way that this G-code is tailored to the specific CNC machine is via the post-processor step, which converts the generic G-code produced by CAM software into the tailored G-code.
To learn more, see our guide on How Laser Cutting Works.
A post-processor should be chosen based on several factors:
- Compatibility: The post-processor should be compatible with the CNC machine and CAM software that you are using. If the post-processor is incompatible with either of these, it is of no use.
- Customization and Optimization: Customization and optimization capabilities allow you to customize the post-processor to take into account material considerations, machining strategies, and tooling requirements. Optimization lets the CNC machine make the most of machining features or toolpath optimization.
- Reputation: Reputable manufacturers or CAM software providers are more likely to offer reliable and well-supported products. Reviews and testimonials are good ways of vetting a post-processor provider.
- Support: Adequate documentation or support channels are important to make sure you are using the post-processor correctly.
- Maintenance: As CAM and CNC controller software is updated, post-processors need to update as well. Choosing a post-processor provider that releases updates ensures that the post-processor does not become out of date.
When choosing a post-processor, it is also important to test it as thoroughly as possible before committing and using it in production projects. A reliable post-processor provider would have tested it thoroughly, but it is good practice to make sure that the post-processor works for your specific needs.
Most CAM/CAD software providers will have a library of post-processors available for the most common CNC machine manufacturers. That being said, some good options are:
- Autodesk Fusion®: Provides a range of post-processors for an extensive list of machines.
- Mastercam®: A widely used CAM software that comes with a variety of post-processors for different CNC machines.
- Siemens NX™ software: A full CAD/CAM software suite, which also provides post-processors for different CNC machines.
It should be noted that the major CNC manufacturers, such as Haas, Fanuc, and Yamazaki Mazak will usually have post-processors available for their machines. These post-processors are vetted and tested by the manufacturers themselves, and should usually be the first choice when a post-processor is needed.
If a custom post-processor is needed, several CAM providers can also write custom post-processors such as:
- ICAM: Provides custom-built post-processors for CNC machines that are compatible with some of the leading CAM software. They have been around for more than 50 years, and have a reputation as one of the leading post-processor providers in the industry.
- Open Mind: A CAD/CAM provider that also produces post-processors and has a good reputation.
Post-processors cost upwards of $2,000, depending on the machine type, brand, size, and functionality. It is very common for custom post-processors to cost around $5,000 or higher. There are options for reducing this cost. Certain CAM software or CAM providers have post-processors that work for common machines, and these can be purchased at a reduced price. Many CNC machine manufacturers provide post-processors for their specific machines for free. These are tailor-made and tested for the specific machine you’ve purchased and are a good option if one is available.
Another option that is available at times is to edit an existing post-processor to account for slight differences in a specific machine. Many times this can be done by a CAM provider for a reduced cost, or be done in-house if you have the right skill set.
Custom post-processors can be expensive. It is common for custom post-processors to cost between $2,000 and $10,000, depending on the machine. There are pre-written post-processors available for free from manufacturers or for reduced cost as part of CAM software. These post-processors might be suitable for common CNC machines.
For some machines, an existing post-processor only needs to be edited to work. This can usually be done for a reduced cost by a CAM provider. Post-processors can also be edited or created in-house which reduces the direct cost significantly. Creating or editing a post-processor should only be undertaken if you have the right skill set and experience, otherwise, doing so can lead to errors, system failures, machine damage, and safety risks.
While a post-processor is expensive, the cost should be measured against the pitfalls of not having a well-written, reliable post-processor. Likely, the damage caused by inaccurate G-code due to a low-quality post-processor will cost much more than actually buying a high-quality post-processor.
Post-processors can be used for as long as they are suited for the CAM software and CNC machine you are using. If the CAM software updates in a way that changes the underlying algorithms, the post-processor might need to be updated accordingly. Similarly, if the CNC machine’s controller updates, it might necessitate changes to the post-processor to accommodate the controller changes. Generally, a post-processor should be usable for 1–2 years, depending on the update schedule of the CAM software or CNC firmware.
It should also be noted that post-processors are tailored to specific machines and machine versions. A new version of the same model of CNC machine might require a completely new post-processor or at least an update to the existing one. Similarly, a post-processor will likely not be reusable across different machines of the same brand or product line.
This article presented post processors, explained them, and discussed how they work and their applications. To learn more about post processors, contact a Xometry representative.
Xometry provides a wide range of manufacturing capabilities, including machining and other value-added services for all of your prototyping and production needs. Visit our website to learn more or to request a free, no-obligation quote.
- Siemens® is a registered trademark of Siemens Trademark GmbH & Co. KG.
- FANUC® is a registered trademark of FANUC CORPORATION.
- HAAS® is a registered trademark owned and licensed by Haas Automation, Inc.
- Mastercam® is a registered trademark of CNC Software, LLC.
- Autodesk Fusion® is a registered trademark of Autodesk, Inc.
- NX™ is a trademark of Siemens Industry Software Inc.
The content appearing on this webpage is for informational purposes only. Xometry makes no representation or warranty of any kind, be it expressed or implied, as to the accuracy, completeness, or validity of the information. Any performance parameters, geometric tolerances, specific design features, quality and types of materials, or processes should not be inferred to represent what will be delivered by third-party suppliers or manufacturers through Xometry’s network. Buyers seeking quotes for parts are responsible for defining the specific requirements for those parts. Please refer to our terms and conditions for more information.