CSS Portal

saturate() CSS Function

If this site has been useful, we’d love your support! Consider buying us a coffee to keep things going strong!

Description

The saturate() CSS function is used to adjust the intensity of colors in an element by increasing or decreasing their saturation. Saturation refers to the vividness or purity of a color - higher saturation results in more vibrant colors, while lower saturation moves colors toward gray. This function is commonly applied through the filter property, allowing designers to create visual effects like highlighting elements, desaturating images, or enhancing color contrast without changing the original image.

The value provided to saturate() is typically a number, where 1 represents the original color, values greater than 1 increase saturation, and values between 0 and 1 decrease it. Setting the value to 0 will make the element completely grayscale. For instance, saturate(2) doubles the color intensity, whereas saturate(0.5) reduces it by half.

A practical example is enhancing an image on hover:

img:hover {
  filter: saturate(1.5);
  transition: filter 0.3s ease;
}

Here, the image becomes more vivid when a user hovers over it, creating a subtle interactive effect. The saturate() function can be combined with other CSS functions like CSS brightness() or contrast() within a single filter declaration for more complex visual enhancements.

This function works on most elements that support filter, including img, backgrounds, and SVG graphics.

Syntax

saturate() = filter: saturate(<value>); 

Values

  • <value>A value of 0% or 0 completely removes the color saturation in the image, turning it into black and white. A value of 100% or 1 leaves the image unchanged. Any values ​​greater than 100% or greater than 1 make the colors in the image more saturated. A negative value is not allowed. An empty value is taken as 1.

Example

<div class="container">
<div class="card">
<img src="https://picsum.photos/id/237/300/200" alt="Dog" class="desaturated">
<p>Desaturated (20%)</p>
</div>

<div class="card">
<img src="https://picsum.photos/id/237/300/200" alt="Dog" class="normal">
<p>Normal (100%)</p>
</div>

<div class="card">
<img src="https://picsum.photos/id/237/300/200" alt="Dog" class="super-saturated">
<p>Super-Saturated (300%)</p>
</div>
</div>
/* Layout Styling */
.container {
display: flex;
gap: 20px;
font-family: sans-serif;
text-align: center;
}

.card img {
border-radius: 8px;
width: 100%;
}

/* Saturate Examples */

.desaturated {
/* Makes the image look muted/gray */
filter: saturate(20%);
}

.normal {
/* Default state (no change) */
filter: saturate(100%);
}

.super-saturated {
/* Makes colors pop aggressively */
filter: saturate(3); /* You can use 300% or just the number 3 */
}

Browser Support

The following information will show you the current browser support for the CSS saturate() function. Hover over a browser icon to see the version that first introduced support for this CSS function.

This function is supported by all modern browsers.
Desktop
Chrome
Edge
Firefox
Opera
Safari
Tablets & Mobile
Chrome Android
Firefox Android
Opera Android
Safari iOS
Samsung Internet
Android WebView
-

Last updated by CSSPortal on: 2nd January 2026

If this site has been useful, we’d love your support! Consider buying us a coffee to keep things going strong!