Design
Real-Time 3D Finally Earns Its Place on the Web
I have a complicated history with 3D on the web. For years it was the discipline where ambition went to embarrass itself: gorgeous WebGL demos that melted laptops, product configurators that took eleven seconds to load, spinning objects that added nothing except a fan noise. I said no to more 3D requests than I approved, and I was right to.
I am changing my position this year, carefully, because the pipeline finally matured. This spring we shipped a full 3D product experience for Møller's flagship furniture line, it holds 60 frames per second on a mid-range phone, and it measurably outperformed the photography-based version. Here is what changed and what we learned.
What actually changed
Not one breakthrough, but four slow curves crossing at once. The tooling matured: modern web 3D frameworks are now genuinely productive environments rather than research projects, and the path from a DCC tool to an optimized glTF asset is a real pipeline instead of a folkloric ritual. Compression got serious: with Draco and KTX2 texture compression, our hero chair is 1.8 megabytes, smaller than the photography it replaced. Devices caught up, with capable GPUs now the norm across several years of mid-range phones. And AI entered the asset pipeline: generative tools now handle retopology suggestions, texture variants, and LOD generation, which cut our modeling time roughly in half. The craft decisions stayed human. The drudgery did not.
The rule: 3D must answer a question
The lesson from every failed 3D project of the past decade is that rotation is not a benefit. Nobody wants to spin your product. They want answers: Will this fit my room? What does the oak look like next to my floor? How does the mechanism fold?
So we now hold 3D to the same standard as any other module on the page: what user question does it answer better than the cheaper alternative? On the Møller project, the answers were concrete. Material switching in real light, dimension visualization against familiar objects, and the fold mechanism animated on scroll. Each replaced a question that customers were literally asking support. Time on the product page nearly doubled, but the number that matters more: material-related returns on the featured line dropped by a third against the prior season. 3D that answers questions is customer service at scale. 3D that spins is decoration at a premium price.
Performance is a design deliverable
The engineering discipline that makes this shippable, in brief:
- Budgets before beauty. We set a frame-time and memory budget per device tier on day one, and the art direction lives inside it. Baked lighting, aggressive LODs, and a hard cap on draw calls.
- Load like you mean it. The 3D scene is progressive enhancement: the page is fully useful before a single asset arrives, and a static render stands in on hostile connections.
- Reduced motion applies to 3D too. Camera moves and scroll-driven sequences all have a reduced vocabulary, per the principles I wrote about in February. Vestibular safety does not have an exemption for impressive technology.
Where this goes
The obvious next question is AI-generated 3D, and the honest answer is that asset generation is improving monthly while asset judgment is not. The bottleneck on good 3D was never polygons. It is the same as everywhere else this year: knowing what the medium is for.
My position, updated for 2025: 3D on the web is no longer a stunt. It is a material, with costs and properties like any other, and it belongs in the palette wherever a spatial question needs a spatial answer. Everywhere else, it remains a very expensive way to make a fan spin.
Building something this could apply to?
We take on a small number of flagship projects each quarter.
Start a project