Mesh Gradients vs CSS Gradients
CSS gradients are everywhere. They load instantly and take one line of code. They also all look the same. Here is what happens when you go beyond linear-gradient().
CSS linear gradient
WebGL shader gradient
Same five colors. Very different output.
What is a mesh gradient?
A mesh gradient blends multiple colors across a 2D surface with organic, irregular transitions. Instead of a straight line from color A to color B, the colors flow, pool, and mix like watercolor on paper.
The term comes from tools like Adobe Illustrator, where you can place color points on a mesh grid. On the web, mesh gradients are created either by layering CSS radial gradients (a clever hack) or by running a real-time WebGL shader (what InstantGradient does).
Three approaches compared
| CSS Linear | CSS Mesh (layered) | WebGL Shader | |
|---|---|---|---|
| Look | Flat, predictable | More organic, static | Animated, living, textured |
| Technique | Native CSS | Layered radial-gradient() | WebGL shader |
| Animation | |||
| File size | Tiny | Small CSS | Shader-rendered |
| Browser support | 100% | 100% | 99%+ (WebGL) |
| Export | Code only | Code only | PNG, MP4, CSS, API |
When CSS gradients are enough
For subtle background tints, button hover states, or decorative borders, CSS gradients are perfect. They are fast, accessible, and require zero JavaScript. If you need a simple color fade behind text, don't overthink it.
When you need something more
Hero sections. Landing pages. Social media assets. App splash screens. Presentation slides. Anywhere you want someone to stop scrolling and actually look. That is where mesh gradients earn their place.
Try it right now
This gradient is rendering live via WebGL. Hit shuffle to see a new one.
Export what you need
PNG / WebP
Up to 4K for hero backgrounds and assets
Animated MP4
Video export for social and presentations
CSS + Tailwind
Code you can paste directly into your project
JS + React
Integrate our shaders directly in your code
Color tokens
Hex, JSON, CSS variables for design systems
REST API
Generate palettes and look up colors programmatically
Make your first mesh gradient in 5 seconds
Free, no signup required.
Frequently asked questions
What is a mesh gradient?
A gradient that blends multiple colors across a 2D surface with organic, irregular transitions. Unlike the straight lines of CSS linear gradients, mesh gradients flow and mix like watercolor.
Can I make mesh gradients with pure CSS?
Sort of. You can layer multiple radial-gradient() declarations to approximate a mesh. But you won't get animation or the organic quality of a shader-based mesh gradient.
Do mesh gradients work on mobile?
Yes. WebGL is supported by 99%+ of browsers, including mobile Safari and Chrome.
Are mesh gradients bad for performance?
InstantGradient uses a WebGL shader, so the rendering happens on the graphics card, not the CPU. The impact is similar to playing a video. For static use, export as an image instead.
See also: InstantGradient vs Coolors · InstantGradient vs Colorffy · Browse palettes