A compressed Gaussian splat for a single product runs 1 to 4 MB and loads on LTE in under two seconds. Here is what changed, and the tradeoffs founders need to know.

If you have looked at Gaussian splats in the last year and dismissed them as a desktop demo that does not survive a phone over LTE, that read was correct in 2024 and wrong in 2026. The compression and runtime story has changed enough that a buyer-ready splat for a single product now ships at 1 to 4 MB. On a clean page, the buyer rotates the product before the LTE spinner stops.
Two things changed. Compression dropped the file from 100 to 300 MB raw down to 1 to 4 MB buyer-ready. Progressive rendering pipelines now stream the splat in priority order, so the first frame appears in well under a second on LTE. With lazy-load and a small initial chunk, the splat reaches the buyer faster than most photoreal GLB models do. Google's Largest Contentful Paint target is 2.5 seconds for a "good" rating at the 75th percentile, and a properly shipped splat clears that line.
The technique itself was published as 3D Gaussian Splatting for Real-Time Radiance Field Rendering at SIGGRAPH 2023 by Kerbl, Kopanas, Leimkühler, and Drettakis at INRIA. The 2023 paper was a research milestone. The 2026 reality on a product page is the compression and shipping pipeline that grew up around it.
A raw splat from training is a list of small, colored, semi-transparent shapes. Each one stores a position, a rotation, three color values, an opacity, three scale values, and a set of spherical harmonic coefficients that describe how the color shifts as the camera moves. Multiply that by a few hundred thousand to a million Gaussians for a single product and the file lands at 100 to 300 MB.
Nothing on a phone wants a 300 MB asset. Smartphones drive about 45% of US web traffic per Shopify. Ship a raw splat and you have shipped nothing.
A buyer-ready splat is the same scene with three changes:
The combined effect is roughly 100x. A 200 MB raw splat ships at 1 to 4 MB. PlayCanvas SuperSplat is one open-source tool that runs the compression step and lets you inspect the result before publish. Most ecommerce splat services run a similar pipeline server-side.
A photoreal GLB with PBR materials at full quality is 8 to 15 MB. With Draco mesh compression for the geometry and reduced texture maps, a GLB drops to 1 to 5 MB. The catch is that the texture maps carry the material detail. Cut them too far and the brushed steel finish looks like plastic. The splat sidesteps that tradeoff because lighting is captured into the splat itself, not stored as a separate texture.
For categories where surface sells, the splat usually ships smaller and reads more honest. For categories where geometry sells, a Draco-compressed GLB still wins because the splat is soft at sharp edges. The splat vs 3D model decision covers that split by category.
File size is half the mobile story. The other half is what the buyer sees in the first second.
A splat does not need every Gaussian to render the first frame. With progressive rendering, the splat loads in priority order: the most visible Gaussians first, the fine detail later. The buyer sees a recognizable product in 200 to 400 ms on LTE, then watches the splat sharpen as the rest streams in. By the time the buyer's thumb decides to rotate, the splat is at full quality.
This is why a 3 MB splat with progressive rendering feels faster than a 1 MB GLB that has to fully load before showing anything. The first frame is the conversion event, not the byte count.
The size and rendering math works. Most failed experiments fail somewhere else.
Loading too early. A splat that loads on first paint blocks the page render. Lazy-load it. The splat should fade in only when the buyer scrolls near the rotation block, or on tap of a "rotate" affordance.
Hero photo missing. The hero photo loads first, fast, brand-correct. The splat is the second thing the buyer sees, not the first. Skipping the hero photo and starting with the splat reads as a slow page even when the splat is small.
No CDN. A splat served from origin instead of a CDN can take a second longer to start streaming on LTE. Use the same CDN your hero photos already use.
Old browsers. WebGL2 support is universal on modern phones, but a few low-end Android browsers still serve a fallback. Ship a static fallback photo for the small share of buyers whose browser cannot render the splat.
A 1 to 4 MB splat is tight enough for LTE. There are still cases where the size matters and the tradeoff is real.
Configurators. A splat is one frozen capture. Adding a swappable fabric or a color change means shipping multiple splats, which multiplies the file size. For configurators, ship a 3D model with separable parts.
Animation. A splat does not animate parts. A model that shows a watch crown winding or a kettle pouring stays smaller than the equivalent multi-state splat.
Very large products. A splat of a sofa or a king-size mattress runs heavier than a splat of a watch because the volume of space the splats cover is larger. For furniture, ship a small GLB for the AR placement and a splat for the in-page rotation, sized to the product.
Low-end Android. Phones with less than 3 GB of RAM can stutter when rendering a splat with too many Gaussians on screen. Cap the splat at 200,000 to 400,000 Gaussians for the mobile bundle and let the desktop bundle ship more.
If your product page already has a 3D viewer that has not lifted mobile conversion, the issue is probably file size or load timing, not the technology. The honest 3D product viewer comparison covers which Shopify app fits which constraint.
If you have not shipped a splat before, start with a single product and one rule: the splat fades in only after the buyer scrolls near the rotation block. The founder's guide to Gaussian splatting for ecommerce covers the capture pipeline end to end. The photo count guide covers the shoot.
A 2 MB splat that loads at the right moment beats a 12 MB GLB every time. The buyer is on a phone over LTE. The page has to know that.