Skip to main content

Embed 3D Gaussian Splatting on Your Website

Generate ready-to-use embed code for your 3DGS scenes. Preview the result live, then copy the iframe or script snippet to your site.

Last updated Mar 2026

File must be publicly accessible with CORS headers enabled

What You Should Know

How Does 3DGS Embedding Work?

Embedding a Gaussian Splatting scene on a website works similarly to embedding a YouTube video: you place an iframe that loads a viewer page pointing to your 3DGS file. The viewer handles WebGL rendering, camera controls, and progressive loading. Your visitors see an interactive 3D scene they can orbit, zoom, and pan — all without installing anything. The embed code generated by this tool creates a self-contained iframe that loads the Polyvia3D viewer with your file URL pre-configured.

Hosting Your 3DGS Files

For the embed to work, your 3DGS file must be accessible via a public URL with CORS headers that allow cross-origin requests. Common hosting options include: cloud storage (AWS S3, Google Cloud Storage, Cloudflare R2) with public access enabled, CDN services (Cloudflare, Fastly, BunnyCDN), or your own web server configured to serve static files with the correct Content-Type and Access-Control-Allow-Origin headers. SPZ files are recommended for embedding due to their small size — a typical scene loads in 2-5 seconds on broadband connections.

Supported Formats for Embedding

All four Gaussian Splatting formats are supported: PLY (3DGS), SPLAT, KSplat, and SPZ. However, SPZ is strongly recommended for web embedding. A PLY file that is 500 MB will take minutes to load over a typical connection, while the same scene compressed to SPZ (50 MB) loads much faster. If your file is in PLY or SPLAT format, consider compressing it to SPZ first using our compression tool, then embed the compressed version.

Customization Options

The embed code supports several customization parameters: width and height of the viewer frame, autoplay (start rendering immediately vs. click to load), background color, and initial camera position. The generated iframe includes responsive sizing by default, so it adapts to the container width on mobile and desktop. You can further customize the appearance by wrapping the iframe in a styled container on your website.

Frequently Asked Questions
No. The embedded viewer runs entirely in the browser using WebGL. Visitors only need a modern browser (Chrome, Firefox, Safari, Edge) with hardware acceleration enabled. Mobile devices are supported but may have slower rendering for large scenes.
Your file must be hosted at a publicly accessible URL with CORS headers (Access-Control-Allow-Origin: *). Cloud storage services like AWS S3, Google Cloud Storage, or Cloudflare R2 with public bucket settings work well. The URL must be a direct link to the file, not a download page.
SPZ is the best format for web embedding. It provides 5-10x compression over raw PLY while preserving spherical harmonics, resulting in fast load times and high visual quality. If you only have a PLY or SPLAT file, compress it to SPZ first using our compression tool.
WordPress: yes, use the Custom HTML block to paste the iframe code. Squarespace: yes, use the Code block or Embed block. Notion: partial support — Notion allows iframe embeds but may restrict some features. For best results, test the embed on your specific platform.
There is no hard limit, but practical limits apply. Files over 100 MB will be slow to load for visitors on mobile connections. For the best user experience, keep embedded scenes under 50 MB (SPZ) or under 2 million Gaussians. Larger scenes should be optimized or cropped before embedding.
Yes. The embed code supports width, height, and background color parameters. You can also wrap the iframe in a styled container to add borders, shadows, or rounded corners. The viewer itself has orbit controls, zoom, and pan built in.
Load time depends on file size and the visitor's connection speed. An SPZ file under 20 MB typically loads in 2-5 seconds on broadband. A raw PLY file of the same scene (200+ MB) can take over a minute. For the fastest embedded experience, compress your files to SPZ format before embedding.

Related Tools

Step-by-Step Guides