From basic brightness adjustments to artistic duotone effects and AI-powered background removal — apply any combination of filters by adding parameters to the URL. Processed in under 50ms via libvips.
Fine-tune the tonal properties of any image. All adjustments accept positive and negative values.
| Filter | Parameter | Range | Example |
|---|---|---|---|
| Brightness | brightness | -100 to 100 | brightness:30 |
| Contrast | contrast | -100 to 100 | contrast:40 |
| Saturation | saturation | -100 to 100 | saturation:50 |
| Hue | hue | 0–359 | hue:180 |
| Exposure | exposure | -100 to 100 | exposure:20 |
| Vibrance | vibrance | -100 to 100 | vibrance:40 |
| Highlight | highlight | -100 to 100 | highlight:-30 |
| Shadow | shadow | -100 to 100 | shadow:20 |
| Gamma | gamma | 1.0–3.0 | gamma:2.2 |
Gaussian blur with sigma 0.3–100. blur:5 for moderate, blur:50 for heavy.
Edge enhancement with optional unsharp mask. sharpen:2,usm-radius:3
Full black & white conversion. grayscale:true
Classic warm tone. sepia:80 (0–100 intensity)
Invert all colours. negate:true
Block pixellation. pixellate:10
Pure B&W, no grays. threshold:128
Median filter + post-sharpening. noise-reduction:50,nrs:30
Map image luminance to a two-colour gradient — popular for hero sections and brand-coloured hero imagery.
/my-images/width/800/duotone:0a1628,ff6b6b/photo.jpg
/my-images/width/800/duotone:1a1a2e,e94560,duotone-alpha:70/photo.jpg
Overlay a solid colour with 11 blend modes for tinting and colour grading.
/my-images/width/800/blend-color:ff6600,blend-mode:multiply,blend-alpha:40/photo.jpg
Modes: multiply, screen, overlay, darken, lighten, color-burn, color-dodge, hard-light, soft-light, difference, exclusion.
Extract dominant colours as JSON or CSS custom properties — great for dynamic theming.
# JSON: returns array of dominant colours with hex, RGB, and area %
/my-images/width/800/palette:json,colors:8/photo.jpg
# CSS custom properties: --hero-0, --hero-1, etc.
/my-images/width/800/palette:css,palette-prefix:hero/photo.jpg
Stack any filters in a single URL — they're applied in optimised pipeline order:
/my-images/width/800/brightness:10,contrast:20,saturation:30,sharpen:1,format:webp,quality:80/photo.jpg
Add parameters to your image URL — that's it. No SDK, no build step.