PLY to STL Converter
Turn a PLY file from a 3D scanner, photogrammetry app or 3D program into an STL for printing, right in your browser. It reads ASCII and binary PLY (little-endian and big-endian) and shows what is inside: the format, every element and property, and how many faces have three, four or more corners. Quads and larger faces are split into triangles, including faces with a dent in them, so no face is lost. STL holds only triangles, so vertex colours, stored normals and texture coordinates are dropped, and the page says which ones your file had. A PLY with points but no faces (a point cloud) is refused with the reason, because there is no surface to print yet. Set the units (most scans are in metres), turn a Y-up model so Z is up, place it on the print bed, then download a binary or ASCII STL. Nothing is uploaded.
100% private — everything runs in your browser. Everything runs in your browser; your files are never uploaded.
Size and position
File
Runs in your browser: the PLY is read and turned into an STL by our own code, with no upload and nothing saved. You may use what you make here, including commercially, with no credit needed. The rights in your own drawings and models stay as they were.
How to convert a PLY to STL
- Drop a PLY on the box, or click Try a sample.
- Read the header report: format, elements and face sizes.
- Set PLY units (metres for most scans) and which way is up, then check the size and volume.
- Download the STL. It is read back and checked before it is saved.
What you can use it for
- 3D print a part scanned with a phone or 3D scanner
- Print a photogrammetry model saved as PLY
- Turn a PLY from a 3D program into an STL for a slicer
- Check what a PLY file holds before you use it
- Fix a scan that comes out 1000 times too small
- Turn a model that lies on its back so Z is up
What is kept and what is dropped
| In the PLY | In the STL |
|---|---|
| Vertex x, y, z | Kept, scaled by the units you choose (and turned if Y is up) |
| Triangles | Kept as they are, same winding |
| Quads and faces with 5 or more corners | Split into triangles on the face’s own plane |
| Vertex colours (red, green, blue, alpha) | Dropped: STL has no colour |
| Stored normals (nx, ny, nz) | Dropped: each STL triangle gets a normal worked out from its corners |
| Texture coordinates, edges, materials, other elements | Read past and dropped, and listed in the header report |
| Points with no faces (point cloud) | Refused: no surface to save |
| Faces wound inside out (negative volume) | Turned the right way, and the page says so |
Every face is checked: a face that points to a vertex that does not exist is skipped and counted, never guessed.
What the test models give
| Model | PLY type | Faces: 3 / 4 / 5+ corners | STL triangles | STL size | Volume |
|---|---|---|---|---|---|
| 20 mm cube of 6 quads | ASCII | 0 / 6 / 0 | 12 | 20 × 20 × 20 mm | 8,000 mm³ |
| Same cube, double coordinates | binary BE | 0 / 6 / 0 | 12 | 20 × 20 × 20 mm | 8,000 mm³ |
| Hexagonal prism (6-corner ends) | ASCII | 0 / 6 / 2 | 20 | 20 × 17.3 × 10 mm | 2,598 mm³ |
| L-shaped prism (concave 6-corner ends) | ASCII | 0 / 6 / 2 | 20 | 20 × 20 × 5 mm | 1,500 mm³ |
| 0.02 m cube read as metres | ASCII | 12 / 0 / 0 | 12 | 20 × 20 × 20 mm | 8,000 mm³ |
| UV sphere, radius 25 | binary LE | 128 / 1,920 / 0 | 3,968 | 50 × 50 × 50 mm | 65,187 mm³ |
Computed by the converter itself from its own test models. A cube of six quads becomes 12 triangles with a volume of exactly 8,000 mm³; the L-shaped prism keeps its dent (20 × 20 minus a 10 × 10 corner, 5 mm high = 1,500 mm³).
PLY units and the size of the STL
| PLY units chosen | Scale | A 0.02-unit cube becomes |
|---|---|---|
| Millimetres | × 1 | 0.02 × 0.02 × 0.02 mm |
| Centimetres | × 10 | 0.2 × 0.2 × 0.2 mm |
| Metres | × 1000 | 20 × 20 × 20 mm |
| Inches | × 25.4 | 0.508 × 0.508 × 0.508 mm |
A PLY file has no unit field. Models made for 3D printing are usually in millimetres, which is the default; many scanning apps save in metres. Check the size line before you download.
PLY types this converter reads
| Format line | Data after the header |
|---|---|
| format ascii 1.0 | Numbers as text, one element per line |
| format binary_little_endian 1.0 | Binary, least significant byte first (most PC and phone software) |
| format binary_big_endian 1.0 | Binary, most significant byte first |
A PLY file starts with the letters ply and a text header that lists each element (such as vertex and face), how many there are, and their properties, ending with end_header. Faces are lists of vertex numbers (vertex_indices or vertex_index).
Next steps
Check the STL in the STL viewer and work out the cost of a print with the 3D Print Cost Calculator. Have an OBJ or 3MF instead? Try OBJ to STL or 3MF to STL.
Sources
Sources: Library of Congress: Polygon File Format (PLY) Family; Paul Bourke: PLY, Polygon File Format; Library of Congress: STL (STereoLithography) File Format Family; Library of Congress: STL File Format, Binary.
More free tools
Making parts for a 3D printer, laser or CNC?
View, convert and design parts with free maker tools that run privately in your browser, with no sign-up and no watermark.
See all free tools →Frequently asked questions
Is this PLY to STL converter free?
Yes. There is no sign-up, no watermark and no limit on how many files you convert. The conversion runs in your browser, so your PLY never leaves your device.
Does it read binary PLY?
Yes: ASCII, binary little-endian and binary big-endian, with any of the PLY number types (char, uchar, short, ushort, int, uint, float, double and their int8 to float64 names).
What happens to quads and larger faces?
Each face with four or more corners is split into triangles on its own plane (ear clipping), keeping the way it faces. A face with five or more corners is split too, so no face is dropped.
Why was my PLY refused as a point cloud?
It has points but no faces. A point cloud has no surface, so there is nothing to print. Build a surface from the points first (surface reconstruction in a scanning or mesh program), then convert that mesh.
Are colours kept?
No. STL stores only triangles, so vertex colours, stored normals, texture coordinates and any extra data are dropped. The page lists what your file had. For colour, keep the PLY or use a format with colour.
Why is my STL tiny or huge?
STL has no units and slicers read it as millimetres. Many 3D scans are in metres, so a 20 cm object shows up as 0.2 mm. Choose Metres under PLY units and it becomes 200 mm.
My model lies on its side. What do I do?
Many scanning and 3D programs use Y as up, while 3D printing uses Z. Choose Y is up and the model is turned so its top points up.
What if the scan is not watertight?
Scans often have small gaps. The STL is still written and the page says the surface is not closed; most slicers can repair small gaps, or use a mesh repair tool first.
Is my PLY uploaded?
No. The PLY is read and converted by JavaScript in your browser, so it never leaves your device.