BMP to PNG Converter
- The Exif data, the colour profile and anything else the original carried are not passed on: the picture is decoded to plain pixels and a new file is written from them.
- Reads bitmaps at 1, 4, 8, 16, 24 and 32 bits per pixel, including bitfield ones; refuses RLE-compressed bitmaps and names the kind it found.
Needs JavaScript. Runs only here.
This page turns a BMP into a PNG on your own machine. Every conversion on this page runs in your browser. The picture is read, drawn and written on your own machine, and the file is not sent to a server.
Going the other way? Convert PNG back to BMP →
How do you convert a BMP to a PNG?
A BMP stores its pixels with no compression. A PNG stores the same pixels with lossless compression, so nothing in the picture changes and the file usually shrinks a long way.
A BMP converted to PNG keeps every pixel exactly, and PNG's lossless compression usually makes the file far smaller. Any transparency the bitmap carries is kept. This page reads the common kinds of bitmap and names any kind it refuses.
- Choose the BMP file you want to convert. It is read inside this page, on your own machine.
- Select Convert to PNG. The page reads the first bytes of what came back and refuses the file if they are not PNG.
- Download the PNG. Nothing has been sent anywhere, so the file is ready as soon as it is written.
BMP to PNG keeps every pixel in a far smaller file, so to convert picture formats for a photograph or an icon instead, compare the other pairs.
What Changes From BMP to PNG
BMP to PNG keeps every pixel the bitmap stored and compresses them without loss, so the file is usually far smaller. Any transparency the bitmap carries is kept, and a bitmap without any stays opaque.
Each row below is one property of the picture: what it is in the BMP, what it becomes in the PNG, and whether it survives the trip. Convert a file and the same rows fill in with the measurements from your own picture.
| Property | In the BMP | In the PNG | Verdict |
|---|---|---|---|
| Dimensions | as the file has them | as the file has them | kept |
| Colour model and bit depth | 1, 4 or 8 bits through a palette, or 16, 24 or 32 bits per pixel | RGB with alpha, 8 bits per channel — 8 bits per sample, whatever the source held | changed |
| Alpha channel | usually none; a bitmap with an alpha mask can carry one | carried through if the bitmap has one | kept |
| Colours used | up to 16,777,216 | the same pixels | kept |
| Animation frames | 1 | 1 | kept |
| Metadata (Exif, ICC) | present in the file | dropped — a new file is written from pixels | lost |
| Compression | none — the pixel array is stored uncompressed | lossless, deflate | changed |
| File size | the file you chose | usually much smaller — the bitmap stored every pixel uncompressed | changed |
the pixels survive; the Exif data does not.
Going Back to BMP
Converting back does not restore what this step dropped, so convert the PNG result back to BMP only when you need a BMP file.
The change above runs one way — go back from PNG to BMP writes a new file, not the original.
What Travels With the Picture
What the two formats are, and what the browser does with a picture on the way between them. None of this depends on which BMP you bring.
How BMP and PNG Are Defined
| Property | BMP | PNG |
|---|---|---|
| Compression | normally none - the pixel array is stored uncompressed | lossless - deflate with a sliding window of at most 32768 bytes (compression method 0) |
| Alpha channel | not carried by the files this converter writes; a BMP written from a browser canvas is opaque | yes - a full alpha channel on colour types 4 and 6; a tRNS chunk gives a transparent colour key on types 0 and 2 and per-entry alpha on type 3 |
| Animation | none - one image per file | yes - APNG is normative in the Third Edition, using the acTL, fcTL and fdAT chunks |
| In one sentence | A BMP stores the pixel array with no compression, which is why a bitmap of the same picture is far larger than a PNG or a JPEG of it. | PNG stores a picture without losing anything: the specification defines lossless as reconstructing the original data exactly, bit for bit. It carries an alpha channel, and since the Third Edition it can carry frame-based animation as well. |
- A BMP file begins 42 4D ("BM"). The header field is the little-endian word 0x4D42..
- A PNG file begins 89 50 4E 47 0D 0A 1A 0A.
- BMP is defined by no international standard; Microsoft documents the BITMAPFILEHEADER and BITMAPINFOHEADER structures.
- PNG is defined by PNG Specification (Third Edition), W3C Recommendation 24 June 2025; the Second Edition is ISO/IEC 15948:2004. The Third Edition is not itself an International Standard..
JPEG and lossy WebP save space by discarding picture detail, and what they discard does not come back. PNG, BMP and lossless WebP keep every pixel they are given, and GIF keeps every pixel it is left with after the palette has been applied.
PNG, GIF, WebP and ICO can carry transparency; JPEG cannot, because the standard defines no alpha channel, and a bitmap written here is opaque. Converting to a format without transparency fills the clear areas with a background colour.
PNG allows bit depths of 1, 2, 4, 8 and 16, and five colour types: greyscale, truecolour, indexed-colour, and each of greyscale and truecolour with alpha. Not every depth is legal for every type.
Converting a picture back to the format it came from does not return the original file. Whatever a step discarded stays discarded, and the return trip writes a third file.
The browser decodes the picture to plain pixels and writes a new file from them, so the Exif data, the colour profile and anything else the original carried are not passed on.
A file written from a canvas uses the bit depth that best preserves the canvas, so an ordinary eight-bit canvas writes eight bits per sample however deep the original was.
This site reads BMP files itself: uncompressed bitmaps at 1, 4, 8, 16, 24 and 32 bits per pixel, and bitfield bitmaps at 16 and 32, stored bottom-up or top-down. It refuses RLE4 and RLE8 run-length compression, a JPEG or PNG stored inside a bitmap, and the 12-byte OS/2 header, and names the one it found.
A bitmap's transparency is read from its alpha mask, unless every pixel's alpha is zero, in which case the picture is read as opaque. The fourth byte of an ordinary 32-bit bitmap is unused in the format, so that picture reads as opaque too.
Which Bitmaps Can Be Read?
The kinds that convert
Uncompressed bitmaps at 1, 4, 8, 16, 24 and 32 bits per pixel, which covers the palette kinds, the 16-bit ones, and bitfield bitmaps at 16 and 32. Rows stored top to bottom or bottom to top both read.
The kinds that do not
Run-length compressed bitmaps, RLE4 and RLE8; a BMP that wraps a JPEG or a PNG; and the old 12-byte OS/2 header. The page names the kind it found rather than guessing at the pixels, so you know what to save again.
If yours is refused
Open it in an image editor that reads it and save it again as an uncompressed bitmap, or straight as PNG. Then convert that copy here, or keep the PNG the editor wrote.
Common Mistakes
- Expecting a transparent background. A 24-bit BMP has no alpha channel, so the PNG is opaque; only a bitmap that already carried transparency passes it on.
- Expecting sharper pixels. The PNG stores exactly what the bitmap held, no more.
- Assuming every .bmp file is the same kind. Depth and compression vary, and a run-length compressed one is refused with its kind named.
Frequently Asked Questions
Does converting a BMP to PNG make the background transparent?
No. A 24-bit bitmap has no transparency to give, so the PNG is opaque. Transparency comes through only when the bitmap already had it, in an alpha mask.
Does converting a BMP to PNG lose quality?
No. PNG compresses without discarding anything, so every pixel the bitmap stored comes through exactly. Only data kept outside the pixels, such as an embedded colour profile, is left behind.
Why does a BMP file fail to convert?
Usually because it is run-length compressed (RLE4 or RLE8), wraps a JPEG or PNG, or uses the old OS/2 header. The page names which. Save it again as an uncompressed bitmap or as a PNG in an image editor.
Why is the PNG so much smaller than the BMP?
Because the bitmap stored every pixel at full length, and PNG compresses them without loss. Large flat areas shrink the most; a picture of fine noise shrinks the least.
You can, but the round trip is not the file you started from: the PNG to BMP direction.
Related Conversions
The rest of the family sits on every image format this site converts.