Skip to content

Free Online PLY Viewer

PLY is what 3D scanners, photogrammetry pipelines and research code write: triangle meshes with per-vertex colour, normals and custom properties instead of textures. This viewer loads .ply files locally with three.js and shows the scan with the colour it actually carries.

Because PLY stores information per vertex rather than in maps, a photogrammetry capture arrives complete in one file. Files up to 500MB are parsed in the browser and never uploaded.

Select the model together with its material, texture and binary files. Files stay in this browser.

Shading

AO mode displays authored occlusion maps; white means none is supplied. This is not real-time ambient occlusion.

Model info
Vertices
—
Triangles
—
Materials
—
Dimensions
—
Free Online PLY Viewer 100% private — your file never leaves this browser tab.

How it works

Add your PLY file

Drop a .ply file onto the drop zone or click to browse. Both ASCII and binary PLY load; binary files are far smaller for the same scan, so a 200MB ASCII capture may be only 30MB in binary form.

Check colour, normals and density

Scans carry colour per vertex, so no texture files are needed. Switch to wireframe to judge how dense the mesh is, normal shading to see whether vertex normals exist, and read the vertex and face counts from the info panel.

Convert for printing or downstream tools

PLY geometry is plain triangles, so PLY to STL is a direct route to a slicer, while PLY to GLB gives you a format that web viewers and engines handle natively. Conversions run server-side with a 50MB limit.

◈

Per-vertex colour, no texture hunt

Photogrammetry and scanner output stores colour on the vertices themselves, so the capture appears in full colour with no image files to track down.

◈

ASCII and binary PLY

The header stays human-readable either way, while the data block can be ASCII or binary in little-endian or big-endian order. All three variants load, and the binary ones are dramatically smaller.

◈

Built for dense scans

Laser scans and photogrammetry meshes can run to millions of triangles. The viewer accepts files up to 500MB, parses them locally and reports the vertex count so you know exactly how heavy the capture is.

◈

Shading modes that reveal scan problems

Wireframe shows triangle density, normal shading exposes missing or noisy vertex normals, X-ray finds holes and internal shells, and matcap makes surface wobble visible without colour distracting you.

◈

Nothing leaves the device

Client scan data, survey meshes and unreleased research models stay in the tab. There is no upload, no cache on our side and no account.

What Is a PLY File?

PLY was developed at Stanford in the mid-1990s for exactly the workload it still dominates: dense 3D scanning. The name expands to Polygon File Format, and it is also called the Stanford Triangle Format because triangles are what it stores in practice.

A PLY file starts with an ASCII header that declares the format version, the byte order, and every element and property that follows: vertices with x, y and z, optional nx, ny, nz normals, optional red, green and blue colour, optional texture coordinates or confidence values, then faces as vertex index lists. Because the header is declarative, a reader can skip properties it does not understand.

That design makes PLY a container rather than a fixed schema, which is why scanners, photogrammetry tools such as Meshroom and RealityCapture, and research libraries such as Open3D and MeshLab all write it. It carries no materials, no UV-based shading and no units, and the ASCII variant is several times larger than the binary one for the same data.

Advantages

  • Per-vertex colour, normals and arbitrary custom properties
  • Handles very dense scan meshes without a texture pipeline
  • Both ASCII and binary variants, in either byte order
  • Open, declarative header that readers can extend safely

Disadvantages

  • No material or PBR support at all
  • Colour lives on vertices, so it gets blocky on coarse meshes
  • No units, so a scan has whatever scale the scanner assumed
  • Uncommon in game and web pipelines, which prefer GLB

Who Uses This PLY Viewer?

Photogrammetry users

Check a Meshroom or RealityCapture reconstruction before spending an hour cleaning it: look for holes, stray floating shells and lost tracking regions.

Heritage and archaeology teams

Review recorded artefacts and sites locally, without uploading sensitive or unpublished survey data to a third-party service.

Surveyors and laser-scanning engineers

Open a terrestrial or drone scan to confirm the capture covers the intended area and that the density is what the project specified.

VFX and environment artists

Inspect a scan-based asset before decimating and retopologising it, and judge whether the vertex colour is good enough to bake from.

Researchers in geometry processing

Open PLY data sets on any machine, including ones where installing MeshLab or Open3D is not practical.

Makers printing from scans

See what a scan looks like before converting it to STL, then scale it to a real millimetre width in the STL editor once the mesh is watertight enough to print.

Frequently Asked Questions

What is a PLY viewer?

It parses a Polygon File Format file and renders the mesh or scan it contains, including per-vertex colour when the file provides it. This viewer runs in your browser with a three.js PLYLoader, reports vertex and face counts and bounding-box dimensions, and never uploads the file.

How do I open a .ply file online?

Drag the .ply onto the drop zone or click to browse. ASCII, binary little-endian and binary big-endian files all load, and the model is framed automatically once parsed. Nothing is uploaded and no plugin or installer is involved.

Does the viewer show the colours in my scan?

Yes. PLY stores colour per vertex, usually as unsigned bytes from 0 to 255 and sometimes as floats, and the loader maps that onto the geometry so a photogrammetry capture appears in full colour with no image files. On a coarse mesh the colour can look blocky, because there are simply fewer vertices to hold it.

Can I open a PLY point cloud, one with vertices but no faces?

Partially, and honestly: a PLY with vertices and no face list is a point cloud, not a surface, so there is nothing to shade. The viewer still parses the file and reports the vertex count and bounding box, but the face count reads zero and mesh operations such as watertight checks or hollowing do not apply until you reconstruct a surface in a tool such as MeshLab or CloudCompare.

Is my PLY file uploaded to a server?

No. The file is parsed locally and can be up to 500MB. That matters for scan data in particular, since survey and heritage captures are often confidential or unpublished. An upload only happens if you deliberately use a converter afterwards, where the limit is 50MB per file.

Why is my scan slow to rotate?

Dense photogrammetry meshes can hold millions of triangles, and every frame redraws them. Close other tabs, use wireframe or diffuse shading rather than textured, and consider decimating the mesh in MeshLab, Blender or CloudCompare first: a 30 percent reduction often looks identical and moves far better.

Can I 3D print a PLY file?

The geometry is printable if it is watertight, but most slicers do not read PLY, so convert it to STL or 3MF first. Use the STL editor afterwards to fill holes, merge duplicate vertices, fix normals and check the manifold report, because scanner meshes very often arrive with open boundaries and non-manifold edges.

Does PLY store units or scale information?

No. PLY has no unit field, so the numbers mean whatever the scanner or reconstruction assumed; a mesh may be in metres, millimetres or an arbitrary scanner unit. Get the intended size from the capture metadata, then set the longest axis to an exact millimetre value with the STL editor's scale-to-width operation.

Can I measure distances between points in the viewer?

No point-to-point measurement is available: the info panel reports the bounding-box dimensions, vertex count, face count and material count. Accurate dimensioning belongs in MeshLab, CloudCompare or your CAD tool, where you can pick two vertices and read the distance.