Convert BMP to GIF
A BMP stores every pixel at full color depth and pays for it in bytes. GIF stores an index into a palette of at most 256 colors, which is why it collapses a flat diagram and mangles a photograph. This converter builds the palette from the colors your bitmap actually uses, so a screenshot with nine colors keeps all nine and a sunset does not.
Use this without the search next time. Prathom Workbench puts Prathom's tools in your toolbar.
Add to Chrome — freeDrop your BMP file here, or click to browse
Up to 50 MB. Deleted automatically after 30 minutes.
What it does
- Palette built from the colors present, not a fixed table
- At most 256 colors in the output, by the format's own limit
- Original width and height preserved
How to use BMP to GIF
- 1
Upload the bitmap
Any ordinary BMP will do. If it is a photograph, expect the result to look banded — that is the format, not the conversion.
- 2
The palette is measured, not assumed
The image is scanned for the colors it contains and a palette of up to 256 is built to represent them. Fewer colors in means no loss at all.
- 3
Check gradients and skin tones
These are where 256 colors runs out first. Flat fills, line art and UI screenshots survive; anything smoothly shaded will show steps.
How it works
The bitmap is decoded to a plain raster, then examined for the set of colors it actually contains. A palette of at most 256 entries is built to cover that set, and each pixel is rewritten as an index into the palette rather than as a color of its own. The result is wrapped in a GIF and compressed with LZW.
The measurement step is the part worth understanding. A converter that always mapped onto a fixed 256-color table would damage an image that only ever used nine colors. Building the palette from the image means a screenshot, a logo or a chart with a small number of flat fills comes through with no color change whatsoever.
When BMP to GIF is the right move
Flat artwork is where this conversion earns its keep. Screenshots of interfaces, diagrams, icons, charts with solid fills, and pixel art all use a small number of distinct colors, so the palette holds every one of them and the file drops by an enormous factor while looking identical.
It is also the right move when something downstream simply refuses BMP. GIF is accepted almost everywhere a bitmap is not, and the conversion is cheap.
When it is the wrong move
A photograph, a render, or anything with a gradient will lose color it cannot get back. The banding is not a setting that can be turned off — 256 is the format's ceiling. If the goal is a smaller file from a photographic BMP, JPG or WebP will look far better at the same size. If the goal is a smaller file with no loss at all, PNG does that and keeps the full color depth.
What is not preserved
Color depth beyond the palette, soft alpha, and any embedded color profile. The pixel dimensions are unchanged; nothing is resized on your behalf.
From no compression to a small palette
BMP stores pixels with essentially no compression, which is why the files are so large. GIF compresses losslessly but only holds 256 colors per frame, so the two formats fail in opposite directions.
Converting between them is therefore a large size reduction and a color reduction at the same time. A screenshot, an icon or a diagram — anything built from flat color — usually survives it perfectly, because there were never more than a couple of hundred colors to begin with.
A photograph does not. Reducing millions of colors to 256 produces visible banding and dithering, and PNG is the better target: also lossless, also compressed, with no palette limit at all.
Examples
A nine-color UI screenshot
Every color fits inside the palette, so nothing is approximated and the file falls by two orders of magnitude. This is the case GIF was designed for.
A photograph that should not be a GIF
Smaller, and visibly worse: the sky bands and the sand loses texture. Use PNG for lossless or JPG for a photograph; GIF is the wrong container for this.
Frequently asked questions
Why does my photo look banded after converting BMP to GIF?
Because GIF holds at most 256 distinct colors in the whole image, and a photograph usually contains tens of thousands. The encoder picks the 256 that represent it best and maps everything else onto them, which turns a smooth sky into visible steps. Nothing is wrong with the conversion; the destination format simply cannot carry that much color. Choose PNG if the image must stay exact.
Does the GIF keep the BMP's transparency?
GIF transparency is one bit per pixel: a color is either fully transparent or fully opaque, with nothing in between. A BMP with a 32-bit alpha channel holding soft or partial edges cannot be represented, so semi-transparent pixels are resolved rather than preserved. If the artwork needs feathered edges over a changing background, PNG or WebP is the right target.
Is the GIF always smaller than the BMP?
Almost always, because an uncompressed BMP is one of the largest ways to store an image and GIF applies both palette indexing and LZW compression. The gap is largest on flat artwork and smallest on noisy photographs, where the palette struggles and the compressor finds little to repeat. Measure your own file rather than assuming a ratio.
Further reading
- The Same Image Was 10 KB as PNG and 7.6 MB as BMPBMP files are famous for being large, and the scale of it still surprises people when they see it directly. The same image, unchanged, was seven hundred and twenty-two times bigger in BMP than in PNG. The reason is simple and worth understanding, because it explains what every other format is doing for you.
- GIF Was Perfect on a Page of Text and Ruined the PhotographGIF is usually described as a lossy format, or at least as one that ruins images. That is not quite right. GIF's compression is lossless; what it cannot do is hold more than 256 colors. On an image that already has fewer than that, GIF is perfect. On a photograph it is a disaster. The same format, two completely different outcomes.
- GIF Transparency Has Exactly One Bit, and It Shows on Every EdgeA PNG can record a pixel as 37% transparent. A GIF cannot — each pixel is either fully visible or fully invisible, and there is nothing in between. On a shape with a soft anti-aliased edge, that difference is measurable, and it is why a logo saved as GIF gets a jagged fringe that no amount of care in the original file prevents.