The Ultimate Guide to CNC File Types and Where to Find Them

The Ultimate Guide to CNC File Types and Where to Find Them

Computer numerical control (CNC) machining is revolutionizing manufacturing and hobbyist workshops. By using digitally encoded CNC files, complex parts can be machined with precision and repeatability on CNC mills, lathes, routers, laser cutters and more.

But with so many different CNC file formats out there, it can get confusing. Which file types does your machine need? And where can you find quality CNC files to machine your own parts?

This definitive guide covers everything you need to know about CNC file formats, compatibility, and the best sites to download ready-made files.

An Introduction to CNC Files

A CNC file contains coded instructions that tell a CNC machine how to move. It dictates things like:

  • Where to move
  • How fast to move
  • How deep to cut
  • And more

By reading these instructions, the CNC machine can automatically machine a part without human intervention. This removes variability and human error from machining, ensuring precision results.

CNC files are generated using computer-aided design (CAD) or computer-aided manufacturing (CAM) software. CAD allows you to model a 3D part, while CAM converts that model into toolpath instructions for the CNC.

There are many different CNC file formats out there. The most common include:

  • G-code (.nc)
  • SVG (.svg)
  • STEP (.stp)
  • IGES (.igs)
  • DXF (.dxf)

The format you need depends on your specific CNC machine. While some support multiple file types, others are limited. Always check your machine’s documentation to see which CNC files it can accept.

Now let’s look at each of these CNC file formats in more detail.

G-Code (.nc)

G-code is the most common CNC programming language. Also known as RS-274, it uses G-codes and M-codes to control machine movement and functions.

Nearly all CNC mills, lathes, routers, laser cutters and plasma cutters can run G-code programs. It’s the standard numerical control programming language according to ISO 6983.

G-code files use the .nc or .ngc file extension. They contain line-by-line instructions defining the toolpath. Here are some examples:

  • G00 X50 Y25 – Rapid motion to point X50 Y25
  • G01 X30 Y10 F500 – Linear motion at 500 mm/min feed rate
  • M03 S1000 – Turn on spindle at 1000 RPM

Advanced CAM software can generate optimized G-code from CAD models. This automates the complex programming required for complex 3D parts.

G-code’s wide compatibility makes it the ideal file format for sharing CNC projects. Most hobbyists and manufacturers upload their files as G-code.

The downside is that G-code files are not editable. If you want to modify or customize a file, you would need to edit the original CAD model and re-generate the toolpaths.

SVG (.svg)

SVG (Scalable Vector Graphics) files are popular for 2D CNC cutting projects. This includes sign making, inlays, laser engraving, paper crafts and more.

SVG stores 2D images as editable vectors rather than static raster graphics. This allows the file to scale to any size without losing resolution.

Many CAD and CAM programs can output designs as SVG files. You can also create SVG files in vector graphics software like Adobe Illustrator or Inkscape.

The benefit of SVG is that it’s an open standard format supported by most programs. This makes it ideal for converting 2D designs between different software.

For example, you can export an SVG from Illustrator and import it into a laser cutting CAM program. This workflow allows you to leverage the advanced design tools of Illustrator for your 2D CNC projects.

SVG files are also text-based and human-readable. This allows you to manually edit the file if needed.

When it comes to CNC cutting, SVG files contain the vector outlines for the part. Your CAM software then sets things like cut order, speeds, and power levels.

Note that SVG files are 2D only. They cannot contain 3D model data for milling or turning projects.

STEP (.stp)

STEP (Standard for the Exchange of Product Data) is an ISO-standardized 3D CAD format suitable for CNC machining. It stores 3D solid and surface model data in a universal format readable by multiple programs.

Unlike G-code, STEP files contain the actual 3D model geometry. This allows the file to transfer complete definition of the part between CAD and CAM software.

With a STEP file, you can modify the original CAD design and re-generate toolpaths as needed. This makes it preferred for sharing editable 3D CNC projects.

The downside is that STEP files require CAM software to generate toolpaths. They cannot be directly run on a CNC machine like G-code.

STEP is ideal for transferring complex 3D data between different CAD platforms. Consider it the 3D counterpart to the 2D SVG format.

IGES (.igs)

IGES (Initial Graphics Exchange Specification) is another neutral CAD file format that can transfer 3D model data for CNC machining.

It came before STEP and is also an ISO standard. IGES has lost relevance now that STEP is more widely adopted.

Still, you may come across IGES files from time to time. They are readable by most CAD and CAM software.

DXF (.dxf)

DXF (Drawing Exchange Format) is a legacy CAD file format developed by Autodesk for 2D drafting and design. It’s still widely used today for CNC cutting applications.

Like SVG, DXF stores designs as vectors. This allows the files to scale infinitely without losing detail. Most modern CAD and CAM software supports importing and exporting DXF files.

DXF lacks some of the advanced features of SVG. But it remains popular given its long history and compatibility with a wide range of programs.

For simple 2D CNC cutting, DXF can work just as well as SVG in many cases. It comes down to your specific workflow and software capabilities.

Where to Find CNC Files

Where to Find CNC Files

Now that you understand the most common CNC file formats, where can you find files to machine your own parts? Here are some great resources:

CNC-Specific File Sharing Sites

  • CNC Pattern – Large collection of free G-code and SVG files.
  • CNCZones – Active forums with file sharing.
  • CutRocket – Modern site with premium and free CNC files.
  • DIYMachining – Specializes in hobby-level woodworking files.
  • EaglesLab – Material-specific CNC designs including metals and plastics.

CAD Model Sites

  • GrabCAD – Large CAD model library with manufacturing-friendly files.
  • TraceParts – Access over 100 million CAD models with production-ready quality.

Generic 3D Model Sites

  • Thingiverse – Popular site with both 3D printable and CNC-ready files.
  • MyMiniFactory – Repository of 3D printable models that may also work for CNC.
  • CGTrader – 3D model marketplace with files for sale.
  • TurboSquid – Major 3D model seller.

Project Forums

  • CNCZone – Active discussions with file sharing.
  • Reddit Groups – Subreddits like r/hobbycnc, r/cnc, r/lasercutting.

The best approach is to search across multiple sites to find files that fit your specific machine and project goals. Remember to check the file format, size dimensions, and other details before downloading anything.

Tips for Downloading CNC Files

Here are some quick tips when downloading and using shared CNC files:

  • Verify file format compatibility with your machine.
  • Check model dimensions to ensure fit.
  • Look for files optimized specifically for CNC (not just 3D printing).
  • Clean up and optimize toolpaths in CAM before machining.
  • Start with small cuts to verify program operation.
  • Review license terms – some files are for personal use only.
  • Be wary of very complex models that may be difficult to machine.

Taking the time to vet and prepare any shared CNC files will save you headaches down the road. The quality of downloaded models can vary greatly.

Wrap Up

With this guide, you should now have a firm grasp on the most common CNC file formats and types. From 2D vectors for cutting to 3D models for complex machining, there’s a file out there for any CNC project.

The world of shared CNC files continues to grow. More manufacturers and hobbyists are contributing their designs every day. Tap into this open ecosystem to expand the possibilities of your CNC machine.

Just remember to carefully vet any downloaded files before machining. Taking a few minutes to check format, dimensions, and model quality can save big disappointments later down the road.