Back to Blog
design March 15, 2026

3D Belongs Almost Nowhere on a Marketing Site

Three.js is impressive. It's also almost always the wrong tool for a marketing site. Here's how I think about it.

C

Chandler Hennessee

Designer & Developer

If you spend any time looking at award-winning portfolio sites (the kind that win on Awwwards or CSS Design Awards), you’ll notice a lot of them have Three.js WebGL scenes as their heroes. Rotating geometries, particle systems, abstract 3D environments that react to your cursor.

They look incredible. And almost none of them are the right choice for a marketing site.

What 3D actually costs

WebGL isn’t free. A Three.js scene adds a significant JavaScript payload, requires GPU rendering, and creates real problems for low-end mobile devices. On a site where a visitor’s goal is to understand your services and contact you, you’re asking them to load a rendering engine to watch something spin.

The performance cost is measurable. A typical Three.js setup, even a simple scene, adds 150-400KB of JavaScript before you’ve written a line of your own code. On a phone with an average connection, that’s a full second or more of load time added before the page is interactive.

That second costs you visitors. We established this in the performance post: 53% of mobile users abandon sites that take over 3 seconds to load.

The goal mismatch

There’s a fundamental goal mismatch between portfolio sites and marketing sites.

A portfolio site for a developer or design studio is itself the product. Its job is to demonstrate technical and creative capability. A complex WebGL scene directly showcases what the studio can build. The showpiece is the pitch.

A marketing site for a local hypnotherapy practice, a law firm, or a home services company has a completely different job. It establishes credibility, communicates services clearly, and converts visitors into calls or form submissions. A rotating 3D object doesn’t help with any of those things, and it might actively hurt by slowing the site down and distracting from the actual content.

I build marketing sites. 3D almost never belongs there.

What I use instead

The goal of a 3D hero is usually to create a sense of life, depth, and sophistication. You can achieve all of that without WebGL.

Scroll-driven animation. Content that reveals progressively as you scroll creates engagement and a sense of depth without any GPU rendering. I use GSAP ScrollTrigger for this on every project.

Kinetic typography. Large, beautifully spaced display type that responds to scroll or cursor interaction creates visual richness without the performance cost. The word displacement effect on the HWD homepage is a single requestAnimationFrame loop. No library, no GPU, fast on any device.

Atmospheric dark themes. Noise textures, gradient depth, and layered surfaces create visual interest through CSS alone. No 3D required.

Purposeful motion. Animation tied to user actions (hovering, scrolling, navigating) feels premium without requiring a rendering engine.

The result is sites that feel sophisticated, load in under a second, and work on every device.

When I would use 3D

If a client came to me needing something where the 3D scene is genuinely the content (a product configurator, an architectural visualization tool, an interactive data experience), that’s a different conversation. WebGL is the right tool for certain jobs.

I’d also consider it for a hero if three conditions were met: the client’s audience is overwhelmingly on high-end devices, the 3D scene is directly connected to what the business does (not just decoration), and we’ve accepted the performance trade-off consciously with a fallback for slower connections.

But for a service business trying to book clients in Chattanooga or anywhere else? Clean design, fast load, clear copy, obvious call to action. That’s what converts.

The honest version

The real reason a lot of sites use Three.js is that it’s impressive to developers and other designers. The people making the decision about what goes on the site are often not the same people who will be using the site to book a service.

A plumbing company’s potential client doesn’t care about WebGL. They care whether they can quickly find your number and trust that you know what you’re doing. Good design serves that person.

#design #3d #webgl #performance #animation

Need Help with Your Project?

We build websites that perform. Let's talk about yours.

Get In Touch