GIF Effects
Apply sharpen, blur, sepia, grayscale, edge detect or emboss to an animated GIF or image, with a live adjustable intensity slider. Free and entirely in your browser.
Input
Result
Upload an image or animated GIF, pick an effect, and adjust the intensity — the preview updates automatically. Everything runs in your browser — nothing is uploaded.
Also available with
Guides
Apply a photo filter — sharpen, blur, sepia, grayscale, edge detect, or emboss — to an animated GIF or a plain image, entirely in your browser. The preview updates live as you adjust settings, and nothing is ever uploaded.
How to use it
- Upload a JPG, PNG, WebP, BMP, or animated GIF.
- Pick an effect — Sharpen, Blur, Sepia, Grayscale, Edge Detect, or Emboss.
- Adjust the Intensity slider to taste.
- Download the result as a PNG (or GIF, if you uploaded one).
The effects
- Sharpen — boosts edge contrast so fine detail stands out more.
- Blur — softens the image; higher intensity blurs more.
- Sepia — a warm brown-toned classic-photo look.
- Grayscale — removes color, leaving a black-and-white image.
- Edge Detect — highlights outlines and discards flat color, the way a pencil-sketch filter does.
- Emboss — gives the image a raised, carved-relief look with a fixed top-left light source.
Animated GIFs
Upload an animated GIF and the effect is applied to every frame individually, with the original frame delays and loop setting preserved — the output is a new animated GIF, not a single flattened frame.
Tips
- Intensity 0 always means "no effect" and 100 means the strongest version of that effect — switch effects freely without having to re-find a good value each time.
- A large GIF with many frames can take a moment longer to render — the preview shows a progress bar while it works.
- For a quick black-and-white conversion without the other adjustments, see Grayscale Image; for classic dot-screen printing instead of these filters, see Halftone Effect Generator.
Is my image or GIF uploaded anywhere?
No. Decoding the frames, applying the filter, and re-encoding the result all happen locally in your browser. Nothing is sent to a server.