A client once sent me a screenshot of a website he liked and asked if I could make something “in that faceted style, you know, the triangle thing.” He didn’t know it had a name. Most people don’t. But if you’ve spent any time online in the last decade, you’ve seen it: flat-shaded triangles forming a mountain range, a fox, a skyline, or just an abstract colored mesh sitting behind a headline. That’s low poly, and it’s one of the strangest design trends I can think of, because it never really became mainstream and it never really went away either.
It started as a limitation, not a style
Low poly wasn’t invented by a designer trying to look cool. It came out of necessity. Every 3D model is built from polygons, usually triangles, and every triangle costs processing power to render. In the 1990s and early 2000s, game consoles and computers could only push so many polygons per second, so artists worked under a hard budget. A PlayStation-era character might be built from a few hundred triangles. A blocky, faceted look wasn’t a choice, it was what happened when you hit the ceiling of the hardware.
For a while, that look was just “how old games looked,” and nobody was nostalgic for it. Then something happened around the early 2010s that I still find genuinely interesting: designers started using the aesthetic on purpose, in flat 2D illustration, long after the hardware limitation that created it was gone. Low poly stopped being a technical constraint and became a visual language. You can read more about the origins on Wikipedia’s low poly entry if you want the full timeline.
Why it caught on in web design specifically
I think there are three practical reasons it spread the way it did, and none of them have much to do with nostalgia.
First, it’s cheap to produce well. You don’t need to be able to draw. A faceted background can be generated procedurally by scattering points across a plane and connecting them into triangles, which is a well-understood problem in computational geometry called Delaunay triangulation. Feed it a grid of jittered points and a small color palette, and you get an infinite supply of backgrounds that look hand-crafted but cost almost nothing to make. That’s the whole idea behind the generator I built, actually. It scatters points, nudges them randomly based on a seed, runs a triangulation over them, and shades each triangle based on where its center falls inside a color gradient. No drawing involved.
Second, it scales down to almost nothing and still reads clearly. A photograph gets muddy when compressed hard. A faceted pattern is just flat polygons, so it survives aggressive JPEG or PNG compression far better, which matters more than most people realize once you start caring about page weight.
Third, and this is the one I think gets overlooked: it signals “modern and technical” without saying anything specific. A landing page for a fintech app, a game studio, and a data analytics tool can all use a triangle background and it won’t feel wrong on any of them, because the pattern is abstract. Compare that to stock photography, which drags a lot of unintended meaning along with it — the wrong stock photo of “a team high-fiving in an office” tells the visitor more about your budget than your product.
The 2013-2015 flat design wave, and why it stuck around after
Low poly backgrounds really took off during the flat design era, alongside long shadows, ghost buttons, and oversized hero typography. Most of that wave aged badly. Ghost buttons turned out to be an accessibility problem because nobody could tell what was clickable. Long shadows just look dated now. But low poly kept showing up in redesigns years later, and I think that’s because it never depended on being trendy in the first place — it depended on triangles being a genuinely flexible visual primitive. You can make it loud and colorful for a game jam site, or muted and monochrome for a law firm, just by changing the palette and the contrast between triangles.
When it’s actually the right choice
I’d use a low-poly background in a few specific situations, and I’d skip it in others. It works well for:
- Hero sections where you need visual interest behind a headline but don’t have (or want) a hero photo.
- Section dividers or empty states, where a plain color feels a little too bare.
- Social share images and Open Graph cards, since the pattern still reads at small sizes.
- Presentation title slides or PDF cover pages, where you want something better than a gradient but don’t have design time to spend.
I’d skip it, or at least tone it down a lot, for large blocks of body text. A busy pattern behind a paragraph fights with reading comfort no matter how subtle the colors are. If you need text on top of triangles, either drop the pattern intensity way down, add a semi-transparent overlay behind the text block, or push the palette toward two very close shades so the contrast between triangles is barely visible and the whole thing reads as texture rather than pattern.
How I’d actually generate one without hiring a designer
This is the part where I’ll be upfront: I built a free triangle background generator specifically because I got tired of opening Figma for something this simple. You pick a palette, drag a couple of sliders for triangle size and randomness, choose a gradient direction, and export it. The free tier gives you a PNG at a reasonable resolution, which covers most hero-section use cases. If you need something print-resolution or an SVG you can recolor later in code, that’s the paid export, but plenty of people never need more than the free PNG.
One thing I’d recommend regardless of which tool you use: generate three or four variations before committing to one. Because the pattern is randomized from a seed, small changes to triangle size or variance produce very different moods — tight, small triangles feel more technical and precise, while large, irregular ones feel more organic and hand-drawn. It’s worth five minutes of comparing before you lock in the one that goes on the homepage.
The honest takeaway
Low poly isn’t a trend you either catch in time or miss. It started as a hardware constraint, got adopted as a style once the constraint disappeared, and has stuck around because triangles are just a genuinely useful shape for procedural design — cheap to generate, easy to compress, and neutral enough to fit almost any brand. If a triangle background looks right for your page, use it. If it doesn’t, the honest fix is usually to turn the pattern intensity down rather than avoid it altogether.