Browser-local converter
PLY to OBJ converter
Convert a Stanford PLY into a Wavefront OBJ locally. ASCII, binary little-endian and binary big-endian are all read, which matters with scan data because scanning software disagrees about which one to write.
Drop your PLY files here
STL, OBJ, PLY, GLB, glTF, 3MF, SVG and DXF. Nothing is uploaded: files are read and converted inside this tab. Checking what this device can handle...
Queue
No files yet. Drop models above, or use the file picker.
Output
Units
Size and placement
Repair and cleanup
These can change the shape, so they need a before-and-after review before export.
Inspection
Add a model to see its dimensions, mesh health and estimated volume.
What this PLY to OBJ conversion does and does not do
- Per-vertex colour, which most scanners write, cannot survive into OBJ. OBJ assigns colour per material, not per vertex, so there is no place to put it. The workspace tells you when colour was present and is being dropped.
- A PLY holding only points and no faces cannot be converted. Reconstructing a surface from a point cloud invents geometry, and that is never done silently here.
- Neither format records a unit, so coordinates are copied across unchanged.
- Faces with more than three corners are split with a triangle fan, which is exact for convex faces.
- Custom PLY properties beyond position, normal, uv and colour are read past and ignored rather than guessed at.
- Scan meshes are frequently in the millions of triangles, and OBJ is a text format, so the output can be very large. The workspace refuses a mesh before allocating if it will not fit in memory.
Troubleshooting
The file is rejected as having no faces
It is a point cloud. Run surface reconstruction in your scanning or mesh software first; there is no faithful automatic route from points to a surface.
My scan colours are gone
Expected, and unavoidable in OBJ: colour there belongs to a material, not to a vertex. Convert to GLB or 3MF if the appearance matters more than the OBJ format itself.
The mesh is full of holes
Scan data usually is. The inspection panel counts open edges, non-manifold edges and separate shells. Safe repair cleans duplicates, degenerate triangles and winding, and will never fill a hole.
The OBJ is enormous
OBJ is plain text, so a multi-million-triangle scan produces a very large file. Welding duplicate vertices first makes the biggest difference.
Questions
Which PLY variants can it read?
ASCII, binary little-endian and binary big-endian, with arbitrary property ordering and the full set of scalar types. The header is parsed properly rather than pattern-matched, so unusual exporters still work.
Can I keep the scan colour anywhere?
Not in OBJ. Per-vertex colour is detected and reported, and today it is not carried into any export target, which is recorded honestly on the formats page rather than implied to work.
Is my scan uploaded?
No. Scan data is often sensitive, and this site has no endpoint that could receive it. Everything runs in a Web Worker on your machine.
More tools
- PLY to STLConvert a Stanford PLY into an STL locally.
- STL to PLYConvert an STL into a Stanford PLY on your own machine, for MeshLab, CloudCompare, research tooling or anything else that prefers PLY.
- STL to OBJConvert an STL into a Wavefront OBJ locally.
- OBJ to STLTurn a Wavefront OBJ into a printable STL entirely inside this tab.