.STL

STL File

Stereolithography / Standard Tessellation Language file
Ask a question
QUICK ANSWER

An STL file is a 3D model that describes a shape as a mesh of triangles. To view it, use Microsoft 3D Viewer (Windows) or Quick Look (macOS). To 3D-print it, open it in a slicer like Ultimaker Cura or PrusaSlicer, which converts it to G-code for your printer. STL stores surface geometry only - no units, no color, no edit history.

Developer: 3D Systems (Chuck Hull / Albert Consulting Group, 1987) Category: 3D Image Files Open standard MIME: model/stl
OPENS ON Windows macOS Linux Web
Related: .DCM · .STEP · .SKP · .STP

On this page

19k+ extensions indexed
Last reviewed Jun 28, 2026

Not sure what your file is?

Drop any file into our identifier - we read just the first bytes to name the format.

Identify a file

What is the STL file format?

.stl is a generic file format for storing 3D geometry data, created by 3D Systems - the company behind stereolithography 3D printing - in 1987. An .stl file stores 3D object data in either ASCII text or binary form.

Simplicity of STL

.stl files are used for storing and defining 3D models described by triangulated surfaces. The format is known for its simplicity: each object is defined by its 3D surface geometry, with no representation of textures, colors, or other standard CAD attributes such as materials or units. Every surface is broken down into triangular facets, each described by three corner vertices and an outward-facing normal vector.

Popularity of STL

Initially .stl was supported only by the stereolithography 3D printing system that gave it its name, but it soon gained popularity due to its simplicity and is now supported by virtually every modern CAD, 3D modeling, and slicer application. .stl is considered one of the simplest 3D data exchange formats and is used by professionals and amateurs alike - it remains the dominant format for FDM and SLA desktop 3D printing, though newer formats like 3MF are gradually replacing it for richer workflows.

Two versions of STL

The .stl format is available in two versions - binary and ASCII text. The ASCII version defines 3D objects using plain-text keywords (solid, facet normal, vertex, endloop, endfacet, endsolid) in a structured loop for each triangle. The binary version uses a different, more compact structure: an 80-byte header followed by a 4-byte triangle count and 50 bytes per triangle. Binary is far more popular because binary .stl files offer a much smaller file size - often 5× to 6× smaller than an equivalent ASCII file.

Security & safety

RISK: LOW

STL files are passive geometry data and carry no executable code, so opening one is low-risk. The real-world cautions are practical, not security: STL stores no units, so a model may import at the wrong scale (check mm vs inches), and meshes are often non-watertight or have flipped normals, causing slicing/print failures - repair them in MeshLab/Blender/Meshmixer. When downloading printable STLs, stick to reputable model sites and avoid 'free STL' pages that bundle adware installers around the download.

Format details

in a nutshell
FULL NAMEStereolithography / Standard Tessellation Language file
DEVELOPER3D Systems (Chuck Hull / Albert Consulting Group, 1987)since 1987 (created by 3D Systems for stereolithography 3D printing)
MIME TYPEmodel/stl
TYPETriangle-mesh 3D model - surface geometry only (ASCII or binary)
STANDARDOpen · royalty-free

Programs that open STL files

Windows7 apps
TurboCAD Paid Open/import the STL in this CAD package to view or work with it alongside CAD geometry.
Blender Open-source Import the STL (File > Import > STL) to edit the mesh, sculpt, scale or repair it; export back to STL/3MF.
MeshLab Open-source Open the STL to inspect, clean, simplify or repair the mesh and convert to OBJ/PLY/3MF.
3D Viewer (Microsoft) Free Install the free Microsoft '3D Viewer' app, then open the STL to view, rotate and inspect it. Quickest way to just look at a model.
Ultimaker Cura Open-source Open the STL in Cura, choose your printer/profile, and Slice to generate printable G-code. The most popular free slicer.
PrusaSlicer Open-source Import the STL, arrange/scale it, and slice to G-code. Works with most printers, not just Prusa.
Bambu Studio Free Open the STL, set print settings, and slice. Popular slicer for Bambu Lab and other printers.
macOS3 apps
Preview / Quick Look (built-in) Built-in Select the STL and press Space (Quick Look) to preview it, or open in Preview to rotate - no install needed for a quick look.
Ultimaker Cura / PrusaSlicer / Bambu Studio Open-source Open the STL in a slicer to prepare it for 3D printing (all three run on macOS).
MeshLab / Blender Open-source View, clean, repair or convert the STL mesh on macOS.
Linux3 apps
MeshLab Open-source Open the STL to view, repair, simplify and convert the mesh.
Blender / FreeCAD Open-source Blender edits the mesh; FreeCAD imports STL and can help convert a mesh toward solid CAD geometry.
Ultimaker Cura / PrusaSlicer Open-source Slice the STL into G-code for printing on Linux.
Web1 app
Autodesk Viewer / online STL viewers Free Upload the STL in a browser to view and rotate it without installing anything.

Technical details

deep spec
Format typeTriangle mesh - triangulated surface geometry only (no volumetric or NURBS data)
Encoding variantsTwo official encodings: ASCII plain text and binary; both represent the same geometry
Geometry primitiveTriangular facet: three vertices (X, Y, Z as 32-bit floats) plus one outward unit normal vector
Texture and color supportNone - geometry only; no colors, textures, materials, or layer information are stored
Coordinate systemRight-handed Cartesian (X, Y, Z) with 32-bit IEEE 754 single-precision floating-point values
UnitsNot encoded in the format; the importing application is responsible for interpreting the scale
ASCII structure keywords`solid`, `facet normal`, `outer loop`, `vertex`, `endloop`, `endfacet`, `endsolid`
Binary header80-byte free-text header (no fixed magic signature), followed by a 4-byte little-endian uint32 triangle count
Binary record size50 bytes per triangle: 12 bytes (normal) + 36 bytes (3 × vertex XYZ) + 2-byte attribute byte count
File identificationASCII files begin with `solid` at offset 0; binary files carry no fixed signature - tools use heuristics to distinguish them
MIME type`model/stl` (also historically `application/sla` and `application/vnd.ms-pki.stl`)
File size ratioBinary encoding is typically 5-6× smaller than ASCII for the same mesh data
Winding conventionCounter-clockwise vertex order when viewed from outside the surface (right-hand rule defines outward normal)
Mesh integrity requirementWatertight (closed, manifold) meshes are required by 3D printing slicers; the format itself does not enforce this
Multi-material supportNone natively; each `.stl` file encodes a single uniform surface with no material or colour assignment
Primary use case3D printing (FDM, SLA, SLS) and rapid prototyping; widely used for CAD geometry exchange between applications
Released1987 (created by 3D Systems for stereolithography 3D printing)
Open standardYes · royalty-free
Specificationen.wikipedia.org

STL conversions

Community Q&A

asked by users
Ask a quick question
Get help from people who work with STL files. Be specific - include your system and software version.
No account needed · answers usually within a day

No questions yet - be the first to ask about STL files.

Frequently asked questions

How do I open an STL file?
To just view it, use Microsoft 3D Viewer on Windows, Quick Look on macOS, or an online viewer. To 3D-print it, open it in a slicer like Ultimaker Cura, PrusaSlicer or Bambu Studio. To edit it, use Blender or MeshLab.
How do I 3D print an STL file?
Open the STL in a slicer (Cura, PrusaSlicer, Bambu Studio), pick your printer and material profile, position and scale the model, then click Slice. The slicer outputs G-code that you send to the printer.
What's the difference between STL and STEP?
STL is a triangle mesh that only approximates the surface - great for printing, not editable. STEP stores precise CAD geometry (exact surfaces, solids) you can measure and modify. Use STL to print, STEP to engineer.
How do I convert an STL to STEP?
It's a lossy mesh-to-solid conversion. FreeCAD or Fusion 360 can approximate it, but the result is rough - if you need accurate CAD, get the original STEP/native file instead of converting from STL.
My STL won't print correctly - why?
Common causes are a non-watertight mesh (holes/gaps), flipped normals, or wrong scale/units. Run the model through a repair tool (Microsoft 3D Builder, Meshmixer, or MeshLab) and confirm the size in your slicer before printing.
Why does my STL look low-poly / faceted?
STL approximates curves with flat triangles, and the detail is fixed at export time. If it's too coarse, re-export the STL from the source CAD with a finer chord/deviation setting - you can't add detail that isn't in the file.
STL or 3MF - which should I use?
Use 3MF when your printer/slicer supports it: it keeps units, color, materials and multiple objects in one file and avoids STL's scaling ambiguity. STL is still the most universal format, so keep it for maximum compatibility.

References

1Wikipedia - STL (file format)en.wikipedia.org
2Ultimaker Cura - slicing softwareultimaker.com

Keep exploring

across the database

Top extensions this week

1.AQQAQQ Instant Messenger File
2.MDMarkdown Document
3.CRDOWNLOADChrome Partial Download File
4.BINCD/DVD Disc Image (BIN/CUE)
5.PARTPartial Download File
6.RPMSGRestricted Permission Message
7.NOMEDIAAndroid No-Media Marker File
8.EXEWindows Executable (Portable Executable)
9.AVIFAV1 Image File Format (AVIF)
10.ICSiCalendar data file

Related extensions

.DCMDICOM Medical Image
.STEPSTEP - Standard for the Exchange of Product Data (ISO 10303)
.SKPSketchUp Document
.STPSTEP - Standard for the Exchange of Product Data (ISO 10303), .stp spelling
.MTLMaterial Template Library (Wavefront)
.MAX3ds Max Scene File (Autodesk 3ds Max)

Free file tools

An in-browser file identifier and image converter - everything runs on your device.

Open the toolbox

Browse file extensions A-Z