Convert PLY to STL
PLY files usually come out of a 3D scanner. STL is what a slicer wants. This tool converts between them in your browser, and tells you whether the scan is actually closed enough to print before you send it anywhere.
Drag a 3D file here, or.
This page is set up for PLY files. Other formats we can read work here too.
The file is read on your own computer. It is never uploaded.
Your file is read by your own browser and never sent to a server. There is no upload, no account and no copy of your model anywhere but on your computer.
Scanned meshes and holes
A scan almost never comes out watertight. There are places the scanner could not see — underneath the object, inside a recess — and those come through as holes in the mesh. STL will happily store a mesh with holes, and your slicer will then do something unpredictable with it.
So the numbers beside the 3D view include a count of open edges. If it says the shape is closed, the model encloses a real volume and will slice properly. If it reports open edges, the mesh needs filling first, in MeshLab, Meshmixer or Blender.
Colour will not survive
The main reason to use PLY is that it stores a colour for every point, and scanners write a lot of colour. STL stores triangles and nothing else, so all of it is dropped.
If the colour matters, convert to GLB or 3MF instead. Both keep it. STL is a shape-only format and always has been.
Both kinds of PLY are read
PLY comes in an ASCII form and a binary form, and the binary form comes in two byte orders. All of them are read here, along with the extra per-vertex properties that scanning software likes to add.
A PLY holding only points and no faces cannot become an STL, because there are no triangles to write. If you have a point cloud, it needs to be turned into a surface first — that is a reconstruction step, not a conversion.
Scans are enormous, and that is usually the real problem
A handheld scan of a small object routinely arrives with two or three million triangles, because the scanner samples on a fixed grid rather than according to how much detail the surface actually has. A flat table top gets the same density as a carved corner.
That matters because a slicer has to hold the whole mesh in memory and check it, and most of them slow to a crawl somewhere above a million triangles. It also gains you nothing: a 0.4 mm nozzle cannot print detail finer than about 0.2 mm, and a two million triangle scan of a hand-sized object is describing features far smaller than that.
The triangle count is shown beside the 3D view. If it is over a million and the object is smaller than your hand, run the mesh through a decimation step first — Filters, Remeshing, Quadric Edge Collapse Decimation in MeshLab, or the Decimate modifier in Blender. Reducing to two or three hundred thousand triangles usually makes no visible difference to the print and makes everything downstream faster.
What survives, and what does not
Kept in the STL file
- The exact shape
- The size, converted to the units you choose
Lost on the way
- Vertex colours — STL stores none
- Any extra per-vertex properties the scanner wrote
How to convert PLY to STL
Drop the .ply file in
ASCII PLY, binary little-endian and binary big-endian are all read, along with the extra per-vertex properties scanning software adds.
Read the open-edge count first
It is beside the 3D view. A scan with open edges is not a solid, and a slicer given one does something unpredictable. This is the number that decides whether the rest of the process is worth starting.
Check the triangle count
Above a million on a small object means the scan is denser than a printer can use. Decimate it in MeshLab or Blender before converting and everything afterwards is faster.
Set the units to match the scanner
Scanners usually write millimetres, but not all of them. The measured width, depth and height shown next to the model are the check — compare them against the real object.
Download the binary STL
Colour, if the scan had any, is gone at this point: STL has nowhere to put it. If that matters, convert to 3MF or GLB instead.
PLY and STL compared
| Property | PLY.ply | STL.stl |
|---|---|---|
| File contents | A text header that declares the properties, then the data as either text or binary. | Binary or plain text. Binary is an 80-byte header, a triangle count, then 50 bytes per triangle. |
| Geometry | Triangles and polygons, built from a shared list of points. | Triangles only. Curves are approximated when the file is made, and cannot be recovered. |
| Units | None recorded. | None. The file stores bare numbers, and every reader has to guess what they mean. |
| Colour and texture | A colour for every point, which is the main reason the format exists. | None. There is no place in the format for a colour, a material or a texture. |
| Separate objects | One mesh. The header can declare extra per-point properties instead. | One body. Several parts written into one STL become one undivided lump of triangles. |
| Published by | Stanford University, 1994, for the scanning work that produced the Stanford bunny. | 3D Systems, 1987, for the first stereolithography machines. |
| Written by | MeshLab, CloudCompare, Open3D and most 3D scanners. | Every CAD program and every slicer, as the common denominator. |
Questions
- My PLY is a point cloud. Can I convert it?
- No, and no converter can. A point cloud has no surface, and STL is a list of triangles. You need to reconstruct a surface first, for example with Poisson reconstruction in MeshLab, then convert the result.
- The tool says my model has open edges. Can I still print it?
- Sometimes. Small holes are often patched automatically by the slicer. Large ones usually are not, and the print goes wrong in ways that are hard to predict. It is worth filling them properly first.
- Where did the colours go?
- STL cannot store them. Convert to GLB if you want to keep the colour of a scan, or to 3MF if you want colour and printing.
- My scan is two million triangles. Should I reduce it first?
- Yes, almost always. A 0.4 mm nozzle cannot print detail finer than about 0.2 mm, so most of those triangles describe features the printer cannot reproduce. Decimating to a few hundred thousand makes the file manageable and the print identical.
Having it printed
If the part is larger than your bed, needs a material your printer cannot handle, or you do not have a printer, these will print it and post it to you. Work out what it would cost you first — the cost calculator on this site gives you a figure to compare against.
- JLC3DPCheapest for resin and nylon, slow shipping
- CraftcloudCompares dozens of printers at once, including local ones
- PCBWayMetal printing and CNC as well as plastic
These are ordinary links, not paid referrals — we earn nothing if you use them. The converter above is the same whether you do or not.
Where to go next
The other direction
Other things to do with a PLY file
Other ways to get a STL file
Related guides and tools
- Repair an STL that will not sliceClose the holes and separate the bad edges so a slicer accepts it
- Reduce the size of an STL fileFewer triangles, the same shape, a much smaller file
- Check whether an STL is ready to printFind out what is wrong with a model before you print it
- Gridfinity generatorBins and baseplates, any size, built in the browser
- Turn text into an STLType a word and print it, without drawing anything
- STL to G-codeGuide
- How to convert an STL file to G-codeGuide