A CSS gradient is a smooth transition between two or more colours, generated by the browser rather than loaded as an image. Because it is drawn rather than downloaded, it costs no network request, scales to any size without losing quality, and can be changed by editing one line.

Writing gradient CSS by hand is fiddly in a way that is out of proportion to how simple the result is. The syntax has an angle or a shape, then a list of colours each with an optional position, and small changes to those numbers have effects that are hard to predict from reading the text. Building it visually and copying the finished declaration is simply faster.

The tool supports the three gradient types you actually use. Linear gradients run along a line at whatever angle you set, and cover most cases: hero backgrounds, button fills, fading overlays. Radial gradients spread out from a point, which suits spotlights and soft glows. Conic gradients sweep around a centre point, which is what you use for pie charts, colour wheels and progress rings.

You can add as many colour stops as you need, move them along the track, and change any colour, with the preview updating live. The generated CSS is a plain background-image declaration with no vendor prefixes, since every browser has supported the unprefixed syntax for years and the prefixed versions are now just noise.

One accessibility note worth keeping in mind: if text will sit on top of the gradient, check its contrast against the lightest and darkest points, not just the middle. A gradient that reads comfortably at one end can easily fail at the other.