Floyd–Steinberg dithering online
Apply Floyd–Steinberg error-diffusion dithering to any image in your browser. Free, instant, no upload. Export 1-bit or retro-palette PNGs.
About Floyd–Steinberg dithering
Floyd–Steinberg is the most widely used dithering algorithm. Published by Robert Floyd and Louis Steinberg in 1976, it scans the image pixel by pixel, snaps each pixel to the nearest available color, and pushes the leftover "quantization error" onto four neighbours that have not been processed yet.
Because the error is spread over only four pixels, it is fast and preserves fine detail well. The trade-off is a faint "worm" texture in flat midtones — enable serpentine scanning above to alternate the scan direction per row and break those patterns up.
Diffusion kernel
* 7 3 5 1 (÷16)
“*” marks the current pixel; numbers show how much of its quantization error each neighbour receives.
Best for
- Photos and portraits
- Print-ready 1-bit artwork
- A neutral, all-purpose default
How to dither an image
- Add your image. Click Upload image, drag a file onto the preview, or paste with Ctrl/⌘+V. JPG, PNG, WebP and GIF work.
- Pick an algorithm and palette. Error diffusion (Floyd–Steinberg, Atkinson…) for photos, Bayer for a retro crosshatch.
- Tune it. Raise pixel size for chunkier pixels; adjust brightness and contrast to control which tones become dark or light.
- Download. Export a lossless PNG at up to 8× with crisp nearest-neighbour scaling.
FAQ
What is Floyd–Steinberg dithering?
Floyd–Steinberg is the most widely used dithering algorithm. Published by Robert Floyd and Louis Steinberg in 1976, it scans the image pixel by pixel, snaps each pixel to the nearest available color, and pushes the leftover "quantization error" onto four neighbours that have not been processed yet.
When should I use Floyd–Steinberg?
Floyd–Steinberg works best for: photos and portraits, print-ready 1-bit artwork, a neutral, all-purpose default.
Is DitherImage free?
Yes. DitherImage is completely free with no sign-up, no watermark and no usage limits.
Are my images uploaded to a server?
No. All processing happens locally in your browser using JavaScript and the Canvas API. Your images never leave your device.