What a PLY file is
PLY, the Stanford polygon format, is the file that scanners, photogrammetry software (Meshroom, RealityCapture, Agisoft) and depth cameras produce most often. It starts with a short text header that lists what the file contains: how many vertices, which properties each vertex has (position, and often normal, colour and a confidence value), how many faces if any, and whether the rest of the file is ASCII text or binary. That header is why PLY is the natural format for scan data: it can hold a colour per vertex, which STL cannot, and it can hold vertices without any faces at all, which is a point cloud.
This PLY viewer reads both text and binary PLY. If the file has faces, you get a shaded mesh with the vertex colours painted across it. If it has only vertices, the viewer draws points. Dimensions, triangle and vertex counts, the watertight check and measurement between two clicked points all work on the mesh form.
Like every tool on this site, the work happens in your browser. The file is read from your device, parsed in memory and drawn with WebGL; no copy is sent anywhere. Open the network panel of your browser's developer tools while you load a model and you will see no upload. Close the tab and the model is gone.
Worked example: a 200,000-vertex scan of a shoe insole
You scanned an insole with a phone app to print a copy, and the app exported insole.ply.
- Drop the file. The status line shows
398,120 triangles,199,842 vertices,binary little endian. The colour from the scan is painted on the mesh, which helps you tell the fabric top from the foam side. - The dimensions panel reads
271.4 x 96.8 x 14.2 mm. Phone scanners usually export in millimetres, and 271 mm is a plausible length for a size 43 insole, so units are fine. If it had read0.27 x 0.10 x 0.01, the app exported metres and the model needs scaling by 1000. - Look at the watertight line:
no, 1,240 open edges. Almost every raw scan is open somewhere, typically around the outline where the scanner lost the edge. The viewer counts those edges; closing them is a job for a mesh editor with a hole-fill tool, and the number tells you how much work that is. - Switch on Wireframe. Scan meshes are dense and even; 400,000 triangles is more than a printer needs, and decimating to a tenth of that in a mesh editor makes slicing quicker without visible loss.
- Click on the heel and the toe to measure the length, and compare with a ruler on the real insole. A 2 to 3 percent difference is typical for phone photogrammetry, and you can correct for it with the scale tool in your slicer.
Point clouds, colours and converting to STL
A PLY with no face element is a point cloud. The viewer draws it as points so you can look at it, measure between points and read the extent, but volume, surface area and the watertight check need triangles, so those lines stay blank. To print a point cloud you first need to reconstruct a surface in software such as MeshLab or CloudCompare, then come back here to check the result.
Converting a PLY mesh to STL for printing is a click in PLY to STL. Colour is lost on the way, because STL stores only triangles. If you need the colour, keep the PLY, or convert to GLB, which keeps vertex colours and can be shown on a web page.
Limitations
- Custom vertex properties (confidence, intensity, curvature, scalar fields) are read past but not displayed. Position, normal and colour are used.
- Faces with more than three corners are triangulated on load.
- Texture images referenced by the PLY header are not loaded; only per-vertex colour is shown.
- Point clouds have no volume, surface area or watertight status, since there are no triangles.
- The whole file is held in memory. Raw scans of several hundred MB can exceed what a phone browser allows; decimate first on a desktop.
Last updated 2026-09-16. Runs in your browser; nothing is uploaded.