← All tutorials

The Rhino .3dm File Format Explained

What's inside a .3dm file, how OpenNURBS versions work, and why downgrading is a lossy operation for some features.

OpenNURBS: the engine behind .3dm

Every .3dm file is written with the open-source OpenNURBS toolkit maintained by McNeel. Each Rhino release bumps the archive version (50 = Rhino 5, 60 = Rhino 6, 70 = Rhino 7, 80 = Rhino 8) whenever new object types are introduced.

What's stored inside

Geometry (NURBS surfaces, SubD, meshes, curves), layers, materials, blocks, annotations, viewport settings, plugin user data and a rendering mesh cache. A single file can range from a few kilobytes to several gigabytes.

Why downgrades can be lossy

When a newer object type (SubD from Rhino 7, new annotations from Rhino 8) is written to an older archive, OpenNURBS falls back to the closest legacy representation. Geometry is preserved; some metadata may be simplified.

Ready to convert your file?

Free up to 25 MB — no account, no installation.

Convert a Rhino file