b2KIT

STL 3D Model Viewer

View and rotate STL 3D model files in the browser with wireframe, solid, and measurement modes.

Tested tool guide Tested browser tools Checked August 16, 2026

What STL 3D Model Viewer does, with a checked example

Drop an .stl file onto the page and the model appears instantly, ready to rotate, pan, and zoom with no software to install. STL is the standard surface format for 3D printing, and the viewer shows the model as a solid mesh or as a wireframe of triangles, with a measurement mode that reads distances between points on the surface. The file is handled entirely in the browser and never uploaded. The thing most people get wrong: STL stores no units, so a measurement of 40 is 40 millimeters only if the exporting program happened to work in millimeters.

Worked example

A concrete input and expected output from the current implementation.

Input

solid tetra
  facet normal 0.5774 0.5774 -0.5774
    outer loop
      vertex 1 1 1
      vertex 1 -1 -1
      vertex -1 1 -1
    endloop
  endfacet
  facet normal 0.5774 -0.5774 0.5774
    outer loop
      vertex 1 1 1
      vertex -1 -1 1
      vertex 1 -1 -1
    endloop
  endfacet
  facet normal -0.5774 0.5774 0.5774
    outer loop
      vertex 1 1 1
      vertex -1 1 -1
      vertex -1 -1 1
    endloop
  endfacet
  facet normal -0.5774 -0.5774 -0.5774
    outer loop
      vertex 1 -1 -1
      vertex -1 -1 1
      vertex -1 1 -1
    endloop
  endfacet
endsolid tetra

Expected output

The viewer renders a regular tetrahedron. The parse yields 4 triangles sharing 4 corner vertices; in measurement mode, clicking any two corners returns 2.83 (the square root of 8) in the file's units, because every pair of corners is an edge and each edge has the same length.

The four vertices sit at (1,1,1), (1,-1,-1), (-1,1,-1), and (-1,-1,1), so every edge spans two coordinate differences of 2 and measures sqrt(4+4) = sqrt(8) = 2.83. A regular tetrahedron was chosen deliberately: all six corner pairs are edges, so any two points you click give the same answer.

How the result is produced

1

Two encodings, one triangle list

An STL file is a list of triangles in one of two encodings. Binary STL opens with an 80-byte header and a 4-byte triangle count, followed by 50-byte records holding three vertices and a normal. ASCII STL is plain text built from solid, facet, vertex, and endfacet keywords, and ASCII files are distinguishable because they begin with the word solid. Both encodings store triangles as plain x, y, z coordinates.

2

Measuring the raw coordinates

Measurement mode reports distances computed from the stored coordinates, so a reading is exact to the precision of the numbers inside the file. The catch is those numbers carry no unit: STL was never given one, so a width that reads 25 is 25 millimeters, inches, or meters depending on what the exporting program assumed. Viewing, rotating, and measuring all happen in memory; the file on disk is never altered.

Good uses

  • Check that a downloaded printable model will fit: open it, measure it in measurement mode, and compare the reading against your printer's build volume or the part it must mate with before spending any filament.
  • Inspect mesh quality before printing: switch to wireframe to see triangle density and hunt for holes, sliver triangles, or missing faces that a slicer would faithfully reproduce as print defects.
  • Show a model to someone without CAD software: a browser tab is all they need to rotate and examine the file you send them, which is handy for clients, colleagues, and support forums.

Limits and checks

  • A measured number is meaningless until you know the exporter's unit. Two models that both read 40 wide can be 40 mm and 40 inches; the file itself says nothing, so confirm the CAD program's unit setting before acting on a dimension.
  • STL records only the outer surface - no color, texture, material, or interior. A part that renders solid is an empty shell, so wall thickness and infill cannot be judged here; a slicer preview shows what this file cannot.
  • Curved shapes are approximations built from flat triangles: the finer the mesh, the smoother the render. A measurement across a curve is a chord, slightly shorter than the true surface, and on coarse meshes the polygon edges are plainly visible in both display modes.

Common questions

Is a reading of 25 millimeters or inches?

STL stores no units, so the viewer cannot know; 25 is whatever unit the exporting program used. Most CAD packages export in the unit you modeled in, and slicers conventionally assume millimeters, but the only reliable check is the exporter's unit setting or measuring a physical part.

Can I convert or export the model from here?

No. This page is a viewer: it renders and measures, and its modes - solid, wireframe, measurement - are all viewing modes, so it does not convert or export files. If you need an OBJ, 3MF, or STEP copy of the model, use a dedicated format converter instead.

References and verification

The example and behavioral notes were checked against the browser implementation. Standards and primary references below define the relevant format, formula, or platform behavior.

Related Tools